From dc34d3451ac8dfa742f4b5161b9887b5389e0d90 Mon Sep 17 00:00:00 2001 From: Frederic Marchal Date: Thu, 6 Jun 2013 14:25:24 +0200 Subject: [PATCH] An aliased IP address is not an IP address any more If the user's IP address is aliased, it must not be considered to be an IP address to be resolved by the DNS. --- readlog.c | 7 ++++++- userinfo.c | 4 ++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/readlog.c b/readlog.c index 75bf81b..c070338 100644 --- a/readlog.c +++ b/readlog.c @@ -144,6 +144,7 @@ static void ReadOneLogFile(struct ReadLogDataStruct *Filter,const char *arq) char download_url[MAXLEN]; char smartfilter[MAXLEN]; const char *url; + const char *user; int current_format_idx; int OutputNonZero = REPORT_EVERY_X_LINES ; int idata=0; @@ -527,7 +528,11 @@ static void ReadOneLogFile(struct ReadLogDataStruct *Filter,const char *arq) } } - log_entry.User=process_user(log_entry.User); + user=process_user(log_entry.User); + if (log_entry.User!=user) { + log_entry.User=user; + id_is_ip=false; + } if (log_entry.User[0]=='\0' || (log_entry.User[1]=='\0' && (log_entry.User[0]=='-' || log_entry.User[0]==' ' || log_entry.User[0]==':'))) { excluded_count[ER_NoUser]++; diff --git a/userinfo.c b/userinfo.c index c535cee..e933861 100644 --- a/userinfo.c +++ b/userinfo.c @@ -111,10 +111,10 @@ struct userinfostruct *userinfo_create(const char *userid,const char *ip) } user->label=user->id; //assign a label to avoid a NULL pointer in case none is provided if (ip) { - user->id_is_ip=0; + user->id_is_ip=false; user->ip=StringBuffer_Store(UserStrings,ip); } else { - user->id_is_ip=1; + user->id_is_ip=true; user->ip=user->id; } -- 2.47.2