Bundled pjproject: Enable pj_assert when dev-mode is enabled.
[asterisk/asterisk.git] / third-party / pjproject / patches / config_site.h
1 /*
2  * Asterisk config_site.h
3  */
4
5 #include <sys/select.h>
6
7 /*
8  * Since both pjproject and asterisk source files will include config_site.h,
9  * we need to make sure that only pjproject source files include asterisk_malloc_debug.h.
10  */
11 #if defined(MALLOC_DEBUG) && !defined(_ASTERISK_ASTMM_H)
12 #include "asterisk_malloc_debug.h"
13 #endif
14
15 /*
16  * Defining PJMEDIA_HAS_SRTP to 0 does NOT disable Asterisk's ability to use srtp.
17  * It only disables the pjmedia srtp transport which Asterisk doesn't use.
18  * The reason for the disable is that while Asterisk works fine with older libsrtp
19  * versions, newer versions of pjproject won't compile with them.
20  */
21 #define PJMEDIA_HAS_SRTP 0
22
23 /*
24  * Defining PJMEDIA_HAS_WEBRTC_AEC to 0 does NOT disable Asterisk's ability to use
25  * webrtc.  It only disables the pjmedia webrtc transport which Asterisk doesn't use.
26  */
27 #define PJMEDIA_HAS_WEBRTC_AEC 0
28
29 #define PJ_HAS_IPV6 1
30 #if !defined(AST_DEVMODE) && !defined(PJPROJECT_BUNDLED_ASSERTIONS)
31 #define NDEBUG 1
32 #endif
33
34 #define PJ_MAX_HOSTNAME (256)
35 #define PJSIP_MAX_URL_SIZE (512)
36 #ifdef PJ_HAS_LINUX_EPOLL
37 #define PJ_IOQUEUE_MAX_HANDLES  (5000)
38 #else
39 #define PJ_IOQUEUE_MAX_HANDLES  (FD_SETSIZE)
40 #endif
41 #define PJ_IOQUEUE_HAS_SAFE_UNREG 1
42 #define PJ_IOQUEUE_MAX_EVENTS_IN_SINGLE_POLL (16)
43
44 #define PJ_SCANNER_USE_BITWISE  0
45 #define PJ_OS_HAS_CHECK_STACK   0
46
47 #ifndef PJ_LOG_MAX_LEVEL
48 #define PJ_LOG_MAX_LEVEL                6
49 #endif
50
51 #define PJ_ENABLE_EXTRA_CHECK   1
52 #define PJSIP_MAX_TSX_COUNT             ((64*1024)-1)
53 #define PJSIP_MAX_DIALOG_COUNT  ((64*1024)-1)
54 #define PJSIP_UDP_SO_SNDBUF_SIZE        (512*1024)
55 #define PJSIP_UDP_SO_RCVBUF_SIZE        (512*1024)
56 #define PJ_DEBUG                        0
57 #define PJSIP_SAFE_MODULE               0
58 #define PJ_HAS_STRICMP_ALNUM            0
59
60 /*
61  * Do not ever enable PJ_HASH_USE_OWN_TOLOWER because the algorithm is
62  * inconsistently used when calculating the hash value and doesn't
63  * convert the same characters as pj_tolower()/tolower().  Thus you
64  * can get different hash values if the string hashed has certain
65  * characters in it.  (ASCII '@', '[', '\\', ']', '^', and '_')
66  */
67 #undef PJ_HASH_USE_OWN_TOLOWER
68
69 /*
70   It is imperative that PJSIP_UNESCAPE_IN_PLACE remain 0 or undefined.
71   Enabling it will result in SEGFAULTS when URIs containing escape sequences are encountered.
72 */
73 #undef PJSIP_UNESCAPE_IN_PLACE
74 #define PJSIP_MAX_PKT_LEN                       32000
75
76 #undef PJ_TODO
77 #define PJ_TODO(x)
78
79 /* Defaults too low for WebRTC */
80 #define PJ_ICE_MAX_CAND 32
81 #define PJ_ICE_MAX_CHECKS (PJ_ICE_MAX_CAND * PJ_ICE_MAX_CAND)
82
83 /* Increase limits to allow more formats */
84 #define PJMEDIA_MAX_SDP_FMT   64
85 #define PJMEDIA_MAX_SDP_BANDW   4
86 #define PJMEDIA_MAX_SDP_ATTR   (PJMEDIA_MAX_SDP_FMT*2 + 4)
87 #define PJMEDIA_MAX_SDP_MEDIA   16