Committer : entrope
CVSROOT : /cvsroot/undernet-ircu
Module : ircu2.10
Commit time: 2005-05-09 01:55:36 UTC
Modified files:
ChangeLog ircd/os_generic.c
Log message:
Use v4compat addresses when !defined(IPV6).
---------------------- diff included ----------------------
Index: ircu2.10/ChangeLog
diff -u ircu2.10/ChangeLog:1.627 ircu2.10/ChangeLog:1.628
--- ircu2.10/ChangeLog:1.627 Sat May 7 19:42:03 2005
+++ ircu2.10/ChangeLog Sun May 8 18:55:08 2005
@@ -1,3 +1,9 @@
+2005-05-08 Jukka Ollila <[EMAIL PROTECTED]>
+ (Adapted slightly by Michael Poole.)
+
+ * ircd/os_generic.c (sockaddr_to_irc): Change to use v4compat
+ addresses event when !defined(IPV6).
+
2005-05-07 Michael Poole <[EMAIL PROTECTED]>
* ircd/channel.c (joinbuf_join): Be smarter about what source to
Index: ircu2.10/ircd/os_generic.c
diff -u ircu2.10/ircd/os_generic.c:1.22 ircu2.10/ircd/os_generic.c:1.23
--- ircu2.10/ircd/os_generic.c:1.22 Sun Mar 20 08:06:29 2005
+++ ircu2.10/ircd/os_generic.c Sun May 8 18:55:26 2005
@@ -18,7 +18,7 @@
*/
/** @file
* @brief Implementation of OS-dependent operations.
- * @version $Id: os_generic.c,v 1.22 2005/03/20 16:06:29 entrope Exp $
+ * @version $Id: os_generic.c,v 1.23 2005/05/09 01:55:26 entrope Exp $
*/
#include "config.h"
@@ -69,6 +69,17 @@
#define getrusage(a,b) syscall(SYS_GETRUSAGE, a, b)
#endif
+
+static void sockaddr_in_to_irc(const struct sockaddr_in *v4,
+ struct irc_sockaddr *irc)
+{
+ memset(&irc->addr, 0, 5*sizeof(int16_t));
+ irc->addr.in6_16[5] = 0xffff;
+ memcpy(&irc->addr.in6_16[6], &v4->sin_addr, sizeof(v4->sin_addr));
+ irc->port = ntohs(v4->sin_port);
+}
+
+
#ifdef IPV6
/** Native socket address type. */
#define sockaddr_native sockaddr_in6
@@ -86,11 +97,7 @@
irc->port = ntohs(v6->sin6_port);
}
else if (v6->sin6_family == AF_INET) {
- const struct sockaddr_in *v4 = (const struct sockaddr_in*)v6;
- memset(&irc->addr, 0, 5*sizeof(int16_t));
- irc->addr.in6_16[5] = 0xffff;
- memcpy(&irc->addr.in6_16[6], &v4->sin_addr, sizeof(v4->sin_addr));
- irc->port = ntohs(v4->sin_port);
+ sockaddr_in_to_irc((struct sockaddr_in *)v6, irc);
}
else assert(0 && "Unhandled native address family");
}
@@ -136,14 +143,7 @@
#else
#define sockaddr_native sockaddr_in
#define sn_family sin_family
-
-void sockaddr_to_irc(const struct sockaddr_in *v4, struct irc_sockaddr *irc)
-{
- assert(v4->sin_family == AF_INET);
- memset(&irc->addr, 0, 6*sizeof(irc->addr.in6_16[0]));
- memcpy(&irc->addr.in6_16[6], &v4->sin_addr, sizeof(v4->sin_addr));
- irc->port = ntohs(v4->sin_port);
-}
+#define sockaddr_to_irc sockaddr_in_to_irc
int sockaddr_from_irc(struct sockaddr_in *v4, const struct irc_sockaddr *irc,
int compat_fd)
{
----------------------- End of diff -----------------------
_______________________________________________
Patches mailing list
[email protected]
http://undernet.sbg.org/mailman/listinfo/patches