xref: /aosp_15_r20/external/cronet/third_party/libevent/README.chromium (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1Name: libevent
2URL: http://libevent.org/
3Version: 1.4.15
4License: BSD
5License File: LICENSE
6Security Critical: yes
7Shipped: yes
8CPEPrefix: cpe:/a:libevent_project:libevent
9
10Local Modifications:
11Rather than use libevent's own build system, we just build a Chrome
12static library using GYP.
13
141) Run configure and "make event-config.h" on Linux, FreeBSD, Solaris,
15   and Mac and copy config.h and event-config.h to linux/, freebsd/,
16   solaris/, and mac/ respectively.
172) Add BUILD.gn
183) chromium.patch is applied to make the following changes:
19   - Allow libevent to be used without being installed by changing <...>
20     #includes to "...".
21   - Fix a race condition in event_del.
22   - Optimistically assume CLOCK_MONOTONIC is available and fallback if it
23     fails, rather than explicitly testing for it.
24   - Remove an unneeded variable that causes a -Werror build failure.
25   - Add an #ifndef to fix a preprocessor redefined -Werror build failure.
26   - Revert the patch from http://sourceforge.net/p/levent/bugs/223/ that
27     introduces use-after-free memory corruption when an event callback frees
28     the struct event memory.
29   - Remove deprecated global variables, event_sigcb and event_gotsig
30     (essentially unused) that trigger tsan errors. (crbug/605894)
314) The directories WIN32-Code and WIN32-Prj are not included.
325) The configs for android were copied from Linux's which were very close to
33   android one with the exception of HAVE_FD_MASK and HAVE_STRLCPY.
346) Remove an unnecessary workaround for OS X 10.4 from kqueue.c. It was causing
35   problems on macOS Sierra.
367) Change _event_strlcpy in strlcpy.c to not use K&R syntax.
378) Deleted the following unused sources:
38     buffer.c
39     evbuffer.c
40     evdns.c
41     evdns.h
42     event_tagging.c
43     evhttp.h
44     evrpc-internal.h
45     evrpc.c
46     evrpc.h
47     http-internal.h
48     http.c
499) Deleted all references to evbuffer and evtag symbols in event.h
50
51