Fixed ticket #1007: Heap corruption when socket address with invalid address family is given (thanks Emil Sturniolo for the report)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3037 74dad513-b988-da41-8d7b-12977e46ad98
diff --git a/pjlib/src/pj/sock_common.c b/pjlib/src/pj/sock_common.c
index 64fc9d4..baa8961 100644
--- a/pjlib/src/pj/sock_common.c
+++ b/pjlib/src/pj/sock_common.c
@@ -338,7 +338,7 @@
* This may break some parts of upper layer libraries.
*/
//PJ_ASSERT_RETURN(a->addr.sa_family == PJ_AF_INET ||
- // a->addr.sa_family == PJ_AF_INET6, PJ_EAFNOTSUP);
+ // a->addr.sa_family == PJ_AF_INET6, PJ_FALSE);
if (a->addr.sa_family!=PJ_AF_INET && a->addr.sa_family!=PJ_AF_INET6) {
return PJ_FALSE;
@@ -372,7 +372,7 @@
{
const pj_sockaddr *a = (const pj_sockaddr*) addr;
PJ_ASSERT_RETURN(a->addr.sa_family == PJ_AF_INET ||
- a->addr.sa_family == PJ_AF_INET6, PJ_EAFNOTSUP);
+ a->addr.sa_family == PJ_AF_INET6, 0);
return a->addr.sa_family == PJ_AF_INET6 ?
sizeof(pj_in6_addr) : sizeof(pj_in_addr);
}
@@ -384,7 +384,7 @@
{
const pj_sockaddr *a = (const pj_sockaddr*) addr;
PJ_ASSERT_RETURN(a->addr.sa_family == PJ_AF_INET ||
- a->addr.sa_family == PJ_AF_INET6, PJ_EAFNOTSUP);
+ a->addr.sa_family == PJ_AF_INET6, 0);
return a->addr.sa_family == PJ_AF_INET6 ?
sizeof(pj_sockaddr_in6) : sizeof(pj_sockaddr_in);
}