diff --git a/.gitmodules b/.gitmodules index e23eab0d9d..86f89e64e9 100644 --- a/.gitmodules +++ b/.gitmodules @@ -8,9 +8,8 @@ branch = post-1.2.1-transmission [submodule "third-party/libevent"] path = third-party/libevent - # Windows/Android build fixes (libevent/libevent#1813 and libevent/libevent#1817) - url = https://github.com/coeur/libevent.git - branch = master + url = https://github.com/transmission/libevent.git + branch = post-2.1.12-transmission [submodule "third-party/libnatpmp"] path = third-party/libnatpmp url = https://github.com/transmission/libnatpmp.git diff --git a/Transmission.xcodeproj/project.pbxproj b/Transmission.xcodeproj/project.pbxproj index 9406b81cde..c37fe51833 100644 --- a/Transmission.xcodeproj/project.pbxproj +++ b/Transmission.xcodeproj/project.pbxproj @@ -433,8 +433,6 @@ C8B27BA328153F6300A22B5D /* create.cc in Sources */ = {isa = PBXBuildFile; fileRef = C887BEC02807FCE900867D3C /* create.cc */; }; C8B27BA428153F6600A22B5D /* edit.cc in Sources */ = {isa = PBXBuildFile; fileRef = C887BEC22807FCE900867D3C /* edit.cc */; }; C8B27BA528153F6900A22B5D /* show.cc in Sources */ = {isa = PBXBuildFile; fileRef = C887BEC32807FCE900867D3C /* show.cc */; }; - C8C3508D2DEB812400E94512 /* ws.c in Sources */ = {isa = PBXBuildFile; fileRef = C8C3508C2DEB812400E94512 /* ws.c */; }; - C8C3508F2DEB817F00E94512 /* sha1.c in Sources */ = {isa = PBXBuildFile; fileRef = C8C3508E2DEB817F00E94512 /* sha1.c */; }; C8ED0FB1281C10F100B44472 /* addr_is_reserved.c in Sources */ = {isa = PBXBuildFile; fileRef = C8ED0FAF281C10F100B44472 /* addr_is_reserved.c */; }; C8ED0FB2281C10F100B44472 /* addr_is_reserved.h in Headers */ = {isa = PBXBuildFile; fileRef = C8ED0FB0281C10F100B44472 /* addr_is_reserved.h */; }; CAB35C64252F6F5E00552A55 /* mime-types.h in Headers */ = {isa = PBXBuildFile; fileRef = CAB35C62252F6F5E00552A55 /* mime-types.h */; }; @@ -1406,8 +1404,6 @@ C8B27B7F28153F2B00A22B5D /* transmission-create */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = "transmission-create"; sourceTree = BUILT_PRODUCTS_DIR; }; C8B27B9028153F3100A22B5D /* transmission-edit */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = "transmission-edit"; sourceTree = BUILT_PRODUCTS_DIR; }; C8B27BA128153F3400A22B5D /* transmission-show */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = "transmission-show"; sourceTree = BUILT_PRODUCTS_DIR; }; - C8C3508C2DEB812400E94512 /* ws.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = ws.c; sourceTree = ""; }; - C8C3508E2DEB817F00E94512 /* sha1.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sha1.c; sourceTree = ""; }; C8ED0FAF281C10F100B44472 /* addr_is_reserved.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = addr_is_reserved.c; sourceTree = ""; }; C8ED0FB0281C10F100B44472 /* addr_is_reserved.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = addr_is_reserved.h; sourceTree = ""; }; CAB35C62252F6F5E00552A55 /* mime-types.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.h; fileEncoding = 4; path = "mime-types.h"; sourceTree = ""; }; @@ -2262,9 +2258,7 @@ A2074FC612BEABC800F70985 /* log.c */, A207503612BEADA200F70985 /* poll.c */, A207503412BEAD9C00F70985 /* select.c */, - C8C3508E2DEB817F00E94512 /* sha1.c */, A2074FDD12BEAC5000F70985 /* signal.c */, - C8C3508C2DEB812400E94512 /* ws.c */, ); name = libevent; path = "third-party/libevent"; @@ -3685,8 +3679,6 @@ A2074F5B12BEA8E000F70985 /* bufferevent_pair.c in Sources */, A2074F5D12BEA8E000F70985 /* bufferevent_sock.c in Sources */, A2074F5E12BEA8E000F70985 /* bufferevent.c in Sources */, - C8C3508D2DEB812400E94512 /* ws.c in Sources */, - C8C3508F2DEB817F00E94512 /* sha1.c in Sources */, A2074F7412BEAA3300F70985 /* event.c in Sources */, A2074F8512BEAA6600F70985 /* evmap.c in Sources */, A2074F9912BEAAAF00F70985 /* evthread.c in Sources */, @@ -4317,14 +4309,8 @@ GCC_WARN_64_TO_32_BIT_CONVERSION = NO; GCC_WARN_UNUSED_FUNCTION = NO; GENERATE_MASTER_OBJECT_FILE = YES; - HEADER_SEARCH_PATHS = ( - "third-party/libevent/include", - "third-party/libevent/compat", - ); - OTHER_CFLAGS = ( - "-DHAVE_CONFIG_H", - "-DLITTLE_ENDIAN", - ); + HEADER_SEARCH_PATHS = "third-party/libevent/include"; + OTHER_CFLAGS = "-DHAVE_CONFIG_H"; PRODUCT_NAME = event; }; name = Debug; @@ -5000,14 +4986,8 @@ GCC_WARN_64_TO_32_BIT_CONVERSION = NO; GCC_WARN_UNUSED_FUNCTION = NO; GENERATE_MASTER_OBJECT_FILE = YES; - HEADER_SEARCH_PATHS = ( - "third-party/libevent/include", - "third-party/libevent/compat", - ); - OTHER_CFLAGS = ( - "-DHAVE_CONFIG_H", - "-DLITTLE_ENDIAN", - ); + HEADER_SEARCH_PATHS = "third-party/libevent/include"; + OTHER_CFLAGS = "-DHAVE_CONFIG_H"; PRODUCT_NAME = event; }; name = "Release - Debug"; @@ -5160,14 +5140,8 @@ GCC_WARN_64_TO_32_BIT_CONVERSION = NO; GCC_WARN_UNUSED_FUNCTION = NO; GENERATE_MASTER_OBJECT_FILE = YES; - HEADER_SEARCH_PATHS = ( - "third-party/libevent/include", - "third-party/libevent/compat", - ); - OTHER_CFLAGS = ( - "-DHAVE_CONFIG_H", - "-DLITTLE_ENDIAN", - ); + HEADER_SEARCH_PATHS = "third-party/libevent/include"; + OTHER_CFLAGS = "-DHAVE_CONFIG_H"; PRODUCT_NAME = event; }; name = Release; diff --git a/third-party/libevent b/third-party/libevent index f80095019a..5bbf2aafe4 160000 --- a/third-party/libevent +++ b/third-party/libevent @@ -1 +1 @@ -Subproject commit f80095019aacdb6a776d9d5deab0a68e3cdda9ac +Subproject commit 5bbf2aafe441c8f1f76e141e2ebd48e7ddb2d525 diff --git a/third-party/macosx-libevent-event-config.h b/third-party/macosx-libevent-event-config.h index 15ed23a523..89e33e7edc 100644 --- a/third-party/macosx-libevent-event-config.h +++ b/third-party/macosx-libevent-event-config.h @@ -10,15 +10,15 @@ #define EVENT2_EVENT_CONFIG_H_INCLUDED_ /* Numeric representation of the version */ -#define EVENT__NUMERIC_VERSION 0x02020100 -#define EVENT__PACKAGE_VERSION "2.2.1" +#define EVENT__NUMERIC_VERSION 0x02010c00 +#define EVENT__PACKAGE_VERSION "2.1.12" #define EVENT__VERSION_MAJOR 2 -#define EVENT__VERSION_MINOR 2 -#define EVENT__VERSION_PATCH 1 +#define EVENT__VERSION_MINOR 1 +#define EVENT__VERSION_PATCH 12 /* Version number of package */ -#define EVENT__VERSION "2.2.1-alpha-dev" +#define EVENT__VERSION "2.1.12-stable" /* Name of package */ #define EVENT__PACKAGE "libevent" @@ -53,14 +53,25 @@ /* Define to 1 if you have the `arc4random_buf' function. */ #define EVENT__HAVE_ARC4RANDOM_BUF 1 -/* Define to 1 if you have the `arc4random_stir' function. */ -#define EVENT__HAVE_ARC4RANDOM_STIR 1 +/* Define to 1 if you have the `arc4random_addrandom' function. */ +/* NOTE(nevack): this defines `evutil_secure_rng_add_bytes` function which + uses deprecated on macOS arc4random_addrandom(2). + Transmission on macOS never calls `evutil_secure_rng_add_bytes`, that's + why we remove this define to get rid of compiler warning. */ +/* #undef EVENT__HAVE_ARC4RANDOM_ADDRANDOM */ + +/* Define if clock_gettime is available in libc */ +/* #undef EVENT__DNS_USE_CPU_CLOCK_FOR_ID */ + +/* Define is no secure id variant is available */ +/* #undef EVENT__DNS_USE_GETTIMEOFDAY_FOR_ID */ +/* #undef EVENT__DNS_USE_FTIME_FOR_ID */ /* Define to 1 if you have the header file. */ #define EVENT__HAVE_ARPA_INET_H 1 /* Define to 1 if you have the `clock_gettime' function. */ -#define EVENT__HAVE_CLOCK_GETTIME 1 +/* #undef EVENT__HAVE_CLOCK_GETTIME */ /* Define to 1 if you have the declaration of `CTL_KERN'. */ #define EVENT__HAVE_DECL_CTL_KERN 1 @@ -80,17 +91,20 @@ /* Define to 1 if fd_mask type is defined */ #define EVENT__HAVE_FD_MASK 1 +/* Define to 1 if the header file defines TAILQ_FOREACH. */ +#define EVENT__HAVE_TAILQFOREACH 1 + +/* Define to 1 if you have the header file. */ +#define EVENT__HAVE_DLFCN_H 1 + /* Define if your system supports the epoll system calls */ /* #undef EVENT__HAVE_EPOLL */ /* Define to 1 if you have the `epoll_create1' function. */ /* #undef EVENT__HAVE_EPOLL_CREATE1 */ -/* Define to 1 if you have the `epoll_pwait2' function. */ -/* #undef EVENT__HAVE_EPOLL_PWAIT2 */ - -/* Define if your system supports the wepoll module */ -/* #undef EVENT__HAVE_WEPOLL */ +/* Define to 1 if you have the `epoll_ctl' function. */ +/* #undef EVENT__HAVE_EPOLL_CTL */ /* Define to 1 if you have the `eventfd' function. */ /* #undef EVENT__HAVE_EVENTFD */ @@ -171,12 +185,12 @@ /* Define to 1 if you have the header file. */ #define EVENT__HAVE_MACH_MACH_H 1 +/* Define to 1 if you have the header file. */ +#define EVENT__HAVE_MEMORY_H 1 + /* Define to 1 if you have the `mmap' function. */ #define EVENT__HAVE_MMAP 1 -/* Define to 1 if you have the `mmap64' function. */ -/* #undef EVENT__HAVE_MMAP64 */ - /* Define to 1 if you have the `nanosleep' function. */ #define EVENT__HAVE_NANOSLEEP 1 @@ -201,9 +215,6 @@ /* Define if the system has openssl */ /* #undef EVENT__HAVE_OPENSSL */ -/* Define if the system has mbedtls */ -/* #undef EVENT__HAVE_MBEDTLS */ - /* Define to 1 if you have the `pipe' function. */ #define EVENT__HAVE_PIPE 1 @@ -213,12 +224,18 @@ /* Define to 1 if you have the `poll' function. */ #define EVENT__HAVE_POLL 1 +/* Define to 1 if you have the header file. */ +#define EVENT__HAVE_POLL_H 1 + +/* Define to 1 if you have the `port_create' function. */ +/* #undef EVENT__HAVE_PORT_CREATE */ + +/* Define to 1 if you have the header file. */ +/* #undef EVENT__HAVE_PORT_H */ + /* Define if we have pthreads on this system */ #define EVENT__HAVE_PTHREADS 1 -/* Define to 1 if you have the `pthread_mutexattr_setprotocol' function. */ -#define EVENT__HAVE_PTHREAD_MUTEXATTR_SETPROTOCOL 1 - /* Define to 1 if you have the `putenv' function. */ #define EVENT__HAVE_PUTENV 1 @@ -240,17 +257,14 @@ /* Define to 1 if you have the `sendfile' function. */ #define EVENT__HAVE_SENDFILE 1 -/* Define to 1 if you have the `pread' function. */ -#define EVENT__HAVE_PREAD 1 - /* Define to 1 if you have the `sigaction' function. */ #define EVENT__HAVE_SIGACTION 1 -/* Define to 1 if you have the `socketpair` function. */ -#define EVENT__HAVE_SOCKETPAIR 1 +/* Define to 1 if you have the `signal' function. */ +#define EVENT__HAVE_SIGNAL 1 -/* Define to 1 if you have the `strsignal' function. */ -#define EVENT__HAVE_STRSIGNAL 1 +/* Define to 1 if you have the `splice' function. */ +/* #undef EVENT__HAVE_SPLICE */ /* Define to 1 if you have the header file. */ #define EVENT__HAVE_STDARG_H 1 @@ -264,6 +278,9 @@ /* Define to 1 if you have the header file. */ #define EVENT__HAVE_STDLIB_H 1 +/* Define to 1 if you have the header file. */ +#define EVENT__HAVE_STRING_H 1 + /* Define to 1 if you have the `strlcpy' function. */ #define EVENT__HAVE_STRLCPY 1 @@ -288,6 +305,12 @@ /* Define to 1 if the system has the type `struct in6_addr'. */ #define EVENT__HAVE_STRUCT_IN6_ADDR 1 +/* Define to 1 if `s6_addr16' is member of `struct in6_addr'. */ +/* #undef EVENT__HAVE_STRUCT_IN6_ADDR_S6_ADDR16 */ + +/* Define to 1 if `s6_addr32' is member of `struct in6_addr'. */ +/* #undef EVENT__HAVE_STRUCT_IN6_ADDR_S6_ADDR32 */ + /* Define to 1 if the system has the type `struct sockaddr_in6'. */ #define EVENT__HAVE_STRUCT_SOCKADDR_IN6 1 @@ -315,9 +338,15 @@ /* Define to 1 if you have the `sysctl' function. */ #define EVENT__HAVE_SYSCTL 1 +/* Define to 1 if you have the header file. */ +/* #undef EVENT__HAVE_SYS_EPOLL_H */ + /* Define to 1 if you have the header file. */ /* #undef EVENT__HAVE_SYS_EVENTFD_H */ +/* Define to 1 if you have the header file. */ +#define EVENT__HAVE_SYS_EVENT_H 1 + /* Define to 1 if you have the header file. */ #define EVENT__HAVE_SYS_IOCTL_H 1 @@ -327,6 +356,9 @@ /* Define to 1 if you have the header file. */ #define EVENT__HAVE_SYS_PARAM_H 1 +/* Define to 1 if you have the header file. */ +#define EVENT__HAVE_SYS_QUEUE_H 1 + /* Define to 1 if you have the header file. */ #define EVENT__HAVE_SYS_RESOURCE_H 1 @@ -351,9 +383,6 @@ /* Define to 1 if you have the header file. */ /* #undef EVENT__HAVE_SYS_TIMERFD_H */ -/* Define to 1 if you have the header file. */ -/* #undef EVENT__HAVE_SYS_SIGNALFD_H */ - /* Define to 1 if you have the header file. */ #define EVENT__HAVE_SYS_TIME_H 1 @@ -369,12 +398,19 @@ /* Define to 1 if you have the header file. */ #define EVENT__HAVE_ERRNO_H 1 +/* Define if TAILQ_FOREACH is defined in */ +#define EVENT__HAVE_TAILQFOREACH 1 + /* Define if timeradd is defined in */ #define EVENT__HAVE_TIMERADD 1 /* Define if timerclear is defined in */ #define EVENT__HAVE_TIMERCLEAR 1 +/* Define if timercmp is defined in */ +#define EVENT__HAVE_TIMERCMP 1 + + /* Define to 1 if you have the `timerfd_create' function. */ /* #undef EVENT__HAVE_TIMERFD_CREATE */ @@ -405,9 +441,18 @@ /* Define to 1 if you have the `unsetenv' function. */ #define EVENT__HAVE_UNSETENV 1 +/* Define to 1 if you have the `vasprintf' function. */ +#define EVENT__HAVE_VASPRINTF 1 + /* Define if kqueue works correctly with pipes */ #define EVENT__HAVE_WORKING_KQUEUE 1 +#ifdef __USE_UNUSED_DEFINITIONS__ +/* Define to necessary symbol if this constant uses a non-standard name on your system. */ +/* XXX: Hello, this isn't even used, nor is it defined anywhere... - Ellzey */ +#define EVENT__PTHREAD_CREATE_JOINABLE +#endif + /* The size of `pthread_t', as computed by sizeof. */ #define EVENT__SIZEOF_PTHREAD_T 8 @@ -423,23 +468,26 @@ /* The size of `off_t', as computed by sizeof. */ #define EVENT__SIZEOF_OFF_T 8 +#define EVENT__SIZEOF_SSIZE_T 8 + + /* The size of a `short', as computed by sizeof. */ #define EVENT__SIZEOF_SHORT 2 /* The size of `size_t', as computed by sizeof. */ #define EVENT__SIZEOF_SIZE_T 8 +/* Define to 1 if you can safely include both and . */ +/* #undef EVENT__TIME_WITH_SYS_TIME */ + /* The size of `socklen_t', as computed by sizeof. */ #define EVENT__SIZEOF_SOCKLEN_T 4 /* The size of 'void *', as computer by sizeof */ #define EVENT__SIZEOF_VOID_P 8 -/* The size of 'time_t', as computer by sizeof */ -#define EVENT__SIZEOF_TIME_T 8 - /* Define to `__inline__' or `__inline' if that's what the C compiler - calls it, or do nothing if 'inline' is not supported under any name. */ + calls it, or to nothing if 'inline' is not supported under any name. */ #ifndef __cplusplus /* why not c++? * @@ -457,6 +505,9 @@ #define EVENT__HAVE___func__ 1 #define EVENT__HAVE___FUNCTION__ 1 +/* Define to `unsigned' if does not define. */ +#define EVENT__size_t size_t + /* Define to unsigned int if you dont have it */ #define EVENT__socklen_t socklen_t