BUG/MEDIUM: http: the "unique-id" sample fetch could crash without a steeam
Since commit 5f940703b3 ("MINOR: log: Don't depends on a stream to process
samples in log-format string") it has become quite obvious that a few sample
fetch functions and converters were still heavily dependent on the presence
of a stream without testing for it.
The unique-id sample fetch function, if called without a stream, will result
in a crash.
This fix adds a check for the stream's existence, and should be backported
to all stable versions up to 1.7.
diff --git a/src/http_fetch.c b/src/http_fetch.c
index 11c1c5a..765c445 100644
--- a/src/http_fetch.c
+++ b/src/http_fetch.c
@@ -414,6 +414,9 @@
if (LIST_ISEMPTY(&smp->sess->fe->format_unique_id))
return 0;
+ if (!smp->strm)
+ return 0;
+
unique_id = stream_generate_unique_id(smp->strm, &smp->sess->fe->format_unique_id);
if (!isttest(unique_id))
return 0;