Libevent is an event notification library. Prior to 2.2.2-alpha, libevent can dereference invalid list pointers in ws.c when evwsnewsession enters its error path after evhttpstartws_ succeeds but buffereventenablelocking_ fails. evwsconnectionfree sees a non-null httpserver and unconditionally calls TAILQREMOVE even though the session was never inserted into httpserver->wssessions. A local caller able to induce this allocation or locking failure can crash the process. This issue is fixed in version 2.2.2-alpha.