summaryrefslogtreecommitdiff
path: root/pjsip/include/pjsip/sip_config.h
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2013-04-26 06:01:43 +0000
committerBenny Prijono <bennylp@teluu.com>2013-04-26 06:01:43 +0000
commit794a79431f46ba8a6c5316c082c064b1b768586a (patch)
tree6f176e0204a84a4ea29578c15c833903eb745818 /pjsip/include/pjsip/sip_config.h
parent688fdf10f000a6190b31eee6fc183decda5005aa (diff)
Fixed #1661: Option to use SO_REUSEADDR for TCP and TLS listeners and use it by default on non-Windows platforms
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@4506 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip/include/pjsip/sip_config.h')
-rw-r--r--pjsip/include/pjsip/sip_config.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/pjsip/include/pjsip/sip_config.h b/pjsip/include/pjsip/sip_config.h
index bc895c59..430dde22 100644
--- a/pjsip/include/pjsip/sip_config.h
+++ b/pjsip/include/pjsip/sip_config.h
@@ -569,6 +569,24 @@ PJ_INLINE(pjsip_cfg_t*) pjsip_cfg(void)
/**
+ * Specify whether TCP listener should use SO_REUSEADDR option. This constant
+ * will be used as the default value for the "reuse_addr" field in the
+ * pjsip_tcp_transport_cfg structure.
+ *
+ * Default is FALSE on Windows and TRUE on non-Windows.
+ *
+ * @see PJSIP_TLS_TRANSPORT_REUSEADDR
+ */
+#ifndef PJSIP_TCP_TRANSPORT_REUSEADDR
+# if defined(PJ_WIN32) && PJ_WIN32
+# define PJSIP_TCP_TRANSPORT_REUSEADDR 0
+# else
+# define PJSIP_TCP_TRANSPORT_REUSEADDR 1
+# endif
+#endif
+
+
+/**
* Set the interval to send keep-alive packet for TCP transports.
* If the value is zero, keep-alive will be disabled for TCP.
*
@@ -676,6 +694,21 @@ PJ_INLINE(pjsip_cfg_t*) pjsip_cfg(void)
#endif
+/**
+ * Specify whether TLS listener should use SO_REUSEADDR option.
+ *
+ * Default is FALSE on Windows and TRUE on non-Windows.
+ *
+ * @see PJSIP_TCP_TRANSPORT_REUSEADDR
+ */
+#ifndef PJSIP_TLS_TRANSPORT_REUSEADDR
+# if defined(PJ_WIN32) && PJ_WIN32
+# define PJSIP_TLS_TRANSPORT_REUSEADDR 0
+# else
+# define PJSIP_TLS_TRANSPORT_REUSEADDR 1
+# endif
+#endif
+
/* Endpoint. */
#define PJSIP_MAX_TIMER_COUNT (2*pjsip_cfg()->tsx.max_count + \