diff options
-rw-r--r-- | Makefile.in | 4 | ||||
-rw-r--r-- | configure.ac | 6 | ||||
-rw-r--r-- | mod_log_sql.c | 48 |
3 files changed, 44 insertions, 14 deletions
diff --git a/Makefile.in b/Makefile.in index e45968b..2789904 100644 --- a/Makefile.in +++ b/Makefile.in | |||
@@ -16,7 +16,7 @@ CFLAGS = -Wc,-Wall -Wc,-Werror -Wc,-fno-strict-aliasing | |||
16 | 16 | ||
17 | INCLUDES = @MYSQL_CFLAGS@ | 17 | INCLUDES = @MYSQL_CFLAGS@ |
18 | 18 | ||
19 | LDADD = @MYSQL_LDFLAGS@ @MYSQL_LIBS@ @RT_LIBS | 19 | LDADD = @MYSQL_LDFLAGS@ @MYSQL_LIBS@ @RT_LIBS@ |
20 | 20 | ||
21 | EXTRA_DIST = AUTHORS INSTALL TODO LICENSE CHANGELOG | 21 | EXTRA_DIST = AUTHORS INSTALL TODO LICENSE CHANGELOG |
22 | 22 | ||
@@ -96,7 +96,7 @@ install: $(TARGETS) install-subdirs | |||
96 | echo "*** Please edit your Apache configuration files and"; \ | 96 | echo "*** Please edit your Apache configuration files and"; \ |
97 | echo "*** add the appropriate LoadModule directives per the documentation"; \ | 97 | echo "*** add the appropriate LoadModule directives per the documentation"; \ |
98 | echo "*** in docs/manual.html"; \ | 98 | echo "*** in docs/manual.html"; \ |
99 | echo "*** If you have previously used 1.18 or lower then update you must change"; \ | 99 | echo "*** If you have previously used 1.18 or lower then you must change"; \ |
100 | echo "*** >LoadModule sql_log_module modules/mod_log_sql.so"; \ | 100 | echo "*** >LoadModule sql_log_module modules/mod_log_sql.so"; \ |
101 | echo "*** to"; \ | 101 | echo "*** to"; \ |
102 | echo "*** >LoadModule log_sql_module modules/mod_log_sql.so"; \ | 102 | echo "*** >LoadModule log_sql_module modules/mod_log_sql.so"; \ |
diff --git a/configure.ac b/configure.ac index bf8ba6e..c93d224 100644 --- a/configure.ac +++ b/configure.ac | |||
@@ -33,15 +33,15 @@ AC_SUBST(WANT_SSL_MOD) | |||
33 | case "$target" in | 33 | case "$target" in |
34 | *-*-solaris* | *-*-osf* ) | 34 | *-*-solaris* | *-*-osf* ) |
35 | if test $APACHE_VERSION -eq 1.3; then | 35 | if test $APACHE_VERSION -eq 1.3; then |
36 | RTLIBS=-lrt | 36 | RT_LIBS=-lrt |
37 | fi | 37 | fi |
38 | ;; | 38 | ;; |
39 | *) | 39 | *) |
40 | RTLIBS="" | 40 | RT_LIBS="" |
41 | ;; | 41 | ;; |
42 | esac | 42 | esac |
43 | 43 | ||
44 | AC_SUBST(RTLIBS) | 44 | AC_SUBST(RT_LIBS) |
45 | 45 | ||
46 | AC_CHECK_HEADERS(limits.h) | 46 | AC_CHECK_HEADERS(limits.h) |
47 | 47 | ||
diff --git a/mod_log_sql.c b/mod_log_sql.c index 666ac46..a247f30 100644 --- a/mod_log_sql.c +++ b/mod_log_sql.c | |||
@@ -312,14 +312,44 @@ static const char *set_dbparam_slot(cmd_parms *cmd, | |||
312 | static const char *set_log_sql_info(cmd_parms *cmd, void *dummy, | 312 | static const char *set_log_sql_info(cmd_parms *cmd, void *dummy, |
313 | const char *host, const char *user, const char *pwd) | 313 | const char *host, const char *user, const char *pwd) |
314 | { | 314 | { |
315 | if (*host != '.') { | 315 | ap_log_error(APLOG_MARK, APLOG_DEBUG, 0, cmd->server, |
316 | set_dbparam(cmd, NULL, "host", host); | 316 | "%s - %s - %s", host, user, pwd); |
317 | } | 317 | if (!user) { /* user is null, so only one arg passed */ |
318 | if (*user != '.') { | 318 | apr_uri_t uri; |
319 | set_dbparam(cmd, NULL, "user", user); | 319 | apr_uri_parse(cmd->pool, host, &uri); |
320 | } | 320 | if (uri.scheme) { |
321 | if (*pwd != '.') { | 321 | /* set DB plugin */ |
322 | set_dbparam(cmd, NULL, "passwd", pwd); | 322 | } |
323 | if (uri.hostname) { | ||
324 | set_dbparam(cmd, NULL, "host", uri.hostname); | ||
325 | } | ||
326 | if (uri.user) { | ||
327 | set_dbparam(cmd, NULL, "user", uri.user); | ||
328 | } | ||
329 | if (uri.password) { | ||
330 | set_dbparam(cmd, NULL, "passwd", uri.password); | ||
331 | } | ||
332 | if (uri.port_str) { | ||
333 | set_dbparam(cmd, NULL, "tcpport", uri.port_str); | ||
334 | } | ||
335 | if (uri.path) { | ||
336 | /* extract Database name */ | ||
337 | char *off = strchr(++uri.path,'/'); | ||
338 | if (off) | ||
339 | *off='\0'; | ||
340 | set_dbparam(cmd, NULL, "database", uri.path); | ||
341 | |||
342 | } | ||
343 | } else { | ||
344 | if (*host != '.') { | ||
345 | set_dbparam(cmd, NULL, "host", host); | ||
346 | } | ||
347 | if (*user != '.') { | ||
348 | set_dbparam(cmd, NULL, "user", user); | ||
349 | } | ||
350 | if (*pwd != '.') { | ||
351 | set_dbparam(cmd, NULL, "passwd", pwd); | ||
352 | } | ||
323 | } | 353 | } |
324 | return NULL; | 354 | return NULL; |
325 | } | 355 | } |
@@ -1048,7 +1078,7 @@ static const command_rec log_sql_cmds[] = { | |||
1048 | (void *)APR_OFFSETOF(global_config_t, createtables), RSRC_CONF, | 1078 | (void *)APR_OFFSETOF(global_config_t, createtables), RSRC_CONF, |
1049 | "Turn on module's capability to create its SQL tables on the fly") | 1079 | "Turn on module's capability to create its SQL tables on the fly") |
1050 | , | 1080 | , |
1051 | AP_INIT_TAKE3("LogSQLLoginInfo", set_log_sql_info, NULL, RSRC_CONF, | 1081 | AP_INIT_TAKE13("LogSQLLoginInfo", set_log_sql_info, NULL, RSRC_CONF, |
1052 | "The database host, user-id and password for logging") | 1082 | "The database host, user-id and password for logging") |
1053 | , | 1083 | , |
1054 | AP_INIT_TAKE2("LogSQLDBParam", set_dbparam, NULL, RSRC_CONF, | 1084 | AP_INIT_TAKE2("LogSQLDBParam", set_dbparam, NULL, RSRC_CONF, |