]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
BUG/MEDIUM: listeners: Don't call fd_stop_recv() if fd_updt is NULL.
authorOlivier Houchard <ohouchard@haproxy.com>
Fri, 8 Mar 2019 14:35:42 +0000 (15:35 +0100)
committerOlivier Houchard <cognet@ci0.org>
Fri, 8 Mar 2019 15:05:31 +0000 (16:05 +0100)
In do_unbind_listener, don't bother calling fd_stop_recv() if fd_updt is
NULL. It means it has already been free'd, and it would crash.

src/listener.c

index 037668f83a7c400a48c55e9b94bf31d17b562b10..8897c789000f80a0d208bf6880d016aa064839a4 100644 (file)
@@ -449,7 +449,7 @@ void dequeue_all_listeners(struct list *list)
  */
 void do_unbind_listener(struct listener *listener, int do_close)
 {
-       if (listener->state == LI_READY)
+       if (listener->state == LI_READY && fd_updt)
                fd_stop_recv(listener->fd);
 
        LIST_DEL_LOCKED(&listener->wait_queue);