From b6c0306cecae198d7161b47eaa34e80d87812b17 Mon Sep 17 00:00:00 2001 From: Yann Ylavic Date: Fri, 22 Apr 2022 12:14:01 +0000 Subject: ab: apr_base64_encode already NUL-terminate the output. And returns the length including the trailing \0, so setting it at that length is off by +1. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1900152 13f79535-47bb-0310-9956-ffa450edef68 --- support/ab.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) (limited to 'support') diff --git a/support/ab.c b/support/ab.c index b9c055eec2..d7b6938849 100644 --- a/support/ab.c +++ b/support/ab.c @@ -2413,7 +2413,6 @@ static apr_status_t open_postfile(const char *pfile) /* sort out command-line args and call test */ int main(int argc, const char * const argv[]) { - int l; char tmp[1024]; apr_status_t status; apr_getopt_t *opt; @@ -2563,8 +2562,7 @@ int main(int argc, const char * const argv[]) if (apr_base64_encode_len(strlen(opt_arg)) > sizeof(tmp)) { err("Authentication credentials too long\n"); } - l = apr_base64_encode(tmp, opt_arg, strlen(opt_arg)); - tmp[l] = '\0'; + apr_base64_encode(tmp, opt_arg, strlen(opt_arg)); auth = apr_pstrcat(cntxt, auth, "Authorization: Basic ", tmp, "\r\n", NULL); @@ -2578,8 +2576,7 @@ int main(int argc, const char * const argv[]) if (apr_base64_encode_len(strlen(opt_arg)) > sizeof(tmp)) { err("Proxy credentials too long\n"); } - l = apr_base64_encode(tmp, opt_arg, strlen(opt_arg)); - tmp[l] = '\0'; + apr_base64_encode(tmp, opt_arg, strlen(opt_arg)); auth = apr_pstrcat(cntxt, auth, "Proxy-Authorization: Basic ", tmp, "\r\n", NULL); -- cgit v1.2.3