diff options
author | Karl Ramm <kcr@1ts.org> | 2009-12-18 15:33:18 +0000 |
---|---|---|
committer | Karl Ramm <kcr@1ts.org> | 2009-12-18 15:33:18 +0000 |
commit | bdebdf31d76e65ee7a45ffaea219510fc7b9a3a7 (patch) | |
tree | feb9f50d68d1f8119b05c7b5a5539294e31d9a93 /lib/Zinternal.c | |
parent | 88e556d598741de725a73b757c072dc473e3e9c0 (diff) |
roleplay accordingly with sin_len and sin6_len values on BSD systems
Diffstat (limited to 'lib/Zinternal.c')
-rw-r--r-- | lib/Zinternal.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/Zinternal.c b/lib/Zinternal.c index d121026..7c9bb4a 100644 --- a/lib/Zinternal.c +++ b/lib/Zinternal.c @@ -688,6 +688,9 @@ Z_FormatHeader(ZNotice_t *notice, notice->z_sender_sockaddr.ip4.sin_family = AF_INET; /*XXX*/ notice->z_sender_sockaddr.ip4.sin_port = notice->z_port; (void) memcpy(¬ice->z_sender_sockaddr.ip4.sin_addr, &__My_addr, sizeof(__My_addr)); +#ifdef HAVE_SOCKADDR_IN_SIN_LEN + notice->z_sender_sockaddr.ip4.sin_len = sizeof(notice->z_sender_sockaddr.ip4); +#endif } notice->z_multiuid = notice->z_uid; @@ -740,6 +743,9 @@ Z_NewFormatHeader(ZNotice_t *notice, notice->z_sender_sockaddr.ip4.sin_family = AF_INET; /*XXX*/ notice->z_sender_sockaddr.ip4.sin_port = notice->z_port; (void) memcpy(¬ice->z_sender_sockaddr.ip4.sin_addr, &__My_addr, sizeof(__My_addr)); +#ifdef HAVE_SOCKADDR_IN_SIN_LEN + notice->z_sender_sockaddr.ip4.sin_len = sizeof(notice->z_sender_sockaddr.ip4); +#endif notice->z_multiuid = notice->z_uid; @@ -1251,6 +1257,9 @@ Z_SendFragmentedNotice(ZNotice_t *notice, notice->z_sender_sockaddr.ip4.sin_family = AF_INET; /*XXX*/ notice->z_sender_sockaddr.ip4.sin_port = notice->z_port; (void) memcpy(¬ice->z_sender_sockaddr.ip4.sin_addr, &__My_addr, sizeof(__My_addr)); +#ifdef HAVE_SOCKADDR_IN_SIN_LEN + notice->z_sender_sockaddr.ip4.sin_len = sizeof(notice->z_sender_sockaddr.ip4); +#endif } message_len = min(notice->z_message_len-offset, fragsize); partnotice.z_message = notice->z_message+offset; |