42 lines
1.6 KiB
Plaintext
42 lines
1.6 KiB
Plaintext
$OpenBSD: patch-apache1_mod_security_c,v 1.1 2008/05/09 08:28:34 mbalmer Exp $
|
|
--- apache1/mod_security.c.orig Wed Dec 5 12:04:19 2007
|
|
+++ apache1/mod_security.c Wed Dec 5 12:14:37 2007
|
|
@@ -6121,7 +6121,9 @@ void sec_auditlog_init(modsec_rec *msr) {
|
|
char *uniqueid, *entry_filename, *entry_basename, *text;
|
|
const array_header *arr = NULL;
|
|
table_entry *te = NULL;
|
|
- int i;
|
|
+ char sbuf[NI_MAXSERV];
|
|
+ u_int16_t localport, remoteport;
|
|
+ int error, i;
|
|
|
|
sec_debug_log(r, 4, "sec_auditlog_init: Starting");
|
|
|
|
@@ -6189,9 +6191,24 @@ void sec_auditlog_init(modsec_rec *msr) {
|
|
|
|
/* Format: time transaction_id remote_addr remote_port local_addr local_port */
|
|
|
|
+ error = getnameinfo((struct sockaddr *)&r->connection->remote_addr,
|
|
+ r->connection->remote_addr.ss_len, NULL, 0, sbuf, sizeof(sbuf),
|
|
+ NI_NUMERICSERV);
|
|
+ if (error)
|
|
+ remoteport = 0;
|
|
+ else
|
|
+ remoteport = atol(sbuf);
|
|
+ error = getnameinfo((struct sockaddr *)&r->connection->local_addr,
|
|
+ r->connection->local_addr.ss_len, NULL, 0, sbuf, sizeof(sbuf),
|
|
+ NI_NUMERICSERV);
|
|
+ if (error)
|
|
+ localport = 0;
|
|
+ else
|
|
+ localport = atol(sbuf);
|
|
+
|
|
text = ap_psprintf(r->pool, "[%s] %s %s %i %s %i",
|
|
- current_logtime(r), uniqueid, r->connection->remote_ip, r->connection->remote_addr.sin_port,
|
|
- r->connection->local_ip, r->connection->local_addr.sin_port);
|
|
+ current_logtime(r), uniqueid, r->connection->remote_ip, remoteport,
|
|
+ r->connection->local_ip, localport);
|
|
sec_auditlog_write(msr, text, strlen(text));
|
|
|
|
|