diff options
author | simon.perreault <simon.perreault@f38db490-d61c-443f-a65b-d21fe96a405b> | 2010-07-09 12:56:18 +0000 |
---|---|---|
committer | simon.perreault <simon.perreault@f38db490-d61c-443f-a65b-d21fe96a405b> | 2010-07-09 12:56:18 +0000 |
commit | e0a1ff82c6873f32d425bf7dd99023b9f1fefcd4 (patch) | |
tree | 04f272edf115bb800f7eff0aa77aabc64cca37d0 /main | |
parent | 2178f2337615b8f48b34cc3dd87b76358059c92b (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: http://svn.digium.com/svn/asterisk/trunk@274909 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'main')
-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"); |