diff options
| -rw-r--r-- | CHANGELOG | 9 | ||||
| -rw-r--r-- | build-apache2.bat | 40 | ||||
| -rw-r--r-- | mod_log_sql.c | 64 | ||||
| -rw-r--r-- | mod_log_sql_mysql.c | 30 | ||||
| -rw-r--r-- | winconfig.h | 25 |
5 files changed, 137 insertions, 31 deletions
| @@ -1,3 +1,12 @@ | |||
| 1 | 1.98: 2004-04-? | ||
| 2 | * re-fixed apache.m4 to better detect APR and APU code | ||
| 3 | * fixed for win32 compilation under apache 2 | ||
| 4 | * lowered minumum required apache 2 version to 2.0.40 (RH9) | ||
| 5 | * Added LogSQLDisablePreserve to disable the preserve file. | ||
| 6 | * Changed default preserve file location to logs/mod_log_sql-preserve | ||
| 7 | And made LogSQLPreserveFile root relative. | ||
| 8 | * fixed bug where preserve file wouldn't be created in apache 2 | ||
| 9 | |||
| 1 | 1.97: 2004-04-08 | 10 | 1.97: 2004-04-08 |
| 2 | * fixed apache.m4 to work with apache 2 setups with different include | 11 | * fixed apache.m4 to work with apache 2 setups with different include |
| 3 | directories for APR and APU then core Apache | 12 | directories for APR and APU then core Apache |
diff --git a/build-apache2.bat b/build-apache2.bat new file mode 100644 index 0000000..f44109c --- /dev/null +++ b/build-apache2.bat | |||
| @@ -0,0 +1,40 @@ | |||
| 1 | @echo off | ||
| 2 | rem path to Microsoft SDK installation | ||
| 3 | SET DIR_MSSDK=C:\Program Files\Microsoft SDK | ||
| 4 | rem path to apache2 installation | ||
| 5 | SET DIR_APACHE=C:\Program Files\Apache Group\Apache2 | ||
| 6 | rem path to mysql 4.0 installation | ||
| 7 | SET DIR_MYSQL=C:\MySQL | ||
| 8 | rem Can be set to opt or debug | ||
| 9 | SET LIB_MYSQL=opt | ||
| 10 | |||
| 11 | copy /Y winconfig.h config.h | ||
| 12 | mkdir Release | ||
| 13 | cd Release | ||
| 14 | Rem Compile all the source code | ||
| 15 | echo /MD /W3 /Zi /O2 /DNDEBUG /D_WINDOWS /DWIN32 > RESP_c.txt | ||
| 16 | echo /Fd"mod_log_sql" /FD >> RESP_c.txt | ||
| 17 | echo /DHAVE_CONFIG_H /DWITH_APACHE20 /DLOGSQL_DECLARE_EXPORT >> RESP_c.txt | ||
| 18 | echo /I.. >> RESP_c.txt | ||
| 19 | echo /I"%DIR_MSSDK%\Include" >> RESP_c.txt | ||
| 20 | echo /I"%DIR_APACHE%\Include" >> RESP_c.txt | ||
| 21 | echo /I"%DIR_MYSQL%\Include" >> RESP_c.txt | ||
| 22 | cl @RESP_c.txt /c ..\mod_log_sql.c ..\mod_log_sql_mysql.c | ||
| 23 | |||
| 24 | rem link main module | ||
| 25 | echo /MACHINE:I386 /SUBSYSTEM:windows > RESP_l.txt | ||
| 26 | echo /OUT:mod_log_sql.so /DLL /OPT:REF /DEBUG >> RESP_l.txt | ||
| 27 | echo /LIBPATH:"%DIR_APACHE%\lib" >> RESP_l.txt | ||
| 28 | echo libapr.lib libaprutil.lib libhttpd.lib >> RESP_l.txt | ||
| 29 | link @RESP_l.txt mod_log_sql.obj | ||
| 30 | |||
| 31 | rem link mysql module | ||
| 32 | echo /MACHINE:I386 /SUBSYSTEM:windows > RESP_l.txt | ||
| 33 | echo /OUT:mod_log_sql_mysql.so /DLL /OPT:REF /DEBUG >> RESP_l.txt | ||
| 34 | echo /LIBPATH:"%DIR_APACHE%\lib" >> RESP_l.txt | ||
| 35 | echo /LIBPATH:"%DIR_MYSQL%\lib\%LIB_MYSQL%" >> RESP_l.txt | ||
| 36 | echo /NODEFAULTLIB:LIBCMT.lib >> RESP_l.txt | ||
| 37 | echo libapr.lib libaprutil.lib libhttpd.lib >> RESP_l.txt | ||
| 38 | echo libmysql.lib mod_log_sql.lib >> RESP_l.txt | ||
| 39 | link @RESP_l.txt mod_log_sql_mysql.obj | ||
| 40 | cd .. | ||
diff --git a/mod_log_sql.c b/mod_log_sql.c index 83a303a..0ba1bf6 100644 --- a/mod_log_sql.c +++ b/mod_log_sql.c | |||
| @@ -36,7 +36,7 @@ | |||
| 36 | #define DEFAULT_HIN_TABLE_NAME "headers_in" | 36 | #define DEFAULT_HIN_TABLE_NAME "headers_in" |
| 37 | #define DEFAULT_HOUT_TABLE_NAME "headers_out" | 37 | #define DEFAULT_HOUT_TABLE_NAME "headers_out" |
| 38 | #define DEFAULT_COOKIE_TABLE_NAME "cookies" | 38 | #define DEFAULT_COOKIE_TABLE_NAME "cookies" |
| 39 | #define DEFAULT_PRESERVE_FILE "/tmp/sql-preserve" | 39 | #define DEFAULT_PRESERVE_FILE "logs/mod_log_sql-preserve" |
| 40 | 40 | ||
| 41 | /* -------------* | 41 | /* -------------* |
| 42 | * DECLARATIONS * | 42 | * DECLARATIONS * |
| @@ -54,6 +54,7 @@ typedef struct { | |||
| 54 | int massvirtual; | 54 | int massvirtual; |
| 55 | int createtables; | 55 | int createtables; |
| 56 | int forcepreserve; | 56 | int forcepreserve; |
| 57 | int disablepreserve; | ||
| 57 | char *machid; | 58 | char *machid; |
| 58 | int announce; | 59 | int announce; |
| 59 | logsql_dbconnection db; | 60 | logsql_dbconnection db; |
| @@ -193,14 +194,20 @@ static void preserve_entry(request_rec *r, const char *query) | |||
| 193 | #if defined(WITH_APACHE20) | 194 | #if defined(WITH_APACHE20) |
| 194 | apr_file_t *fp; | 195 | apr_file_t *fp; |
| 195 | apr_status_t result; | 196 | apr_status_t result; |
| 196 | result = apr_file_open(&fp, cls->preserve_file,APR_APPEND, APR_OS_DEFAULT, r->pool); | ||
| 197 | #elif defined(WITH_APACHE13) | 197 | #elif defined(WITH_APACHE13) |
| 198 | FILE *fp; | 198 | FILE *fp; |
| 199 | int result; | 199 | int result; |
| 200 | #endif | ||
| 201 | /* If preserve file is disabled bail out */ | ||
| 202 | if (global_config.disablepreserve) | ||
| 203 | return; | ||
| 204 | #if defined(WITH_APACHE20) | ||
| 205 | result = apr_file_open(&fp, cls->preserve_file,APR_APPEND | APR_WRITE | APR_CREATE, APR_OS_DEFAULT, r->pool); | ||
| 206 | #elif defined(WITH_APACHE13) | ||
| 200 | fp = ap_pfopen(r->pool, cls->preserve_file, "a"); | 207 | fp = ap_pfopen(r->pool, cls->preserve_file, "a"); |
| 201 | result = (fp)?0:errno; | 208 | result = (fp)?0:errno; |
| 202 | #endif | 209 | #endif |
| 203 | if (result != APR_SUCCESS) { | 210 | if (result != APR_SUCCESS) { |
| 204 | log_error(APLOG_MARK, APLOG_ERR, result, r->server, | 211 | log_error(APLOG_MARK, APLOG_ERR, result, r->server, |
| 205 | "attempted append of local preserve file '%s' but failed.",cls->preserve_file); | 212 | "attempted append of local preserve file '%s' but failed.",cls->preserve_file); |
| 206 | } else { | 213 | } else { |
| @@ -272,6 +279,27 @@ static const char *set_server_string_slot(cmd_parms *cmd, | |||
| 272 | return NULL; | 279 | return NULL; |
| 273 | } | 280 | } |
| 274 | 281 | ||
| 282 | static const char *set_server_file_slot(cmd_parms *cmd, | ||
| 283 | void *struct_ptr, | ||
| 284 | const char *arg) | ||
| 285 | { | ||
| 286 | void *ptr = ap_get_module_config(cmd->server->module_config, | ||
| 287 | &log_sql_module); | ||
| 288 | int offset = (int)(long)cmd->info; | ||
| 289 | const char *path; | ||
| 290 | |||
| 291 | path = ap_server_root_relative(cmd->pool, arg); | ||
| 292 | |||
| 293 | if (!path) { | ||
| 294 | return apr_pstrcat(cmd->pool, "Invalid file path ", | ||
| 295 | arg, NULL); | ||
| 296 | } | ||
| 297 | |||
| 298 | *(const char **)((char*)ptr + offset) = path; | ||
| 299 | |||
| 300 | return NULL; | ||
| 301 | } | ||
| 302 | |||
| 275 | static const char *set_logformat_slot(cmd_parms *cmd, | 303 | static const char *set_logformat_slot(cmd_parms *cmd, |
| 276 | void *struct_ptr, | 304 | void *struct_ptr, |
| 277 | const char *arg) | 305 | const char *arg) |
| @@ -325,6 +353,7 @@ static const char *set_log_sql_info(cmd_parms *cmd, void *dummy, | |||
| 325 | const char *host, const char *user, const char *pwd) | 353 | const char *host, const char *user, const char *pwd) |
| 326 | { | 354 | { |
| 327 | if (!user) { /* user is null, so only one arg passed */ | 355 | if (!user) { /* user is null, so only one arg passed */ |
| 356 | /* TODO: to more error checking/force all params to be set */ | ||
| 328 | apr_uri_t uri; | 357 | apr_uri_t uri; |
| 329 | apr_uri_parse(cmd->pool, host, &uri); | 358 | apr_uri_parse(cmd->pool, host, &uri); |
| 330 | if (uri.scheme) { | 359 | if (uri.scheme) { |
| @@ -372,7 +401,7 @@ static const char *add_server_string_slot(cmd_parms *cmd, | |||
| 372 | void *ptr = ap_get_module_config(cmd->server->module_config, | 401 | void *ptr = ap_get_module_config(cmd->server->module_config, |
| 373 | &log_sql_module); | 402 | &log_sql_module); |
| 374 | int offset = (int)(long)cmd->info; | 403 | int offset = (int)(long)cmd->info; |
| 375 | apr_array_header_t *ary = *(apr_array_header_t **)(ptr + offset); | 404 | apr_array_header_t *ary = *(apr_array_header_t **)((char *)ptr + offset); |
| 376 | addme = apr_array_push(ary); | 405 | addme = apr_array_push(ary); |
| 377 | *addme = apr_pstrdup(ary->pool, arg); | 406 | *addme = apr_pstrdup(ary->pool, arg); |
| 378 | 407 | ||
| @@ -464,7 +493,17 @@ static void log_sql_module_init(server_rec *s, apr_pool_t *p) | |||
| 464 | if (global_config.announce) { | 493 | if (global_config.announce) { |
| 465 | ap_add_version_component(p, PACKAGE_NAME"/"PACKAGE_VERSION); | 494 | ap_add_version_component(p, PACKAGE_NAME"/"PACKAGE_VERSION); |
| 466 | } | 495 | } |
| 467 | 496 | /* ap_server_root_relative any default preserve file locations */ | |
| 497 | { | ||
| 498 | server_rec *cur_s; | ||
| 499 | const char *default_p = ap_server_root_relative(p, DEFAULT_PRESERVE_FILE); | ||
| 500 | for (cur_s = s; cur_s != NULL; cur_s= cur_s->next) { | ||
| 501 | logsql_state *cls = ap_get_module_config(cur_s->module_config, | ||
| 502 | &log_sql_module); | ||
| 503 | if (cls->preserve_file == DEFAULT_PRESERVE_FILE) | ||
| 504 | cls->preserve_file = default_p; | ||
| 505 | } | ||
| 506 | } | ||
| 468 | #if defined(WITH_APACHE20) | 507 | #if defined(WITH_APACHE20) |
| 469 | return OK; | 508 | return OK; |
| 470 | #endif | 509 | #endif |
| @@ -693,7 +732,10 @@ static void *log_sql_merge_state(apr_pool_t *p, void *basev, void *addv) | |||
| 693 | 732 | ||
| 694 | if (child->preserve_file == DEFAULT_PRESERVE_FILE) | 733 | if (child->preserve_file == DEFAULT_PRESERVE_FILE) |
| 695 | child->preserve_file = parent->preserve_file; | 734 | child->preserve_file = parent->preserve_file; |
| 696 | 735 | /* server_root_relative the preserve file location */ | |
| 736 | if (child->preserve_file == DEFAULT_PRESERVE_FILE) | ||
| 737 | child->preserve_file = ap_server_root_relative(p, DEFAULT_PRESERVE_FILE); | ||
| 738 | |||
| 697 | if (child->notes_table_name == DEFAULT_NOTES_TABLE_NAME) | 739 | if (child->notes_table_name == DEFAULT_NOTES_TABLE_NAME) |
| 698 | child->notes_table_name = parent->notes_table_name; | 740 | child->notes_table_name = parent->notes_table_name; |
| 699 | 741 | ||
| @@ -1070,7 +1112,7 @@ static const command_rec log_sql_cmds[] = { | |||
| 1070 | , | 1112 | , |
| 1071 | /* DB connection parameters */ | 1113 | /* DB connection parameters */ |
| 1072 | AP_INIT_TAKE13("LogSQLLoginInfo", set_log_sql_info, NULL, RSRC_CONF, | 1114 | AP_INIT_TAKE13("LogSQLLoginInfo", set_log_sql_info, NULL, RSRC_CONF, |
| 1073 | "The database connection URI in the form<br>driver://user:password@hostname:port/database") | 1115 | "The database connection URI in the form "driver://user:password@hostname:port/database"") |
| 1074 | , | 1116 | , |
| 1075 | AP_INIT_TAKE2("LogSQLDBParam", set_dbparam, NULL, RSRC_CONF, | 1117 | AP_INIT_TAKE2("LogSQLDBParam", set_dbparam, NULL, RSRC_CONF, |
| 1076 | "First argument is the DB parameter, second is the value to assign") | 1118 | "First argument is the DB parameter, second is the value to assign") |
| @@ -1079,7 +1121,11 @@ static const command_rec log_sql_cmds[] = { | |||
| 1079 | (void *)APR_OFFSETOF(global_config_t, forcepreserve), RSRC_CONF, | 1121 | (void *)APR_OFFSETOF(global_config_t, forcepreserve), RSRC_CONF, |
| 1080 | "Forces logging to preserve file and bypasses database") | 1122 | "Forces logging to preserve file and bypasses database") |
| 1081 | , | 1123 | , |
| 1082 | AP_INIT_TAKE1("LogSQLPreserveFile", set_server_string_slot, | 1124 | AP_INIT_FLAG("LogSQLDisablePreserve", set_global_flag_slot, |
| 1125 | (void *)APR_OFFSETOF(global_config_t, disablepreserve), RSRC_CONF, | ||
| 1126 | "Completely disables use of the preserve file") | ||
| 1127 | , | ||
| 1128 | AP_INIT_TAKE1("LogSQLPreserveFile", set_server_file_slot, | ||
| 1083 | (void *)APR_OFFSETOF(logsql_state,preserve_file), RSRC_CONF, | 1129 | (void *)APR_OFFSETOF(logsql_state,preserve_file), RSRC_CONF, |
| 1084 | "Name of the file to use for data preservation during database downtime") | 1130 | "Name of the file to use for data preservation during database downtime") |
| 1085 | , | 1131 | , |
diff --git a/mod_log_sql_mysql.c b/mod_log_sql_mysql.c index 3749d64..e8a149e 100644 --- a/mod_log_sql_mysql.c +++ b/mod_log_sql_mysql.c | |||
| @@ -109,13 +109,22 @@ static const char *log_sql_mysql_escape(const char *from_str, apr_pool_t *p, | |||
| 109 | return from_str; | 109 | return from_str; |
| 110 | } | 110 | } |
| 111 | } | 111 | } |
| 112 | 112 | #if defined(WIN32) | |
| 113 | #define SIGNAL_GRAB | ||
| 114 | #define SIGNAL_RELEASE | ||
| 115 | #define SIGNAL_VAR | ||
| 116 | #else | ||
| 117 | #define SIGNAL_VAR void (*handler) (int) | ||
| 118 | #define SIGNAL_GRAB handler = signal(SIGPIPE, SIG_IGN) | ||
| 119 | #define SIGNAL_RELEASE signal(SIGPIPE, handler); | ||
| 120 | #endif | ||
| 113 | /* Run a mysql insert query and return a categorized error or success */ | 121 | /* Run a mysql insert query and return a categorized error or success */ |
| 114 | static logsql_query_ret log_sql_mysql_query(request_rec *r,logsql_dbconnection *db, | 122 | static logsql_query_ret log_sql_mysql_query(request_rec *r,logsql_dbconnection *db, |
| 115 | const char *query) | 123 | const char *query) |
| 116 | { | 124 | { |
| 117 | int retval; | 125 | int retval; |
| 118 | void (*handler) (int); | 126 | SIGNAL_VAR |
| 127 | |||
| 119 | unsigned int real_error = 0; | 128 | unsigned int real_error = 0; |
| 120 | /*const char *real_error_str = NULL;*/ | 129 | /*const char *real_error_str = NULL;*/ |
| 121 | 130 | ||
| @@ -124,12 +133,13 @@ static logsql_query_ret log_sql_mysql_query(request_rec *r,logsql_dbconnection * | |||
| 124 | if (!dblink) { | 133 | if (!dblink) { |
| 125 | return LOGSQL_QUERY_NOLINK; | 134 | return LOGSQL_QUERY_NOLINK; |
| 126 | } | 135 | } |
| 136 | |||
| 127 | /* A failed mysql_query() may send a SIGPIPE, so we ignore that signal momentarily. */ | 137 | /* A failed mysql_query() may send a SIGPIPE, so we ignore that signal momentarily. */ |
| 128 | handler = signal(SIGPIPE, SIG_IGN); | 138 | SIGNAL_GRAB |
| 129 | 139 | ||
| 130 | /* Run the query */ | 140 | /* Run the query */ |
| 131 | if (!(retval = mysql_query(dblink, query))) { | 141 | if (!(retval = mysql_query(dblink, query))) { |
| 132 | signal(SIGPIPE, handler); | 142 | SIGNAL_RELEASE |
| 133 | return LOGSQL_QUERY_SUCCESS; | 143 | return LOGSQL_QUERY_SUCCESS; |
| 134 | } | 144 | } |
| 135 | /* Check to see if the error is "nonexistent table" */ | 145 | /* Check to see if the error is "nonexistent table" */ |
| @@ -138,12 +148,12 @@ static logsql_query_ret log_sql_mysql_query(request_rec *r,logsql_dbconnection * | |||
| 138 | if (real_error == ER_NO_SUCH_TABLE) { | 148 | if (real_error == ER_NO_SUCH_TABLE) { |
| 139 | log_error(APLOG_MARK,APLOG_ERR,0, r->server,"table does not exist, preserving query"); | 149 | log_error(APLOG_MARK,APLOG_ERR,0, r->server,"table does not exist, preserving query"); |
| 140 | /* Restore SIGPIPE to its original handler function */ | 150 | /* Restore SIGPIPE to its original handler function */ |
| 141 | signal(SIGPIPE, handler); | 151 | SIGNAL_RELEASE |
| 142 | return LOGSQL_QUERY_NOTABLE; | 152 | return LOGSQL_QUERY_NOTABLE; |
| 143 | } | 153 | } |
| 144 | 154 | ||
| 145 | /* Restore SIGPIPE to its original handler function */ | 155 | /* Restore SIGPIPE to its original handler function */ |
| 146 | signal(SIGPIPE, handler); | 156 | SIGNAL_RELEASE |
| 147 | return LOGSQL_QUERY_FAIL; | 157 | return LOGSQL_QUERY_FAIL; |
| 148 | } | 158 | } |
| 149 | 159 | ||
| @@ -153,7 +163,7 @@ static logsql_table_ret log_sql_mysql_create(request_rec *r, logsql_dbconnection | |||
| 153 | { | 163 | { |
| 154 | int retval; | 164 | int retval; |
| 155 | const char *tabletype = apr_table_get(db->parms,"tabletype"); | 165 | const char *tabletype = apr_table_get(db->parms,"tabletype"); |
| 156 | void (*handler) (int); | 166 | SIGNAL_VAR |
| 157 | char *type_suffix = NULL; | 167 | char *type_suffix = NULL; |
| 158 | 168 | ||
| 159 | char *create_prefix = "create table if not exists `"; | 169 | char *create_prefix = "create table if not exists `"; |
| @@ -220,16 +230,16 @@ static logsql_table_ret log_sql_mysql_create(request_rec *r, logsql_dbconnection | |||
| 220 | return LOGSQL_QUERY_NOLINK; | 230 | return LOGSQL_QUERY_NOLINK; |
| 221 | } | 231 | } |
| 222 | /* A failed mysql_query() may send a SIGPIPE, so we ignore that signal momentarily. */ | 232 | /* A failed mysql_query() may send a SIGPIPE, so we ignore that signal momentarily. */ |
| 223 | handler = signal(SIGPIPE, SIG_IGN); | 233 | SIGNAL_GRAB |
| 224 | 234 | ||
| 225 | /* Run the create query */ | 235 | /* Run the create query */ |
| 226 | if ((retval = mysql_query(dblink, create_sql))) { | 236 | if ((retval = mysql_query(dblink, create_sql))) { |
| 227 | log_error(APLOG_MARK,APLOG_ERR,0, r->server,"failed to create table: %s", | 237 | log_error(APLOG_MARK,APLOG_ERR,0, r->server,"failed to create table: %s", |
| 228 | table_name); | 238 | table_name); |
| 229 | signal(SIGPIPE, handler); | 239 | SIGNAL_RELEASE |
| 230 | return LOGSQL_TABLE_FAIL; | 240 | return LOGSQL_TABLE_FAIL; |
| 231 | } | 241 | } |
| 232 | signal(SIGPIPE, handler); | 242 | SIGNAL_RELEASE |
| 233 | return LOGSQL_TABLE_SUCCESS; | 243 | return LOGSQL_TABLE_SUCCESS; |
| 234 | } | 244 | } |
| 235 | 245 | ||
diff --git a/winconfig.h b/winconfig.h index 89d1b24..107cb7d 100644 --- a/winconfig.h +++ b/winconfig.h | |||
| @@ -2,16 +2,16 @@ | |||
| 2 | /* config.h.in. Generated from configure.ac by autoheader. */ | 2 | /* config.h.in. Generated from configure.ac by autoheader. */ |
| 3 | 3 | ||
| 4 | /* Define to 1 if you have the <inttypes.h> header file. */ | 4 | /* Define to 1 if you have the <inttypes.h> header file. */ |
| 5 | #define HAVE_INTTYPES_H 1 | 5 | /* #undef HAVE_INTTYPES_H */ |
| 6 | 6 | ||
| 7 | /* Define to 1 if you have the `m' library (-lm). */ | 7 | /* Define to 1 if you have the `m' library (-lm). */ |
| 8 | #define HAVE_LIBM 1 | 8 | /* #undef HAVE_LIBM */ |
| 9 | 9 | ||
| 10 | /* Define to 1 if you have the `mysqlclient' library (-lmysqlclient). */ | 10 | /* Define to 1 if you have the `mysqlclient' library (-lmysqlclient). */ |
| 11 | #define HAVE_LIBMYSQLCLIENT 1 | 11 | #define HAVE_LIBMYSQLCLIENT 1 |
| 12 | 12 | ||
| 13 | /* Define to 1 if you have the `z' library (-lz). */ | 13 | /* Define to 1 if you have the `z' library (-lz). */ |
| 14 | #define HAVE_LIBZ 1 | 14 | /* #undef HAVE_LIBZ */ |
| 15 | 15 | ||
| 16 | /* Define to 1 if you have the <limits.h> header file. */ | 16 | /* Define to 1 if you have the <limits.h> header file. */ |
| 17 | #define HAVE_LIMITS_H 1 | 17 | #define HAVE_LIMITS_H 1 |
| @@ -20,31 +20,31 @@ | |||
| 20 | #define HAVE_MEMORY_H 1 | 20 | #define HAVE_MEMORY_H 1 |
| 21 | 21 | ||
| 22 | /* Define to 1 if you have the <mod_ssl.h> header file. */ | 22 | /* Define to 1 if you have the <mod_ssl.h> header file. */ |
| 23 | #define HAVE_MOD_SSL_H 1 | 23 | /* #undef HAVE_MOD_SSL_H */ |
| 24 | 24 | ||
| 25 | /* Define to 1 if you have the `mysql_real_escape_string' function. */ | 25 | /* Define to 1 if you have the `mysql_real_escape_string' function. */ |
| 26 | #define HAVE_MYSQL_REAL_ESCAPE_STRING 1 | 26 | #define HAVE_MYSQL_REAL_ESCAPE_STRING 1 |
| 27 | 27 | ||
| 28 | /* Define to 1 if you have the <stdint.h> header file. */ | 28 | /* Define to 1 if you have the <stdint.h> header file. */ |
| 29 | #define HAVE_STDINT_H 1 | 29 | /* #undef HAVE_STDINT_H */ |
| 30 | 30 | ||
| 31 | /* Define to 1 if you have the <stdlib.h> header file. */ | 31 | /* Define to 1 if you have the <stdlib.h> header file. */ |
| 32 | #define HAVE_STDLIB_H 1 | 32 | /* #undef HAVE_STDLIB_H 1 |
| 33 | 33 | ||
| 34 | /* Define to 1 if you have the <strings.h> header file. */ | 34 | /* Define to 1 if you have the <strings.h> header file. */ |
| 35 | #define HAVE_STRINGS_H 1 | 35 | /* #undef HAVE_STRINGS_H */ |
| 36 | 36 | ||
| 37 | /* Define to 1 if you have the <string.h> header file. */ | 37 | /* Define to 1 if you have the <string.h> header file. */ |
| 38 | #define HAVE_STRING_H 1 | 38 | /* #undef HAVE_STRING_H */ |
| 39 | 39 | ||
| 40 | /* Define to 1 if you have the <sys/stat.h> header file. */ | 40 | /* Define to 1 if you have the <sys/stat.h> header file. */ |
| 41 | #define HAVE_SYS_STAT_H 1 | 41 | /* #undef HAVE_SYS_STAT_H */ |
| 42 | 42 | ||
| 43 | /* Define to 1 if you have the <sys/types.h> header file. */ | 43 | /* Define to 1 if you have the <sys/types.h> header file. */ |
| 44 | #define HAVE_SYS_TYPES_H 1 | 44 | /* #undef HAVE_SYS_TYPES_H */ |
| 45 | 45 | ||
| 46 | /* Define to 1 if you have the <unistd.h> header file. */ | 46 | /* Define to 1 if you have the <unistd.h> header file. */ |
| 47 | #define HAVE_UNISTD_H 1 | 47 | /* #undef HAVE_UNISTD_H */ |
| 48 | 48 | ||
| 49 | /* Define to the address where bug reports for this package should be sent. */ | 49 | /* Define to the address where bug reports for this package should be sent. */ |
| 50 | #define PACKAGE_BUGREPORT "" | 50 | #define PACKAGE_BUGREPORT "" |
| @@ -65,7 +65,7 @@ | |||
| 65 | /* #undef STDC_HEADERS */ | 65 | /* #undef STDC_HEADERS */ |
| 66 | 66 | ||
| 67 | /* Define if we want to compile in SSL support. */ | 67 | /* Define if we want to compile in SSL support. */ |
| 68 | #define WANT_SSL_LOGGING | 68 | /* #undef WANT_SSL_LOGGING */ |
| 69 | 69 | ||
| 70 | /* Define to 1 if we are compiling with Apache 1.3.x */ | 70 | /* Define to 1 if we are compiling with Apache 1.3.x */ |
| 71 | /* #undef WITH_APACHE13 */ | 71 | /* #undef WITH_APACHE13 */ |
| @@ -75,3 +75,4 @@ | |||
| 75 | 75 | ||
| 76 | /* Define to 1 if we are compiling with mysql */ | 76 | /* Define to 1 if we are compiling with mysql */ |
| 77 | #define WITH_MYSQL 1 | 77 | #define WITH_MYSQL 1 |
| 78 | |||
