summaryrefslogtreecommitdiff
path: root/pjlib
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2009-12-10 04:56:26 +0000
committerBenny Prijono <bennylp@teluu.com>2009-12-10 04:56:26 +0000
commitd6a96e877ad72c410af8e48f1c13ab4bb64c0443 (patch)
tree0acc2ec83470e7113ff36045fd5ae424d8fdf3a9 /pjlib
parentb4bea169655fbc81ac042dfbdf34ede2c319f41c (diff)
More ticket #1000 (IPv6 interface enumeration fails due to typo error in Windows targets):
- fixed crash if GetAdaptersAddresses() returns adapter with NULL "firstUnicastAddress". This happens when the interface is disabled. git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3030 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjlib')
-rw-r--r--pjlib/src/pj/ip_helper_win32.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/pjlib/src/pj/ip_helper_win32.c b/pjlib/src/pj/ip_helper_win32.c
index dcfbed9c..56d292e4 100644
--- a/pjlib/src/pj/ip_helper_win32.c
+++ b/pjlib/src/pj/ip_helper_win32.c
@@ -237,9 +237,11 @@ static pj_status_t enum_ipv4_ipv6_interface(int af,
return PJ_RETURN_OS_ERROR(rc);
for (i=0; i<*p_cnt && adapter; ++i, adapter = adapter->Next) {
- SOCKET_ADDRESS *pAddr = &adapter->FirstUnicastAddress->Address;
- ifs[i].addr.sa_family = pAddr->lpSockaddr->sa_family;
- pj_memcpy(&ifs[i], pAddr->lpSockaddr, pAddr->iSockaddrLength);
+ if (adapter->FirstUnicastAddress) {
+ SOCKET_ADDRESS *pAddr = &adapter->FirstUnicastAddress->Address;
+ ifs[i].addr.sa_family = pAddr->lpSockaddr->sa_family;
+ pj_memcpy(&ifs[i], pAddr->lpSockaddr, pAddr->iSockaddrLength);
+ }
}
*p_cnt = i;