From 93cc83e7face7a2d85cc577a0f83034d3b9cfde5 Mon Sep 17 00:00:00 2001 From: Amos Jeffries Date: Sat, 13 Feb 2016 05:24:48 +1300 Subject: [PATCH] Fix %un logging external ACL username --- src/format/Format.cc | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) 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); -- 2.47.2