initial load of upstream version 1.06.32
[xmlrpc-c] / include / xmlrpc-c / string_int.h
1 #ifndef XMLRPC_C_STRING_INT_H_INCLUDED
2 #define XMLRPC_C_STRING_INT_H_INCLUDED
3
4
5 #include <stdarg.h>
6 #include <string.h>
7
8 #include "xmlrpc-c/base_int.h"
9
10 #ifdef __cplusplus
11 extern "C" {
12 #endif
13
14 extern const char * const xmlrpc_strsol;
15
16 void
17 xmlrpc_vasprintf(const char ** const retvalP,
18                  const char *  const fmt,
19                  va_list             varargs);
20
21 void GNU_PRINTF_ATTR(2,3)
22 xmlrpc_asprintf(const char ** const retvalP, const char * const fmt, ...);
23
24 void
25 xmlrpc_strfree(const char * const string);
26
27 static __inline__ bool
28 xmlrpc_streq(const char * const a,
29              const char * const b) {
30     return (strcmp(a, b) == 0);
31 }
32
33 static __inline__ bool
34 xmlrpc_strcaseeq(const char * const a,
35                  const char * const b) {
36     return (strcasecmp(a, b) == 0);
37 }
38
39 static __inline__ bool
40 xmlrpc_strneq(const char * const a,
41               const char * const b,
42               size_t       const len) {
43     return (strncmp(a, b, len) == 0);
44 }
45
46 const char * 
47 xmlrpc_makePrintable(const char * const input);
48
49 const char *
50 xmlrpc_makePrintable_lp(const char * const input,
51                         size_t       const inputLength);
52
53 const char *
54 xmlrpc_makePrintableChar(char const input);
55
56 #ifdef __cplusplus
57 }
58 #endif
59
60 #endif