Committer : entrope
CVSROOT : /cvsroot/undernet-ircu
Module : ircu2.10
Commit time: 2004-09-10 20:36:48 UTC
Modified files:
ircd/os_generic.c ChangeLog
Log message:
Fix support for IPv4-only hosts.
---------------------- diff included ----------------------
Index: ircu2.10/ChangeLog
diff -u ircu2.10/ChangeLog:1.451 ircu2.10/ChangeLog:1.452
--- ircu2.10/ChangeLog:1.451 Fri Sep 10 09:40:04 2004
+++ ircu2.10/ChangeLog Fri Sep 10 13:36:37 2004
@@ -1,5 +1,10 @@
2004-09-10 Michael Poole <[EMAIL PROTECTED]>
+ * ircd/os_generic.c (sockaddr_from_irc): Fix IPv4 implementation
+ to use the correct address family and IP offset.
+
+2004-09-10 Michael Poole <[EMAIL PROTECTED]>
+
* include/s_conf.h (struct ConfItem): Add origin and origin_name
fields.
Index: ircu2.10/ircd/os_generic.c
diff -u ircu2.10/ircd/os_generic.c:1.12 ircu2.10/ircd/os_generic.c:1.13
--- ircu2.10/ircd/os_generic.c:1.12 Wed Aug 18 21:00:52 2004
+++ ircu2.10/ircd/os_generic.c Fri Sep 10 13:36:37 2004
@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
- * $Id: os_generic.c,v 1.12 2004/08/19 04:00:52 entrope Exp $
+ * $Id: os_generic.c,v 1.13 2004/09/10 20:36:37 entrope Exp $
*
*/
#include "config.h"
@@ -100,9 +100,9 @@
void sockaddr_from_irc(struct sockaddr_in *v4, const struct irc_sockaddr *irc, int
persist)
{
- v4->sin_family = AF_INET6;
+ v4->sin_family = AF_INET;
assert(!irc->addr.in6_16[0] && !irc->addr.in6_16[1] && !irc->addr.in6_16[2] &&
!irc->addr.in6_16[3] && !irc->addr.in6_16[4] && (!irc->addr.in6_16[5] ||
irc->addr.in6_16[5] == 0xffff));
- memcpy(&v4->sin_addr, &irc->addr.in6_16[7], sizeof(v4->sin_addr));
+ memcpy(&v4->sin_addr, &irc->addr.in6_16[6], sizeof(v4->sin_addr));
v4->sin_port = htons(irc->port);
(void)persist;
}
----------------------- End of diff -----------------------