Sadly we can't dereference a pointer cast and use it as an lvalue without getting this
warning (at least with gcc 4.4.4): netsock2.c:492: warning: dereferencing pointer ‘({anonymous})’ does break strict-aliasing rules So we're back to using memcpy()... git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@274909 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
parent
e10dcd165b
commit
21dc81bb31
|
@ -489,7 +489,7 @@ int ast_sockaddr_to_sin(const struct ast_sockaddr *addr,
|
||||||
|
|
||||||
void ast_sockaddr_from_sin(struct ast_sockaddr *addr, const struct sockaddr_in *sin)
|
void ast_sockaddr_from_sin(struct ast_sockaddr *addr, const struct sockaddr_in *sin)
|
||||||
{
|
{
|
||||||
*((struct sockaddr_in *)&addr->ss) = *sin;
|
memcpy(&addr->ss, sin, sizeof(*sin));
|
||||||
|
|
||||||
if (addr->ss.ss_family != AF_INET) {
|
if (addr->ss.ss_family != AF_INET) {
|
||||||
ast_log(LOG_DEBUG, "Address family is not AF_INET\n");
|
ast_log(LOG_DEBUG, "Address family is not AF_INET\n");
|
||||||
|
|
Loading…
Reference in New Issue