26 lines
948 B
Diff
26 lines
948 B
Diff
From f98c250300bd7303bb7b706384ec153101a3eab0 Mon Sep 17 00:00:00 2001
|
|
From: Martin Blix Grydeland <martin@varnish-software.com>
|
|
Date: Thu, 15 Aug 2019 10:44:00 +0200
|
|
Subject: [PATCH] Allow a NULL value in http_Proto
|
|
|
|
The proto field is optional in HTTP, so it may not be set. Set the proto
|
|
to 0 also for a NULL value instead of segfaulting if it were NULL.
|
|
---
|
|
bin/varnishd/cache/cache_http.c | 3 ++-
|
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/bin/varnishd/cache/cache_http.c b/bin/varnishd/cache/cache_http.c
|
|
index 23eaa0b183..070ead2e6b 100644
|
|
--- a/bin/varnishd/cache/cache_http.c
|
|
+++ b/bin/varnishd/cache/cache_http.c
|
|
@@ -212,7 +212,8 @@ http_Proto(struct http *to)
|
|
|
|
fm = to->hd[HTTP_HDR_PROTO].b;
|
|
|
|
- if ((fm[0] == 'H' || fm[0] == 'h') &&
|
|
+ if (fm != NULL &&
|
|
+ (fm[0] == 'H' || fm[0] == 'h') &&
|
|
(fm[1] == 'T' || fm[1] == 't') &&
|
|
(fm[2] == 'T' || fm[2] == 't') &&
|
|
(fm[3] == 'P' || fm[3] == 'p') &&
|