From e538ab09fe8139da507eeab044243a79e6bf9ba2 Mon Sep 17 00:00:00 2001 From: Liong Sauw Ming Date: Wed, 23 Mar 2011 06:08:36 +0000 Subject: Fixed #1221: Crash when SIP transport tried to write to a broken pipe. git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3478 74dad513-b988-da41-8d7b-12977e46ad98 --- pjlib/src/pj/sock_bsd.c | 5 +++++ pjlib/src/pj/sock_common.c | 5 +++++ pjlib/src/pj/sock_symbian.cpp | 1 + 3 files changed, 11 insertions(+) (limited to 'pjlib/src') diff --git a/pjlib/src/pj/sock_bsd.c b/pjlib/src/pj/sock_bsd.c index 47e3fd14..4dbdc5c6 100644 --- a/pjlib/src/pj/sock_bsd.c +++ b/pjlib/src/pj/sock_bsd.c @@ -135,6 +135,11 @@ const pj_uint16_t PJ_SO_RCVBUF = SO_RCVBUF; const pj_uint16_t PJ_SO_SNDBUF = SO_SNDBUF; const pj_uint16_t PJ_TCP_NODELAY= TCP_NODELAY; const pj_uint16_t PJ_SO_REUSEADDR= SO_REUSEADDR; +#ifdef SO_NOSIGPIPE +const pj_uint16_t PJ_SO_NOSIGPIPE = SO_NOSIGPIPE; +#else +const pj_uint16_t PJ_SO_NOSIGPIPE = 0xFFFF; +#endif #if defined(SO_PRIORITY) const pj_uint16_t PJ_SO_PRIORITY = SO_PRIORITY; #else diff --git a/pjlib/src/pj/sock_common.c b/pjlib/src/pj/sock_common.c index fa5858fd..564f2036 100644 --- a/pjlib/src/pj/sock_common.c +++ b/pjlib/src/pj/sock_common.c @@ -1137,6 +1137,11 @@ PJ_DEF(pj_uint16_t) pj_SO_REUSEADDR(void) return PJ_SO_REUSEADDR; } +PJ_DEF(pj_uint16_t) pj_SO_NOSIGPIPE(void) +{ + return PJ_SO_NOSIGPIPE; +} + PJ_DEF(pj_uint16_t) pj_SO_PRIORITY(void) { return PJ_SO_PRIORITY; diff --git a/pjlib/src/pj/sock_symbian.cpp b/pjlib/src/pj/sock_symbian.cpp index b1697642..10eb1fa6 100644 --- a/pjlib/src/pj/sock_symbian.cpp +++ b/pjlib/src/pj/sock_symbian.cpp @@ -53,6 +53,7 @@ const pj_uint16_t PJ_SOL_IP = 0xFFFF; const pj_uint16_t PJ_SOL_TCP = 0xFFFF; const pj_uint16_t PJ_SOL_UDP = 0xFFFF; const pj_uint16_t PJ_SOL_IPV6 = 0xFFFF; +const pj_uint16_t PJ_SO_NOSIGPIPE = 0xFFFF; /* TOS */ const pj_uint16_t PJ_IP_TOS = 0; -- cgit v1.2.3