[sch added to cc: as I think he's the effective pktgen maintainer]

On Tue, Jul 26, 2005 at 05:03:49PM -0700, David S. Miller wrote:
> From: Matt Mackall <[EMAIL PROTECTED]>
> Date: Tue, 26 Jul 2005 16:58:24 -0700
> 
> > On Tue, Jul 26, 2005 at 04:32:02PM -0700, David S. Miller wrote:
> > > More seriously, please submit a version of whatever you
> > > believe to be the more correct fix so it can be reviewed
> > > and integrated.
> > 
> > Do you have a preferred location to put this function or
> > shall I invent one?
> 
> I actually can't wait to see where you're going to
> to put a function that transforms "IPV4 addresses"
> from ascii other than some place protected by CONFIG_INET.
> :-)

# HG changeset patch
# User [EMAIL PROTECTED]
# Node ID 6cdd6f36d53678a016cfbf5ce667cbd91504d538
# Parent  75716ae25f9d87ee2a5ef7c4df2d8f86e0f3f762
Move in_aton from net/ipv4/utils.c to net/core/utils.c

Move in_aton to allow netpoll and pktgen to work without the rest of
the IPv4 stack. Fix whitespace and add comment for the odd placement.

Delete now-empty net/ipv4/utils.c

Re-enable netpoll/netconsole without CONFIG_INET

Signed-off-by: Matt Mackall <[EMAIL PROTECTED]>

diff -r 75716ae25f9d -r 6cdd6f36d536 drivers/net/Kconfig
--- a/drivers/net/Kconfig       Tue Jul 26 23:21:24 2005
+++ b/drivers/net/Kconfig       Wed Jul 27 02:31:24 2005
@@ -2544,7 +2544,7 @@
 
 config NETCONSOLE
        tristate "Network console logging support (EXPERIMENTAL)"
-       depends on NETDEVICES && INET && EXPERIMENTAL
+       depends on NETDEVICES && EXPERIMENTAL
        ---help---
        If you want to log kernel messages over the network, enable this.
        See <file:Documentation/networking/netconsole.txt> for details.
diff -r 75716ae25f9d -r 6cdd6f36d536 net/core/utils.c
--- a/net/core/utils.c  Tue Jul 26 23:21:24 2005
+++ b/net/core/utils.c  Wed Jul 27 02:31:24 2005
@@ -23,9 +23,9 @@
 #include <linux/percpu.h>
 #include <linux/init.h>
 
+#include <asm/byteorder.h>
 #include <asm/system.h>
 #include <asm/uaccess.h>
-
 
 /*
   This is a maximally equidistributed combined Tausworthe generator
@@ -153,3 +153,38 @@
 EXPORT_SYMBOL(net_random);
 EXPORT_SYMBOL(net_ratelimit);
 EXPORT_SYMBOL(net_srandom);
+
+/*
+ * Convert an ASCII string to binary IP.
+ * This is outside of net/ipv4/ because various code that uses IP addresses
+ * is otherwise not dependent on the TCP/IP stack.
+ */
+
+__u32 in_aton(const char *str)
+{
+       unsigned long l;
+       unsigned int val;
+       int i;
+
+       l = 0;
+       for (i = 0; i < 4; i++)
+       {
+               l <<= 8;
+               if (*str != '\0')
+               {
+                       val = 0;
+                       while (*str != '\0' && *str != '.')
+                       {
+                               val *= 10;
+                               val += *str - '0';
+                               str++;
+                       }
+                       l |= val;
+                       if (*str != '\0')
+                               str++;
+               }
+       }
+       return(htonl(l));
+}
+
+EXPORT_SYMBOL(in_aton);
diff -r 75716ae25f9d -r 6cdd6f36d536 net/ipv4/Makefile
--- a/net/ipv4/Makefile Tue Jul 26 23:21:24 2005
+++ b/net/ipv4/Makefile Wed Jul 27 02:31:24 2005
@@ -2,7 +2,7 @@
 # Makefile for the Linux TCP/IP (INET) layer.
 #
 
-obj-y     := utils.o route.o inetpeer.o protocol.o \
+obj-y     := route.o inetpeer.o protocol.o \
             ip_input.o ip_fragment.o ip_forward.o ip_options.o \
             ip_output.o ip_sockglue.o \
             tcp.o tcp_input.o tcp_output.o tcp_timer.o tcp_ipv4.o \
diff -r 75716ae25f9d -r 6cdd6f36d536 net/ipv4/utils.c
--- a/net/ipv4/utils.c  Tue Jul 26 23:21:24 2005
+++ /dev/null   Wed Jul 27 02:31:24 2005
@@ -1,59 +0,0 @@
-/*
- * INET                An implementation of the TCP/IP protocol suite for the 
LINUX
- *             operating system.  INET is implemented using the  BSD Socket
- *             interface as the means of communication with the user level.
- *
- *             Various kernel-resident INET utility functions; mainly
- *             for format conversion and debugging output.
- *
- * Version:    $Id: utils.c,v 1.8 2000/10/03 07:29:01 anton Exp $
- *
- * Author:     Fred N. van Kempen, <[EMAIL PROTECTED]>
- *
- * Fixes:
- *             Alan Cox        :       verify_area check.
- *             Alan Cox        :       removed old debugging.
- *             Andi Kleen      :       add net_ratelimit()  
- *
- *             This program is free software; you can redistribute it and/or
- *             modify it under the terms of the GNU General Public License
- *             as published by the Free Software Foundation; either version
- *             2 of the License, or (at your option) any later version.
- */
-
-#include <linux/module.h>
-#include <linux/types.h>
-#include <asm/byteorder.h>
-
-/*
- *     Convert an ASCII string to binary IP. 
- */
- 
-__u32 in_aton(const char *str)
-{
-       unsigned long l;
-       unsigned int val;
-       int i;
-
-       l = 0;
-       for (i = 0; i < 4; i++) 
-       {
-               l <<= 8;
-               if (*str != '\0') 
-               {
-                       val = 0;
-                       while (*str != '\0' && *str != '.') 
-                       {
-                               val *= 10;
-                               val += *str - '0';
-                               str++;
-                       }
-                       l |= val;
-                       if (*str != '\0') 
-                               str++;
-               }
-       }
-       return(htonl(l));
-}
-
-EXPORT_SYMBOL(in_aton);


-- 
Mathematics is the supreme nostalgia of our time.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to