On big endian platforms with type long >32bit the range option applied a bad base address

This commit is contained in:
Gerhard Rieger 2014-03-21 15:30:05 +01:00
parent 58e48301a2
commit e04509da7b
2 changed files with 5 additions and 2 deletions

View file

@ -22,6 +22,9 @@ corrections:
Changed some variable definitions to make gcc -O2 aliasing checker happy
Thanks to Ilya Gordeev for reporting these warnings
On big endian platforms with type long >32bit the range option applied a
bad base address. Thanks to hejia hejia for reporting and fixing this bug.
fixed bug in xio-openssl.c that prevented error handling of bad number
of arguments, thanks to Paulik Tamas for reporting

View file

@ -1,5 +1,5 @@
/* source: xio-ip4.c */
/* Copyright Gerhard Rieger 2001-2008 */
/* Copyright Gerhard Rieger */
/* Published under the GNU General Public License V.2, see file COPYING */
/* this file contains the source for IP4 related functions */
@ -55,7 +55,7 @@ int xioparsenetwork_ip4(const char *rangename, struct xiorange *range) {
free(rangename1);
return STAT_NORETRY;
}
netaddr_in->s_addr = *(unsigned long *)nameaddr->h_addr_list[0];
netaddr_in->s_addr = *(uint32_t *)nameaddr->h_addr_list[0];
}
free(rangename1);
return STAT_OK;