diff -r 59dd1fb27639 -r f1469e3144a7 src/server/safs/addlog.c --- a/src/server/safs/addlog.c Sun Dec 07 20:16:02 2025 +0100 +++ b/src/server/safs/addlog.c Sun Dec 14 20:37:11 2025 +0100 @@ -28,6 +28,7 @@ #include #include +#include #include "addlog.h" @@ -35,6 +36,7 @@ #include "../daemon/vserver.h" #include "../daemon/log.h" #include "../util/util.h" +#include "../util/io.h" int common_log(pblock *pb, Session *sn, Request *rq) { NSAPIRequest *request = (NSAPIRequest*)rq; @@ -59,7 +61,7 @@ // hack to get the content length // http_start_response should not modify the header names - char *len = pblock_findval("Content-length", rq->srvhdrs); + int64_t len = httpstream_written(sn->csd); if(!ip) { ip = "-"; @@ -67,9 +69,6 @@ if(!user) { user = "-"; } - if(!len) { - len = "0"; - } // remove trailing line feed cxstring tmstr = cx_str(time); @@ -92,13 +91,13 @@ } fprintf( log->log->file, - "%s - %s [%.*s] \"%s\" %d %s %.*s%s%.*s %.*s%s%.*s\n", + "%s - %s [%.*s] \"%s\" %d %" PRId64 " %.*s%s%.*s %.*s%s%.*s\n", ip, user, (int)tmstr.length, tmstr.ptr, req, - rq->status_num, + (int)rq->status_num, len, refq, "\"", @@ -114,7 +113,7 @@ } else { fprintf( log->log->file, - "%s - %s [%.*s] \"%s\" %d %s\n", + "%s - %s [%.*s] \"%s\" %d %" PRId64 "\n", ip, user, (int)tmstr.length,