BUG/MINOR: listener: Fix a possible null pointer dereference

It seems to be possible to have no frontend for a listener. A test was missing
before dereferencing it at the end of the function listener_accept().

This patch fixes the issue #264. It must be backported to 2.0 and 1.9.
This commit is contained in:
Christopher Faulet 2019-09-10 10:01:26 +02:00
parent 6c00eba63b
commit ad6c2eac28

View File

@ -1065,7 +1065,7 @@ void listener_accept(int fd)
if (!LIST_ISEMPTY(&global_listener_queue))
dequeue_all_listeners(&global_listener_queue);
if (!LIST_ISEMPTY(&p->listener_queue) &&
if (p && !LIST_ISEMPTY(&p->listener_queue) &&
(!p->fe_sps_lim || freq_ctr_remain(&p->fe_sess_per_sec, p->fe_sps_lim, 0) > 0))
dequeue_all_listeners(&p->listener_queue);
}