summaryrefslogtreecommitdiff
path: root/pjlib
diff options
context:
space:
mode:
authorLiong Sauw Ming <ming@teluu.com>2015-05-12 01:56:29 +0000
committerLiong Sauw Ming <ming@teluu.com>2015-05-12 01:56:29 +0000
commit2f12e15cfba1e75109addc42f45af65e93091aca (patch)
tree1d6df10568aad7f01db53a2d26035141369421f5 /pjlib
parentfc1d265058882d98cc78520a3a093c1b3fa191b8 (diff)
Re #1843 (misc): Fixed incorrect memcpy size in sock_common (thanks to Richard Mudgett for the patch and Joshua Colp for the report)
If an IPv6 UDP transport is configured with a link-local address, say fe80::21c:c0ff:fe4e:1a9e%eth0, which is an invalid format for an IPv6 address, it may cause crash. The invalid format causes pjproject to use an incorrect size parameter with memcpy(). git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@5092 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjlib')
-rw-r--r--pjlib/src/pj/sock_common.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/pjlib/src/pj/sock_common.c b/pjlib/src/pj/sock_common.c
index 00f13e3c..1a4f8a11 100644
--- a/pjlib/src/pj/sock_common.c
+++ b/pjlib/src/pj/sock_common.c
@@ -180,7 +180,7 @@ PJ_DEF(pj_status_t) pj_sockaddr_set_str_addr(int af,
status = pj_getaddrinfo(PJ_AF_INET6, str_addr, &count, &ai);
if (status==PJ_SUCCESS) {
pj_memcpy(&addr->ipv6.sin6_addr, &ai.ai_addr.ipv6.sin6_addr,
- sizeof(pj_sockaddr_in6));
+ sizeof(addr->ipv6.sin6_addr));
}
}
} else {