From 3d6e637963694876a79f265fdc3ce8ae8369a3e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Istv=C3=A1n=20T=C3=93TH?= Date: Tue, 28 Oct 2025 21:21:41 +0100 Subject: [PATCH] support long size user+pass for upstream proxy auth --- src/basicauth.c | 2 +- src/upstream.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/basicauth.c b/src/basicauth.c index ed0553b8..33d964b0 100644 --- a/src/basicauth.c +++ b/src/basicauth.c @@ -35,7 +35,7 @@ ssize_t basicauth_string(const char *user, const char *pass, char *buf, size_t bufsize) { - char tmp[256+2]; + char tmp[bufsize+2]; int l; if (!user || !pass) return -1; l = snprintf(tmp, sizeof tmp, "%s:%s", user, pass); diff --git a/src/upstream.c b/src/upstream.c index 52dad808..c07f810b 100644 --- a/src/upstream.c +++ b/src/upstream.c @@ -78,7 +78,7 @@ static struct upstream *upstream_build (const char *host, int port, char *domain up->host = up->ua.user = up->pass = NULL; if (user) { if (type == PT_HTTP) { - char b[BASE64ENC_BYTES((256+2)-1) + 1]; + char b[BASE64ENC_BYTES((strlen(user)+strlen(pass)+2)-1) + 1]; ssize_t ret; ret = basicauth_string(user, pass, b, sizeof b); if (ret == 0) {