commit 444b8f5b32d0263f1a20e18eb3044bfeed334361
parent ed8b7e8954d302f73907f1cc302d124443f947aa
Author: Hiltjo Posthuma <hiltjo@codemadness.org>
Date: Mon, 5 Mar 2018 01:12:09 +0100
http_send_response: fix undefined behaviour for copying the target string
... the format string and buffer were the same (undefined behaviour).
Diffstat:
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/http.c b/http.c
@@ -346,10 +346,11 @@ http_send_response(int fd, struct request *r)
/* if we have a vhost prefix, prepend it to the target */
if (s.vhost[i].prefix) {
- if (esnprintf(realtarget, sizeof(realtarget), "%s%s",
+ if (esnprintf(tmptarget, sizeof(tmptarget), "%s%s",
s.vhost[i].prefix, realtarget)) {
return http_send_status(fd, S_REQUEST_TOO_LARGE);
}
+ memcpy(realtarget, tmptarget, sizeof(realtarget));
}
}