commit 38978fc61e39a54dc2f9e25e2a3222b5dd5fa4b6 from: rsadowski date: Fri Jan 2 08:45:16 2026 UTC fix scan-build dead stores findings - httpd.c:533 – q assigned but immediately overwritten in the loop - server.c:891 – inrd/inwr assigned, then reassigned, never actually needed - server_fcgi.c:678,690 – kv result unused OK stsp@ commit - 6e77fedee83d3eef0426acdc4504910f97cf4b48 commit + 38978fc61e39a54dc2f9e25e2a3222b5dd5fa4b6 blob - ab78dd9d1d1e1cf0212ac7877e018d79dd9c8ab9 blob + c2d74de03fe996c0fd88595e7e254257fe00bb2e --- httpd.c +++ httpd.c @@ -1,4 +1,4 @@ -/* $OpenBSD: httpd.c,v 1.75 2025/11/12 11:24:04 deraadt Exp $ */ +/* $OpenBSD: httpd.c,v 1.76 2026/01/02 08:45:16 rsadowski Exp $ */ /* * Copyright (c) 2014 Reyk Floeter @@ -530,7 +530,7 @@ expand_string(char *label, size_t len, const char *src log_debug("%s: calloc", __func__); return (-1); } - p = q = label; + p = label; while ((q = strstr(p, srch)) != NULL) { *q = '\0'; if ((strlcat(tmp, p, len) >= len) || blob - 5d5063b64805bbcbb0214835f0ff7df12be4968d blob + a38cf018d81ae53a0cf34f00e8e152ddd50b2ba7 --- server.c +++ server.c @@ -1,4 +1,4 @@ -/* $OpenBSD: server.c,v 1.129 2023/11/08 19:19:10 millert Exp $ */ +/* $OpenBSD: server.c,v 1.130 2026/01/02 08:45:16 rsadowski Exp $ */ /* * Copyright (c) 2006 - 2015 Reyk Floeter @@ -887,8 +887,6 @@ void server_input(struct client *clt) { struct server_config *srv_conf = clt->clt_srv_conf; - evbuffercb inrd = server_read; - evbuffercb inwr = server_write; socklen_t slen; if (server_httpdesc_init(clt) == -1) { @@ -897,7 +895,6 @@ server_input(struct client *clt) } clt->clt_toread = TOREAD_HTTP_HEADER; - inrd = server_read_http; slen = sizeof(clt->clt_sndbufsiz); if (getsockopt(clt->clt_s, SOL_SOCKET, SO_SNDBUF, @@ -909,8 +906,8 @@ server_input(struct client *clt) /* * Client <-> Server */ - clt->clt_bev = bufferevent_new(clt->clt_s, inrd, inwr, - server_error, clt); + clt->clt_bev = bufferevent_new(clt->clt_s, server_read_http, + server_write, server_error, clt); if (clt->clt_bev == NULL) { server_close(clt, "failed to allocate input buffer event"); return; blob - f3c01a459b08fdaba7be5db1ec4b9ec3cdf68862 blob + c5f9917204c71c0a04b770782a1d38d247dbaad6 --- server_fcgi.c +++ server_fcgi.c @@ -1,4 +1,4 @@ -/* $OpenBSD: server_fcgi.c,v 1.98 2025/11/28 16:10:00 rsadowski Exp $ */ +/* $OpenBSD: server_fcgi.c,v 1.99 2026/01/02 08:45:16 rsadowski Exp $ */ /* * Copyright (c) 2014 Florian Obser @@ -645,7 +645,7 @@ server_fcgi_header(struct client *clt, unsigned int co struct http_descriptor *resp = clt->clt_descresp; const char *error; char tmbuf[32]; - struct kv *kv, *cl, key; + struct kv *cl, key; clt->clt_fcgi.headerssent = 1; @@ -675,7 +675,7 @@ server_fcgi_header(struct client *clt, unsigned int co /* But then we need a Content-Length unless method is HEAD... */ if (desc->http_method != HTTP_METHOD_HEAD) { key.kv_key = "Content-Length"; - if ((kv = kv_find(&resp->http_headers, &key)) == NULL) { + if (kv_find(&resp->http_headers, &key) == NULL) { if (kv_add(&resp->http_headers, "Content-Length", "0") == NULL) return (-1); @@ -687,7 +687,7 @@ server_fcgi_header(struct client *clt, unsigned int co if (clt->clt_fcgi.chunked) { /* but only if no Content-Length header is supplied */ key.kv_key = "Content-Length"; - if ((kv = kv_find(&resp->http_headers, &key)) != NULL) { + if (kv_find(&resp->http_headers, &key) != NULL) { clt->clt_fcgi.chunked = 0; } else { /*