Commit | Line | Data |
---|---|---|
805e021f CE |
1 | /* ==================================================================== |
2 | * Copyright (c) 1998 The Apache Group. All rights reserved. | |
3 | * | |
4 | * Redistribution and use in source and binary forms, with or without | |
5 | * modification, are permitted provided that the following conditions | |
6 | * are met: | |
7 | * | |
8 | * 1. Redistributions of source code must retain the above copyright | |
9 | * notice, this list of conditions and the following disclaimer. | |
10 | * | |
11 | * 2. Redistributions in binary form must reproduce the above copyright | |
12 | * notice, this list of conditions and the following disclaimer in | |
13 | * the documentation and/or other materials provided with the | |
14 | * distribution. | |
15 | * | |
16 | * 3. All advertising materials mentioning features or use of this | |
17 | * software must display the following acknowledgment: | |
18 | * "This product includes software developed by the Apache Group | |
19 | * for use in the Apache HTTP server project (http://www.apache.org/)." | |
20 | * | |
21 | * 4. The names "Apache Server" and "Apache Group" must not be used to | |
22 | * endorse or promote products derived from this software without | |
23 | * prior written permission. For written permission, please contact | |
24 | * apache@apache.org. | |
25 | * | |
26 | * 5. Products derived from this software may not be called "Apache" | |
27 | * nor may "Apache" appear in their names without prior written | |
28 | * permission of the Apache Group. | |
29 | * | |
30 | * 6. Redistributions of any form whatsoever must retain the following | |
31 | * acknowledgment: | |
32 | * "This product includes software developed by the Apache Group | |
33 | * for use in the Apache HTTP server project (http://www.apache.org/)." | |
34 | * | |
35 | * THIS SOFTWARE IS PROVIDED BY THE APACHE GROUP ``AS IS'' AND ANY | |
36 | * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | |
37 | * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR | |
38 | * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE APACHE GROUP OR | |
39 | * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | |
40 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT | |
41 | * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; | |
42 | * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | |
43 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, | |
44 | * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | |
45 | * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED | |
46 | * OF THE POSSIBILITY OF SUCH DAMAGE. | |
47 | * ==================================================================== | |
48 | * | |
49 | * This software consists of voluntary contributions made by many | |
50 | * individuals on behalf of the Apache Group and was originally based | |
51 | * on public domain software written at the National Center for | |
52 | * Supercomputing Applications, University of Illinois, Urbana-Champaign. | |
53 | * For more information on the Apache Group and the Apache HTTP server | |
54 | * project, please see <http://www.apache.org/>. | |
55 | * | |
56 | */ | |
57 | ||
58 | #ifndef AP_CTYPE_H | |
59 | #define AP_CTYPE_H | |
60 | ||
61 | #include <ctype.h> | |
62 | ||
63 | #ifdef __cplusplus | |
64 | extern "C" { | |
65 | #endif | |
66 | ||
67 | /* These macros allow correct support of 8-bit characters on systems which | |
68 | * support 8-bit characters. Pretty dumb how the cast is required, but | |
69 | * that's legacy libc for ya. These new macros do not support EOF like | |
70 | * the standard macros do. Tough. | |
71 | */ | |
72 | #define ap_isalnum(c) (isalnum(((unsigned char)(c)))) | |
73 | #define ap_isalpha(c) (isalpha(((unsigned char)(c)))) | |
74 | #define ap_iscntrl(c) (iscntrl(((unsigned char)(c)))) | |
75 | #define ap_isdigit(c) (isdigit(((unsigned char)(c)))) | |
76 | #define ap_isgraph(c) (isgraph(((unsigned char)(c)))) | |
77 | #define ap_islower(c) (islower(((unsigned char)(c)))) | |
78 | #define ap_isprint(c) (isprint(((unsigned char)(c)))) | |
79 | #define ap_ispunct(c) (ispunct(((unsigned char)(c)))) | |
80 | #define ap_isspace(c) (isspace(((unsigned char)(c)))) | |
81 | #define ap_isupper(c) (isupper(((unsigned char)(c)))) | |
82 | #define ap_tolower(c) (tolower(((unsigned char)(c)))) | |
83 | #define ap_toupper(c) (toupper(((unsigned char)(c)))) | |
84 | ||
85 | #ifdef __cplusplus | |
86 | } | |
87 | #endif | |
88 | #endif /* !AP_CTYPE_H */ |