patch to fix NetServerEnum with multiple workgroup lists kindly supplied.
[Samba.git] / source / include / charset.h
blob14b6ec2020f66604505b0b06fdce3c495963e78d
1 /*
2 Unix SMB/Netbios implementation.
3 Version 1.9.
4 Character set handling
5 Copyright (C) Andrew Tridgell 1992-1995
7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 2 of the License, or
10 (at your option) any later version.
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with this program; if not, write to the Free Software
19 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
22 #ifndef CHARSET_C
24 extern char *dos_char_map;
25 extern char *upper_char_map;
26 extern char *lower_char_map;
27 extern void add_char_string(char *s);
28 extern void charset_initialise(void);
30 #ifdef toupper
31 #undef toupper
32 #endif
34 #ifdef tolower
35 #undef tolower
36 #endif
38 #ifdef isupper
39 #undef isupper
40 #endif
42 #ifdef islower
43 #undef islower
44 #endif
46 #ifdef isdoschar
47 #undef isdoschar
48 #endif
50 #ifdef isspace
51 #undef isspace
52 #endif
54 #define toupper(c) upper_char_map[(char)(c)]
55 #define tolower(c) lower_char_map[(char)(c)]
56 #define isupper(c) (((char)(c)) != tolower(c))
57 #define islower(c) (((char)(c)) != toupper(c))
58 #define isdoschar(c) (dos_char_map[(char)(c)] != 0)
59 #define isspace(c) ((c)==' ' || (c) == '\t')
61 /* this is used to determine if a character is safe to use in
62 something that may be put on a command line */
63 #define issafe(c) (isalnum(c) || strchr("-._",c))
64 #endif