29#include "apr_escape_test_char.h"
39#define TEST_CHAR(c, f) (test_char_table[(unsigned)(c)] & (f))
45 const unsigned char *
s;
50 s = (
const unsigned char *)
str;
55#if defined(OS2) || defined(WIN32)
61 if (*
s ==
'\r' || *
s ==
'\n') {
122#if !APR_CHARSET_EBCDIC
124 ((
what[0] >=
'A') ? ((
what[0] & 0xdf) -
'A') + 10 : (
what[0] -
'0'));
145 const char *
s = (
const char *)
url;
158 if (
plus && *
s ==
'+') {
162 else if (*
s !=
'%') {
200 if (
plus && *
s ==
'+') {
203 else if (*
s !=
'%') {
290 unsigned char *
where)
292#if APR_CHARSET_EBCDIC
306 const unsigned char *
s = (
const unsigned char *)
str;
307 unsigned char *
d = (
unsigned char *)
escaped;
312 while ((
c = *
s) &&
slen) {
328 while ((
c = *
s) &&
slen) {
374 const unsigned char *
s = (
const unsigned char *)
path;
375 unsigned char *
d = (
unsigned char *)
escaped;
396 while ((
c = *
s) &&
slen) {
412 while ((
c = *
s) &&
slen) {
457 const unsigned char *
s = (
const unsigned char *)
str;
458 unsigned char *
d = (
unsigned char *)
escaped;
463 while ((
c = *
s) &&
slen) {
483 while ((
c = *
s) &&
slen) {
531 const unsigned char *
s = (
const unsigned char *)
str;
532 unsigned char *
d = (
unsigned char *)
escaped;
537 while ((
c = *
s) &&
slen) {
589 while ((
c = *
s) &&
slen) {
674 "amp\046ETH\320eth\360",
675 "quot\042Auml\304Euml\313Iuml\317Ouml\326Uuml\334auml\344euml"
676 "\353iuml\357ouml\366uuml\374yuml\377",
677 "Acirc\302Aring\305AElig\306Ecirc\312Icirc\316Ocirc\324Ucirc"
678 "\333THORN\336szlig\337acirc\342aring\345aelig\346ecirc\352"
679 "icirc\356ocirc\364ucirc\373thorn\376",
680 "Agrave\300Aacute\301Atilde\303Ccedil\307Egrave\310Eacute\311"
681 "Igrave\314Iacute\315Ntilde\321Ograve\322Oacute\323Otilde"
682 "\325Oslash\330Ugrave\331Uacute\332Yacute\335agrave\340"
683 "aacute\341atilde\343ccedil\347egrave\350eacute\351igrave"
684 "\354iacute\355ntilde\361ograve\362oacute\363otilde\365"
685 "oslash\370ugrave\371uacute\372yacute\375"
696 for (
i = 1;
s[
i] !=
';' &&
s[
i] !=
'\0' && (
slen -
i) != 0;
701 if (
s[
i] ==
'\0' || (
slen -
i) == 0) {
712 if (j <
i ||
val <= 8 || (
val >= 11 &&
val <= 31)
754 for (
i = 1;
s[
i] !=
';' &&
s[
i] !=
'\0' && (
slen -
i) != 0;
759 if (
s[
i] ==
'\0' || (
slen -
i) == 0) {
769 if (j <
i ||
val <= 8 || (
val >= 11 &&
val <= 31)
836 const unsigned char *
s = (
const unsigned char *)
str;
837 unsigned char *
d = (
unsigned char *)
escaped;
842 while ((
c = *
s) &&
slen) {
915 while ((
c = *
s) &&
slen) {
983 const unsigned char *
in =
src;
1037 const unsigned char *
s = (
const unsigned char *)
str;
1038 unsigned char *
d = (
unsigned char *)
dest;
1040 unsigned char u = 0;
1044 while ((
c = *
s) &&
slen) {
1059 u |=
c - (
'A' - 10);
1062 u |=
c - (
'a' - 10);
1083 while ((
c = *
s) &&
slen) {
1149 const unsigned char *
s = (
const unsigned char *)
str;
1150 unsigned char *
d = (
unsigned char *)
escaped;
const char apr_size_t len
APR-UTIL Encoding Private.
static char x2c(const char *what)
static const char c2x_table[]
static APR_INLINE unsigned char * c2x(unsigned what, unsigned char prefix, unsigned char *where)
APR general purpose library routines.
apr_size_t const unsigned char unsigned int unsigned int d
request_rec int int apr_table_t const char * path
const unsigned char * buf
const char apr_ssize_t int flags
const char apr_ssize_t slen
const void apr_size_t int colon
const char apr_ssize_t int partial
const char apr_ssize_t const char * forbid
const char apr_ssize_t const char const char int plus
const void apr_size_t srclen
#define APR_ESCAPE_STRING
const char apr_ssize_t const char const char * reserved
const char apr_ssize_t int quote
#define APR_ESCAPE_LDAP_FILTER
const char apr_ssize_t int toasc
#define APR_ESCAPE_LDAP_DN
const void apr_status_t(*) apr_status_t(* APR_DECLARE)(void) apr_pool_pre_cleanup_register(apr_pool_t *p
apr_seek_where_t apr_off_t * offset
apr_vformatter_buff_t * c
#define T_ESCAPE_URLENCODED
#define T_ESCAPE_PATH_SEGMENT
#define T_ESCAPE_SHELL_CMD