From: Amos Jeffries Date: Fri, 12 Feb 2016 16:24:48 +0000 (+1300) Subject: Fix %un logging external ACL username X-Git-Tag: SQUID_4_0_6~8 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=93cc83e7face7a2d85cc577a0f83034d3b9cfde5;p=thirdparty%2Fsquid.git Fix %un logging external ACL username --- diff --git a/src/format/Format.cc b/src/format/Format.cc index aa9b837922..80bd029e2f 100644 --- a/src/format/Format.cc +++ b/src/format/Format.cc @@ -856,8 +856,14 @@ Format::Format::assemble(MemBuf &mb, const AccessLogEntry::Pointer &al, int logS if (al->request && al->request->auth_user_request != NULL) out = strOrNull(al->request->auth_user_request->username()); #endif + if (!out && al->request && al->request->extacl_user.size()) { + if (const char *t = al->request->extacl_user.termedBuf()) + out = t; + } + if (!out) out = strOrNull(al->cache.extuser); + #if USE_OPENSSL if (!out) out = strOrNull(al->cache.ssluser); @@ -878,8 +884,10 @@ Format::Format::assemble(MemBuf &mb, const AccessLogEntry::Pointer &al, int logS break; case LFT_USER_EXTERNAL: - if (al->request && al->request->extacl_user.size()) - out = al->request->extacl_user.termedBuf(); + if (al->request && al->request->extacl_user.size()) { + if (const char *t = al->request->extacl_user.termedBuf()) + out = t; + } if (!out) out = strOrNull(al->cache.extuser);