Skip to content

Commit

Permalink
[NET]: Move in_aton from net/ipv4/utils.c to net/core/utils.c
Browse files Browse the repository at this point in the history
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 <mpm@selenic.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Matt Mackall authored and David S. Miller committed Jul 27, 2005
1 parent 7cee432 commit 5e43db7
Show file tree
Hide file tree
Showing 4 changed files with 38 additions and 62 deletions.
2 changes: 1 addition & 1 deletion drivers/net/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -2540,7 +2540,7 @@ config SHAPER

config NETCONSOLE
tristate "Network console logging support (EXPERIMENTAL)"
depends on INET && EXPERIMENTAL
depends on EXPERIMENTAL
---help---
If you want to log kernel messages over the network, enable this.
See <file:Documentation/networking/netconsole.txt> for details.
Expand Down
37 changes: 36 additions & 1 deletion net/core/utils.c
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,10 @@
#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
based on code from GNU Scientific Library 1.5 (30 Jun 2004)
Expand Down Expand Up @@ -153,3 +153,38 @@ int net_ratelimit(void)
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);
2 changes: 1 addition & 1 deletion net/ipv4/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -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 \
Expand Down
59 changes: 0 additions & 59 deletions net/ipv4/utils.c

This file was deleted.

0 comments on commit 5e43db7

Please sign in to comment.