diff options
author | <simon.perreault@viagenie.ca> | 2010-07-09 12:56:18 +0000 |
---|---|---|
committer | <simon.perreault@viagenie.ca> | 2010-07-09 12:56:18 +0000 |
commit | 21dc81bb31bb2682721f932c492f3726096c354d (patch) | |
tree | 04f272edf115bb800f7eff0aa77aabc64cca37d0 /main/netsock2.c | |
parent | e10dcd165b0c4a7dd476b48394ec53eab1be4a32 (diff) |
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
Diffstat (limited to 'main/netsock2.c')
-rw-r--r-- | main/netsock2.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/main/netsock2.c b/main/netsock2.c index 4d93a911b..ba671c1dc 100644 --- a/main/netsock2.c +++ b/main/netsock2.c @@ -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) { - *((struct sockaddr_in *)&addr->ss) = *sin; + memcpy(&addr->ss, sin, sizeof(*sin)); if (addr->ss.ss_family != AF_INET) { ast_log(LOG_DEBUG, "Address family is not AF_INET\n"); |