ReactOS 0.4.15-dev-7906-g1b85a5f
nls.c File Reference
#include "ext2fs.h"
Include dependency graph for nls.c:

Go to the source code of this file.

Macros

#define FULL_CODEPAGES_SUPPORT
 

Functions

 DECLARE_INIT (init_nls_ascii)
 
 DECLARE_EXIT (exit_nls_ascii)
 
 DECLARE_INIT (init_nls_cp1250)
 
 DECLARE_EXIT (exit_nls_cp1250)
 
 DECLARE_INIT (init_nls_cp1251)
 
 DECLARE_EXIT (exit_nls_cp1251)
 
 DECLARE_INIT (init_nls_cp1255)
 
 DECLARE_EXIT (exit_nls_cp1255)
 
 DECLARE_INIT (init_nls_cp437)
 
 DECLARE_EXIT (exit_nls_cp437)
 
 DECLARE_INIT (init_nls_cp737)
 
 DECLARE_EXIT (exit_nls_cp737)
 
 DECLARE_INIT (init_nls_cp775)
 
 DECLARE_EXIT (exit_nls_cp775)
 
 DECLARE_INIT (init_nls_cp850)
 
 DECLARE_EXIT (exit_nls_cp850)
 
 DECLARE_INIT (init_nls_cp852)
 
 DECLARE_EXIT (exit_nls_cp852)
 
 DECLARE_INIT (init_nls_cp855)
 
 DECLARE_EXIT (exit_nls_cp855)
 
 DECLARE_INIT (init_nls_cp857)
 
 DECLARE_EXIT (exit_nls_cp857)
 
 DECLARE_INIT (init_nls_cp860)
 
 DECLARE_EXIT (exit_nls_cp860)
 
 DECLARE_INIT (init_nls_cp861)
 
 DECLARE_EXIT (exit_nls_cp861)
 
 DECLARE_INIT (init_nls_cp862)
 
 DECLARE_EXIT (exit_nls_cp862)
 
 DECLARE_INIT (init_nls_cp863)
 
 DECLARE_EXIT (exit_nls_cp863)
 
 DECLARE_INIT (init_nls_cp864)
 
 DECLARE_EXIT (exit_nls_cp864)
 
 DECLARE_INIT (init_nls_cp865)
 
 DECLARE_EXIT (exit_nls_cp865)
 
 DECLARE_INIT (init_nls_cp866)
 
 DECLARE_EXIT (exit_nls_cp866)
 
 DECLARE_INIT (init_nls_cp869)
 
 DECLARE_EXIT (exit_nls_cp869)
 
 DECLARE_INIT (init_nls_cp874)
 
 DECLARE_EXIT (exit_nls_cp874)
 
 DECLARE_INIT (init_nls_cp932)
 
 DECLARE_EXIT (exit_nls_cp932)
 
 DECLARE_INIT (init_nls_cp949)
 
 DECLARE_EXIT (exit_nls_cp949)
 
 DECLARE_INIT (init_nls_euc_jp)
 
 DECLARE_EXIT (exit_nls_euc_jp)
 
 DECLARE_INIT (init_nls_iso8859_1)
 
 DECLARE_EXIT (exit_nls_iso8859_1)
 
 DECLARE_INIT (init_nls_iso8859_13)
 
 DECLARE_EXIT (exit_nls_iso8859_13)
 
 DECLARE_INIT (init_nls_iso8859_14)
 
 DECLARE_EXIT (exit_nls_iso8859_14)
 
 DECLARE_INIT (init_nls_iso8859_15)
 
 DECLARE_EXIT (exit_nls_iso8859_15)
 
 DECLARE_INIT (init_nls_iso8859_2)
 
 DECLARE_EXIT (exit_nls_iso8859_2)
 
 DECLARE_INIT (init_nls_iso8859_3)
 
 DECLARE_EXIT (exit_nls_iso8859_3)
 
 DECLARE_INIT (init_nls_iso8859_4)
 
 DECLARE_EXIT (exit_nls_iso8859_4)
 
 DECLARE_INIT (init_nls_iso8859_5)
 
 DECLARE_EXIT (exit_nls_iso8859_5)
 
 DECLARE_INIT (init_nls_iso8859_6)
 
 DECLARE_EXIT (exit_nls_iso8859_6)
 
 DECLARE_INIT (init_nls_iso8859_7)
 
 DECLARE_EXIT (exit_nls_iso8859_7)
 
 DECLARE_INIT (init_nls_iso8859_9)
 
 DECLARE_EXIT (exit_nls_iso8859_9)
 
 DECLARE_INIT (init_nls_koi8_r)
 
 DECLARE_EXIT (exit_nls_koi8_r)
 
 DECLARE_INIT (init_nls_koi8_ru)
 
 DECLARE_EXIT (exit_nls_koi8_ru)
 
 DECLARE_INIT (init_nls_koi8_u)
 
 DECLARE_EXIT (exit_nls_koi8_u)
 
 DECLARE_INIT (init_nls_cp936)
 
 DECLARE_EXIT (exit_nls_cp936)
 
 DECLARE_INIT (init_nls_cp950)
 
 DECLARE_EXIT (exit_nls_cp950)
 
 DECLARE_INIT (init_nls_utf8)
 
 DECLARE_EXIT (exit_nls_utf8)
 
int Ext2LoadAllNls ()
 
VOID Ext2UnloadAllNls ()
 

Variables

struct nls_tabletables
 
spinlock_t nls_lock
 

Macro Definition Documentation

◆ FULL_CODEPAGES_SUPPORT

#define FULL_CODEPAGES_SUPPORT

Definition at line 21 of file nls.c.

Function Documentation

◆ DECLARE_EXIT() [1/40]

DECLARE_EXIT ( exit_nls_ascii  )

◆ DECLARE_EXIT() [2/40]

DECLARE_EXIT ( exit_nls_cp1250  )

◆ DECLARE_EXIT() [3/40]

DECLARE_EXIT ( exit_nls_cp1251  )

◆ DECLARE_EXIT() [4/40]

DECLARE_EXIT ( exit_nls_cp1255  )

◆ DECLARE_EXIT() [5/40]

DECLARE_EXIT ( exit_nls_cp437  )

◆ DECLARE_EXIT() [6/40]

DECLARE_EXIT ( exit_nls_cp737  )

◆ DECLARE_EXIT() [7/40]

DECLARE_EXIT ( exit_nls_cp775  )

◆ DECLARE_EXIT() [8/40]

DECLARE_EXIT ( exit_nls_cp850  )

◆ DECLARE_EXIT() [9/40]

DECLARE_EXIT ( exit_nls_cp852  )

◆ DECLARE_EXIT() [10/40]

DECLARE_EXIT ( exit_nls_cp855  )

◆ DECLARE_EXIT() [11/40]

DECLARE_EXIT ( exit_nls_cp857  )

◆ DECLARE_EXIT() [12/40]

DECLARE_EXIT ( exit_nls_cp860  )

◆ DECLARE_EXIT() [13/40]

DECLARE_EXIT ( exit_nls_cp861  )

◆ DECLARE_EXIT() [14/40]

DECLARE_EXIT ( exit_nls_cp862  )

◆ DECLARE_EXIT() [15/40]

DECLARE_EXIT ( exit_nls_cp863  )

◆ DECLARE_EXIT() [16/40]

DECLARE_EXIT ( exit_nls_cp864  )

◆ DECLARE_EXIT() [17/40]

DECLARE_EXIT ( exit_nls_cp865  )

◆ DECLARE_EXIT() [18/40]

DECLARE_EXIT ( exit_nls_cp866  )

◆ DECLARE_EXIT() [19/40]

DECLARE_EXIT ( exit_nls_cp869  )

◆ DECLARE_EXIT() [20/40]

DECLARE_EXIT ( exit_nls_cp874  )

◆ DECLARE_EXIT() [21/40]

DECLARE_EXIT ( exit_nls_cp932  )

◆ DECLARE_EXIT() [22/40]

DECLARE_EXIT ( exit_nls_cp936  )

◆ DECLARE_EXIT() [23/40]

DECLARE_EXIT ( exit_nls_cp949  )

◆ DECLARE_EXIT() [24/40]

DECLARE_EXIT ( exit_nls_cp950  )

◆ DECLARE_EXIT() [25/40]

DECLARE_EXIT ( exit_nls_euc_jp  )

◆ DECLARE_EXIT() [26/40]

DECLARE_EXIT ( exit_nls_iso8859_1  )

◆ DECLARE_EXIT() [27/40]

DECLARE_EXIT ( exit_nls_iso8859_13  )

◆ DECLARE_EXIT() [28/40]

DECLARE_EXIT ( exit_nls_iso8859_14  )

◆ DECLARE_EXIT() [29/40]

DECLARE_EXIT ( exit_nls_iso8859_15  )

◆ DECLARE_EXIT() [30/40]

DECLARE_EXIT ( exit_nls_iso8859_2  )

◆ DECLARE_EXIT() [31/40]

DECLARE_EXIT ( exit_nls_iso8859_3  )

◆ DECLARE_EXIT() [32/40]

DECLARE_EXIT ( exit_nls_iso8859_4  )

◆ DECLARE_EXIT() [33/40]

DECLARE_EXIT ( exit_nls_iso8859_5  )

◆ DECLARE_EXIT() [34/40]

DECLARE_EXIT ( exit_nls_iso8859_6  )

◆ DECLARE_EXIT() [35/40]

DECLARE_EXIT ( exit_nls_iso8859_7  )

◆ DECLARE_EXIT() [36/40]

DECLARE_EXIT ( exit_nls_iso8859_9  )

◆ DECLARE_EXIT() [37/40]

DECLARE_EXIT ( exit_nls_koi8_r  )

◆ DECLARE_EXIT() [38/40]

DECLARE_EXIT ( exit_nls_koi8_ru  )

◆ DECLARE_EXIT() [39/40]

DECLARE_EXIT ( exit_nls_koi8_u  )

◆ DECLARE_EXIT() [40/40]

DECLARE_EXIT ( exit_nls_utf8  )

◆ DECLARE_INIT() [1/40]

DECLARE_INIT ( init_nls_ascii  )

◆ DECLARE_INIT() [2/40]

DECLARE_INIT ( init_nls_cp1250  )

◆ DECLARE_INIT() [3/40]

DECLARE_INIT ( init_nls_cp1251  )

◆ DECLARE_INIT() [4/40]

DECLARE_INIT ( init_nls_cp1255  )

◆ DECLARE_INIT() [5/40]

DECLARE_INIT ( init_nls_cp437  )

◆ DECLARE_INIT() [6/40]

DECLARE_INIT ( init_nls_cp737  )

◆ DECLARE_INIT() [7/40]

DECLARE_INIT ( init_nls_cp775  )

◆ DECLARE_INIT() [8/40]

DECLARE_INIT ( init_nls_cp850  )

◆ DECLARE_INIT() [9/40]

DECLARE_INIT ( init_nls_cp852  )

◆ DECLARE_INIT() [10/40]

DECLARE_INIT ( init_nls_cp855  )

◆ DECLARE_INIT() [11/40]

DECLARE_INIT ( init_nls_cp857  )

◆ DECLARE_INIT() [12/40]

DECLARE_INIT ( init_nls_cp860  )

◆ DECLARE_INIT() [13/40]

DECLARE_INIT ( init_nls_cp861  )

◆ DECLARE_INIT() [14/40]

DECLARE_INIT ( init_nls_cp862  )

◆ DECLARE_INIT() [15/40]

DECLARE_INIT ( init_nls_cp863  )

◆ DECLARE_INIT() [16/40]

DECLARE_INIT ( init_nls_cp864  )

◆ DECLARE_INIT() [17/40]

DECLARE_INIT ( init_nls_cp865  )

◆ DECLARE_INIT() [18/40]

DECLARE_INIT ( init_nls_cp866  )

◆ DECLARE_INIT() [19/40]

DECLARE_INIT ( init_nls_cp869  )

◆ DECLARE_INIT() [20/40]

DECLARE_INIT ( init_nls_cp874  )

◆ DECLARE_INIT() [21/40]

DECLARE_INIT ( init_nls_cp932  )

◆ DECLARE_INIT() [22/40]

DECLARE_INIT ( init_nls_cp936  )

◆ DECLARE_INIT() [23/40]

DECLARE_INIT ( init_nls_cp949  )

◆ DECLARE_INIT() [24/40]

DECLARE_INIT ( init_nls_cp950  )

◆ DECLARE_INIT() [25/40]

DECLARE_INIT ( init_nls_euc_jp  )

◆ DECLARE_INIT() [26/40]

DECLARE_INIT ( init_nls_iso8859_1  )

◆ DECLARE_INIT() [27/40]

DECLARE_INIT ( init_nls_iso8859_13  )

◆ DECLARE_INIT() [28/40]

DECLARE_INIT ( init_nls_iso8859_14  )

◆ DECLARE_INIT() [29/40]

DECLARE_INIT ( init_nls_iso8859_15  )

◆ DECLARE_INIT() [30/40]

DECLARE_INIT ( init_nls_iso8859_2  )

◆ DECLARE_INIT() [31/40]

DECLARE_INIT ( init_nls_iso8859_3  )

◆ DECLARE_INIT() [32/40]

DECLARE_INIT ( init_nls_iso8859_4  )

◆ DECLARE_INIT() [33/40]

DECLARE_INIT ( init_nls_iso8859_5  )

◆ DECLARE_INIT() [34/40]

DECLARE_INIT ( init_nls_iso8859_6  )

◆ DECLARE_INIT() [35/40]

DECLARE_INIT ( init_nls_iso8859_7  )

◆ DECLARE_INIT() [36/40]

DECLARE_INIT ( init_nls_iso8859_9  )

◆ DECLARE_INIT() [37/40]

DECLARE_INIT ( init_nls_koi8_r  )

◆ DECLARE_INIT() [38/40]

DECLARE_INIT ( init_nls_koi8_ru  )

◆ DECLARE_INIT() [39/40]

DECLARE_INIT ( init_nls_koi8_u  )

◆ DECLARE_INIT() [40/40]

DECLARE_INIT ( init_nls_utf8  )

◆ Ext2LoadAllNls()

int Ext2LoadAllNls ( )

Definition at line 118 of file nls.c.

119{
120 int rc;
121
122 tables = NULL;
124
125 /* loading utf8 ... */
127
128#ifdef FULL_CODEPAGES_SUPPORT
129
130 /* loading chinese gb2312 and big5... */
133
134 /* loading all others */
135
173
174#endif //FULL_CODEPAGES_SUPPORT
175
176 return rc;
177}
#define NULL
Definition: types.h:112
struct nls_table * tables
Definition: nls_base.c:22
spinlock_t nls_lock
Definition: nls_base.c:23
#define LOAD_NLS
Definition: module.h:292
#define spin_lock_init(sl)
Definition: module.h:305
static int __init init_nls_ascii(void)
Definition: nls_ascii.c:155
static int __init init_nls_cp1250(void)
Definition: nls_cp1250.c:336
static int __init init_nls_cp1251(void)
Definition: nls_cp1251.c:290
static int __init init_nls_cp1255(void)
Definition: nls_cp1255.c:371
static int __init init_nls_cp437(void)
Definition: nls_cp437.c:376
static int __init init_nls_cp737(void)
Definition: nls_cp737.c:339
static int __init init_nls_cp775(void)
Definition: nls_cp775.c:308
static int __init init_nls_cp850(void)
Definition: nls_cp850.c:304
static int __init init_nls_cp852(void)
Definition: nls_cp852.c:326
static int __init init_nls_cp855(void)
Definition: nls_cp855.c:288
static int __init init_nls_cp857(void)
Definition: nls_cp857.c:290
static int __init init_nls_cp860(void)
Definition: nls_cp860.c:353
static int __init init_nls_cp861(void)
Definition: nls_cp861.c:376
static int __init init_nls_cp862(void)
Definition: nls_cp862.c:410
static int __init init_nls_cp863(void)
Definition: nls_cp863.c:370
static int __init init_nls_cp864(void)
Definition: nls_cp864.c:396
static int __init init_nls_cp865(void)
Definition: nls_cp865.c:376
static int __init init_nls_cp866(void)
Definition: nls_cp866.c:294
static int __init init_nls_cp869(void)
Definition: nls_cp869.c:304
static int __init init_nls_cp874(void)
Definition: nls_cp874.c:262
static int __init init_nls_cp932(void)
Definition: nls_cp932.c:7932
static int __init init_nls_cp936(void)
Definition: nls_cp936.c:11017
static int __init init_nls_cp949(void)
Definition: nls_cp949.c:13934
static int __init init_nls_cp950(void)
Definition: nls_cp950.c:9473
static int __init init_nls_euc_jp(void)
Definition: nls_euc-jp.c:565
static int __init init_nls_iso8859_13(void)
static int __init init_nls_iso8859_14(void)
static int __init init_nls_iso8859_15(void)
static int __init init_nls_iso8859_1(void)
static int __init init_nls_iso8859_2(void)
static int __init init_nls_iso8859_3(void)
static int __init init_nls_iso8859_4(void)
static int __init init_nls_iso8859_5(void)
static int __init init_nls_iso8859_6(void)
static int __init init_nls_iso8859_7(void)
static int __init init_nls_iso8859_9(void)
static int __init init_nls_koi8_r(void)
Definition: nls_koi8-r.c:312
static int __init init_nls_koi8_ru(void)
Definition: nls_koi8-ru.c:63
static int __init init_nls_koi8_u(void)
Definition: nls_koi8-u.c:319
static int __init init_nls_utf8(void)
Definition: nls_utf8.c:46

Referenced by DriverEntry().

◆ Ext2UnloadAllNls()

VOID Ext2UnloadAllNls ( )

Definition at line 181 of file nls.c.

182{
183
184#ifdef FULL_CODEPAGES_SUPPORT
185
223
224 /* unloading chinese codepages */
227
228#endif //FULL_CODEPAGES_SUPPORT
229
230 /* unloading nls of utf8 */
232}
#define UNLOAD_NLS
Definition: module.h:293
static void __exit exit_nls_cp1251(void)
Definition: nls_cp1251.c:295
static void __exit exit_nls_cp1255(void)
Definition: nls_cp1255.c:376
static void __exit exit_nls_cp437(void)
Definition: nls_cp437.c:381
static void __exit exit_nls_cp737(void)
Definition: nls_cp737.c:344
static void __exit exit_nls_cp775(void)
Definition: nls_cp775.c:313
static void __exit exit_nls_cp850(void)
Definition: nls_cp850.c:309
static void __exit exit_nls_cp852(void)
Definition: nls_cp852.c:331
static void __exit exit_nls_cp855(void)
Definition: nls_cp855.c:293
static void __exit exit_nls_cp857(void)
Definition: nls_cp857.c:295
static void __exit exit_nls_cp860(void)
Definition: nls_cp860.c:358
static void __exit exit_nls_cp861(void)
Definition: nls_cp861.c:381
static void __exit exit_nls_cp862(void)
Definition: nls_cp862.c:415
static void __exit exit_nls_cp863(void)
Definition: nls_cp863.c:375
static void __exit exit_nls_cp864(void)
Definition: nls_cp864.c:401
static void __exit exit_nls_cp865(void)
Definition: nls_cp865.c:381
static void __exit exit_nls_cp866(void)
Definition: nls_cp866.c:299
static void __exit exit_nls_cp869(void)
Definition: nls_cp869.c:309
static void __exit exit_nls_cp874(void)
Definition: nls_cp874.c:267
static void __exit exit_nls_cp932(void)
Definition: nls_cp932.c:7937
static void __exit exit_nls_cp936(void)
Definition: nls_cp936.c:11022
static void __exit exit_nls_cp949(void)
Definition: nls_cp949.c:13939
static void __exit exit_nls_cp950(void)
Definition: nls_cp950.c:9478
static void __exit exit_nls_euc_jp(void)
Definition: nls_euc-jp.c:578
static void __exit exit_nls_iso8859_13(void)
static void __exit exit_nls_iso8859_14(void)
static void __exit exit_nls_iso8859_15(void)
static void __exit exit_nls_iso8859_1(void)
static void __exit exit_nls_iso8859_2(void)
static void __exit exit_nls_iso8859_3(void)
static void __exit exit_nls_iso8859_4(void)
static void __exit exit_nls_iso8859_5(void)
static void __exit exit_nls_iso8859_6(void)
static void __exit exit_nls_iso8859_7(void)
static void __exit exit_nls_iso8859_9(void)
static void __exit exit_nls_koi8_r(void)
Definition: nls_koi8-r.c:317
static void __exit exit_nls_koi8_ru(void)
Definition: nls_koi8-ru.c:76
static void __exit exit_nls_koi8_u(void)
Definition: nls_koi8-u.c:324
static void __exit exit_nls_utf8(void)
Definition: nls_utf8.c:55

Variable Documentation

◆ nls_lock

spinlock_t nls_lock
extern

Definition at line 23 of file nls_base.c.

Referenced by Ext2LoadAllNls(), find_nls(), register_nls(), and unregister_nls().

◆ tables