diff options
author | Linus Torvalds <torvalds@g5.osdl.org> | 2005-07-27 19:37:59 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-07-27 19:37:59 -0400 |
commit | 839c5d2511fadc35cc4e8a8ffa833d76668700b2 (patch) | |
tree | 8c5150c50dba619ec88818e1610263582d476217 | |
parent | 96fad28a781069eb40156f78b8f50c349805b652 (diff) | |
parent | 5e43db7730e7cef7d37968ea789c41392519a864 (diff) |
Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
-rw-r--r-- | drivers/net/Kconfig | 38 | ||||
-rw-r--r-- | net/core/sock.c | 13 | ||||
-rw-r--r-- | net/core/utils.c | 37 | ||||
-rw-r--r-- | net/ipv4/Kconfig | 2 | ||||
-rw-r--r-- | net/ipv4/Makefile | 2 | ||||
-rw-r--r-- | net/ipv4/netfilter/ip_conntrack_core.c | 2 | ||||
-rw-r--r-- | net/ipv4/utils.c | 59 |
7 files changed, 64 insertions, 89 deletions
diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig index 534b598866b3..8a835eb58808 100644 --- a/drivers/net/Kconfig +++ b/drivers/net/Kconfig | |||
@@ -23,9 +23,12 @@ config NETDEVICES | |||
23 | 23 | ||
24 | If unsure, say Y. | 24 | If unsure, say Y. |
25 | 25 | ||
26 | # All the following symbols are dependent on NETDEVICES - do not repeat | ||
27 | # that for each of the symbols. | ||
28 | if NETDEVICES | ||
29 | |||
26 | config DUMMY | 30 | config DUMMY |
27 | tristate "Dummy net driver support" | 31 | tristate "Dummy net driver support" |
28 | depends on NETDEVICES | ||
29 | ---help--- | 32 | ---help--- |
30 | This is essentially a bit-bucket device (i.e. traffic you send to | 33 | This is essentially a bit-bucket device (i.e. traffic you send to |
31 | this device is consigned into oblivion) with a configurable IP | 34 | this device is consigned into oblivion) with a configurable IP |
@@ -45,7 +48,6 @@ config DUMMY | |||
45 | 48 | ||
46 | config BONDING | 49 | config BONDING |
47 | tristate "Bonding driver support" | 50 | tristate "Bonding driver support" |
48 | depends on NETDEVICES | ||
49 | depends on INET | 51 | depends on INET |
50 | ---help--- | 52 | ---help--- |
51 | Say 'Y' or 'M' if you wish to be able to 'bond' multiple Ethernet | 53 | Say 'Y' or 'M' if you wish to be able to 'bond' multiple Ethernet |
@@ -63,7 +65,6 @@ config BONDING | |||
63 | 65 | ||
64 | config EQUALIZER | 66 | config EQUALIZER |
65 | tristate "EQL (serial line load balancing) support" | 67 | tristate "EQL (serial line load balancing) support" |
66 | depends on NETDEVICES | ||
67 | ---help--- | 68 | ---help--- |
68 | If you have two serial connections to some other computer (this | 69 | If you have two serial connections to some other computer (this |
69 | usually requires two modems and two telephone lines) and you use | 70 | usually requires two modems and two telephone lines) and you use |
@@ -83,7 +84,6 @@ config EQUALIZER | |||
83 | 84 | ||
84 | config TUN | 85 | config TUN |
85 | tristate "Universal TUN/TAP device driver support" | 86 | tristate "Universal TUN/TAP device driver support" |
86 | depends on NETDEVICES | ||
87 | select CRC32 | 87 | select CRC32 |
88 | ---help--- | 88 | ---help--- |
89 | TUN/TAP provides packet reception and transmission for user space | 89 | TUN/TAP provides packet reception and transmission for user space |
@@ -107,7 +107,7 @@ config TUN | |||
107 | 107 | ||
108 | config NET_SB1000 | 108 | config NET_SB1000 |
109 | tristate "General Instruments Surfboard 1000" | 109 | tristate "General Instruments Surfboard 1000" |
110 | depends on NETDEVICES && PNP | 110 | depends on PNP |
111 | ---help--- | 111 | ---help--- |
112 | This is a driver for the General Instrument (also known as | 112 | This is a driver for the General Instrument (also known as |
113 | NextLevel) SURFboard 1000 internal | 113 | NextLevel) SURFboard 1000 internal |
@@ -129,16 +129,14 @@ config NET_SB1000 | |||
129 | 129 | ||
130 | If you don't have this card, of course say N. | 130 | If you don't have this card, of course say N. |
131 | 131 | ||
132 | if NETDEVICES | ||
133 | source "drivers/net/arcnet/Kconfig" | 132 | source "drivers/net/arcnet/Kconfig" |
134 | endif | ||
135 | 133 | ||
136 | # | 134 | # |
137 | # Ethernet | 135 | # Ethernet |
138 | # | 136 | # |
139 | 137 | ||
140 | menu "Ethernet (10 or 100Mbit)" | 138 | menu "Ethernet (10 or 100Mbit)" |
141 | depends on NETDEVICES && !UML | 139 | depends on !UML |
142 | 140 | ||
143 | config NET_ETHERNET | 141 | config NET_ETHERNET |
144 | bool "Ethernet (10 or 100Mbit)" | 142 | bool "Ethernet (10 or 100Mbit)" |
@@ -1137,7 +1135,7 @@ config IBMLANA | |||
1137 | 1135 | ||
1138 | config IBMVETH | 1136 | config IBMVETH |
1139 | tristate "IBM LAN Virtual Ethernet support" | 1137 | tristate "IBM LAN Virtual Ethernet support" |
1140 | depends on NETDEVICES && NET_ETHERNET && PPC_PSERIES | 1138 | depends on NET_ETHERNET && PPC_PSERIES |
1141 | ---help--- | 1139 | ---help--- |
1142 | This driver supports virtual ethernet adapters on newer IBM iSeries | 1140 | This driver supports virtual ethernet adapters on newer IBM iSeries |
1143 | and pSeries systems. | 1141 | and pSeries systems. |
@@ -1760,7 +1758,7 @@ endmenu | |||
1760 | # | 1758 | # |
1761 | 1759 | ||
1762 | menu "Ethernet (1000 Mbit)" | 1760 | menu "Ethernet (1000 Mbit)" |
1763 | depends on NETDEVICES && !UML | 1761 | depends on !UML |
1764 | 1762 | ||
1765 | config ACENIC | 1763 | config ACENIC |
1766 | tristate "Alteon AceNIC/3Com 3C985/NetGear GA620 Gigabit support" | 1764 | tristate "Alteon AceNIC/3Com 3C985/NetGear GA620 Gigabit support" |
@@ -2091,7 +2089,7 @@ endmenu | |||
2091 | # | 2089 | # |
2092 | 2090 | ||
2093 | menu "Ethernet (10000 Mbit)" | 2091 | menu "Ethernet (10000 Mbit)" |
2094 | depends on NETDEVICES && !UML | 2092 | depends on !UML |
2095 | 2093 | ||
2096 | config IXGB | 2094 | config IXGB |
2097 | tristate "Intel(R) PRO/10GbE support" | 2095 | tristate "Intel(R) PRO/10GbE support" |
@@ -2186,11 +2184,11 @@ source "drivers/s390/net/Kconfig" | |||
2186 | 2184 | ||
2187 | config ISERIES_VETH | 2185 | config ISERIES_VETH |
2188 | tristate "iSeries Virtual Ethernet driver support" | 2186 | tristate "iSeries Virtual Ethernet driver support" |
2189 | depends on NETDEVICES && PPC_ISERIES | 2187 | depends on PPC_ISERIES |
2190 | 2188 | ||
2191 | config FDDI | 2189 | config FDDI |
2192 | bool "FDDI driver support" | 2190 | bool "FDDI driver support" |
2193 | depends on NETDEVICES && (PCI || EISA) | 2191 | depends on (PCI || EISA) |
2194 | help | 2192 | help |
2195 | Fiber Distributed Data Interface is a high speed local area network | 2193 | Fiber Distributed Data Interface is a high speed local area network |
2196 | design; essentially a replacement for high speed Ethernet. FDDI can | 2194 | design; essentially a replacement for high speed Ethernet. FDDI can |
@@ -2239,7 +2237,7 @@ config SKFP | |||
2239 | 2237 | ||
2240 | config HIPPI | 2238 | config HIPPI |
2241 | bool "HIPPI driver support (EXPERIMENTAL)" | 2239 | bool "HIPPI driver support (EXPERIMENTAL)" |
2242 | depends on NETDEVICES && EXPERIMENTAL && INET && PCI | 2240 | depends on EXPERIMENTAL && INET && PCI |
2243 | help | 2241 | help |
2244 | HIgh Performance Parallel Interface (HIPPI) is a 800Mbit/sec and | 2242 | HIgh Performance Parallel Interface (HIPPI) is a 800Mbit/sec and |
2245 | 1600Mbit/sec dual-simplex switched or point-to-point network. HIPPI | 2243 | 1600Mbit/sec dual-simplex switched or point-to-point network. HIPPI |
@@ -2271,7 +2269,7 @@ config ROADRUNNER_LARGE_RINGS | |||
2271 | 2269 | ||
2272 | config PLIP | 2270 | config PLIP |
2273 | tristate "PLIP (parallel port) support" | 2271 | tristate "PLIP (parallel port) support" |
2274 | depends on NETDEVICES && PARPORT | 2272 | depends on PARPORT |
2275 | ---help--- | 2273 | ---help--- |
2276 | PLIP (Parallel Line Internet Protocol) is used to create a | 2274 | PLIP (Parallel Line Internet Protocol) is used to create a |
2277 | reasonably fast mini network consisting of two (or, rarely, more) | 2275 | reasonably fast mini network consisting of two (or, rarely, more) |
@@ -2307,7 +2305,6 @@ config PLIP | |||
2307 | 2305 | ||
2308 | config PPP | 2306 | config PPP |
2309 | tristate "PPP (point-to-point protocol) support" | 2307 | tristate "PPP (point-to-point protocol) support" |
2310 | depends on NETDEVICES | ||
2311 | ---help--- | 2308 | ---help--- |
2312 | PPP (Point to Point Protocol) is a newer and better SLIP. It serves | 2309 | PPP (Point to Point Protocol) is a newer and better SLIP. It serves |
2313 | the same purpose: sending Internet traffic over telephone (and other | 2310 | the same purpose: sending Internet traffic over telephone (and other |
@@ -2443,7 +2440,6 @@ config PPPOATM | |||
2443 | 2440 | ||
2444 | config SLIP | 2441 | config SLIP |
2445 | tristate "SLIP (serial line) support" | 2442 | tristate "SLIP (serial line) support" |
2446 | depends on NETDEVICES | ||
2447 | ---help--- | 2443 | ---help--- |
2448 | Say Y if you intend to use SLIP or CSLIP (compressed SLIP) to | 2444 | Say Y if you intend to use SLIP or CSLIP (compressed SLIP) to |
2449 | connect to your Internet service provider or to connect to some | 2445 | connect to your Internet service provider or to connect to some |
@@ -2510,7 +2506,7 @@ config SLIP_MODE_SLIP6 | |||
2510 | 2506 | ||
2511 | config NET_FC | 2507 | config NET_FC |
2512 | bool "Fibre Channel driver support" | 2508 | bool "Fibre Channel driver support" |
2513 | depends on NETDEVICES && SCSI && PCI | 2509 | depends on SCSI && PCI |
2514 | help | 2510 | help |
2515 | Fibre Channel is a high speed serial protocol mainly used to connect | 2511 | Fibre Channel is a high speed serial protocol mainly used to connect |
2516 | large storage devices to the computer; it is compatible with and | 2512 | large storage devices to the computer; it is compatible with and |
@@ -2523,7 +2519,7 @@ config NET_FC | |||
2523 | 2519 | ||
2524 | config SHAPER | 2520 | config SHAPER |
2525 | tristate "Traffic Shaper (EXPERIMENTAL)" | 2521 | tristate "Traffic Shaper (EXPERIMENTAL)" |
2526 | depends on NETDEVICES && EXPERIMENTAL | 2522 | depends on EXPERIMENTAL |
2527 | ---help--- | 2523 | ---help--- |
2528 | The traffic shaper is a virtual network device that allows you to | 2524 | The traffic shaper is a virtual network device that allows you to |
2529 | limit the rate of outgoing data flow over some other network device. | 2525 | limit the rate of outgoing data flow over some other network device. |
@@ -2544,11 +2540,13 @@ config SHAPER | |||
2544 | 2540 | ||
2545 | config NETCONSOLE | 2541 | config NETCONSOLE |
2546 | tristate "Network console logging support (EXPERIMENTAL)" | 2542 | tristate "Network console logging support (EXPERIMENTAL)" |
2547 | depends on NETDEVICES && INET && EXPERIMENTAL | 2543 | depends on EXPERIMENTAL |
2548 | ---help--- | 2544 | ---help--- |
2549 | If you want to log kernel messages over the network, enable this. | 2545 | If you want to log kernel messages over the network, enable this. |
2550 | See <file:Documentation/networking/netconsole.txt> for details. | 2546 | See <file:Documentation/networking/netconsole.txt> for details. |
2551 | 2547 | ||
2548 | endif #NETDEVICES | ||
2549 | |||
2552 | config NETPOLL | 2550 | config NETPOLL |
2553 | def_bool NETCONSOLE | 2551 | def_bool NETCONSOLE |
2554 | 2552 | ||
diff --git a/net/core/sock.c b/net/core/sock.c index 8b35ccdc2b3b..12f6d9a2a522 100644 --- a/net/core/sock.c +++ b/net/core/sock.c | |||
@@ -206,13 +206,14 @@ int sock_setsockopt(struct socket *sock, int level, int optname, | |||
206 | */ | 206 | */ |
207 | 207 | ||
208 | #ifdef SO_DONTLINGER /* Compatibility item... */ | 208 | #ifdef SO_DONTLINGER /* Compatibility item... */ |
209 | switch (optname) { | 209 | if (optname == SO_DONTLINGER) { |
210 | case SO_DONTLINGER: | 210 | lock_sock(sk); |
211 | sock_reset_flag(sk, SOCK_LINGER); | 211 | sock_reset_flag(sk, SOCK_LINGER); |
212 | return 0; | 212 | release_sock(sk); |
213 | return 0; | ||
213 | } | 214 | } |
214 | #endif | 215 | #endif |
215 | 216 | ||
216 | if(optlen<sizeof(int)) | 217 | if(optlen<sizeof(int)) |
217 | return(-EINVAL); | 218 | return(-EINVAL); |
218 | 219 | ||
diff --git a/net/core/utils.c b/net/core/utils.c index e11a8654f363..88eb8b68e26b 100644 --- a/net/core/utils.c +++ b/net/core/utils.c | |||
@@ -23,10 +23,10 @@ | |||
23 | #include <linux/percpu.h> | 23 | #include <linux/percpu.h> |
24 | #include <linux/init.h> | 24 | #include <linux/init.h> |
25 | 25 | ||
26 | #include <asm/byteorder.h> | ||
26 | #include <asm/system.h> | 27 | #include <asm/system.h> |
27 | #include <asm/uaccess.h> | 28 | #include <asm/uaccess.h> |
28 | 29 | ||
29 | |||
30 | /* | 30 | /* |
31 | This is a maximally equidistributed combined Tausworthe generator | 31 | This is a maximally equidistributed combined Tausworthe generator |
32 | based on code from GNU Scientific Library 1.5 (30 Jun 2004) | 32 | based on code from GNU Scientific Library 1.5 (30 Jun 2004) |
@@ -153,3 +153,38 @@ int net_ratelimit(void) | |||
153 | EXPORT_SYMBOL(net_random); | 153 | EXPORT_SYMBOL(net_random); |
154 | EXPORT_SYMBOL(net_ratelimit); | 154 | EXPORT_SYMBOL(net_ratelimit); |
155 | EXPORT_SYMBOL(net_srandom); | 155 | EXPORT_SYMBOL(net_srandom); |
156 | |||
157 | /* | ||
158 | * Convert an ASCII string to binary IP. | ||
159 | * This is outside of net/ipv4/ because various code that uses IP addresses | ||
160 | * is otherwise not dependent on the TCP/IP stack. | ||
161 | */ | ||
162 | |||
163 | __u32 in_aton(const char *str) | ||
164 | { | ||
165 | unsigned long l; | ||
166 | unsigned int val; | ||
167 | int i; | ||
168 | |||
169 | l = 0; | ||
170 | for (i = 0; i < 4; i++) | ||
171 | { | ||
172 | l <<= 8; | ||
173 | if (*str != '\0') | ||
174 | { | ||
175 | val = 0; | ||
176 | while (*str != '\0' && *str != '.') | ||
177 | { | ||
178 | val *= 10; | ||
179 | val += *str - '0'; | ||
180 | str++; | ||
181 | } | ||
182 | l |= val; | ||
183 | if (*str != '\0') | ||
184 | str++; | ||
185 | } | ||
186 | } | ||
187 | return(htonl(l)); | ||
188 | } | ||
189 | |||
190 | EXPORT_SYMBOL(in_aton); | ||
diff --git a/net/ipv4/Kconfig b/net/ipv4/Kconfig index fc561c0ae8e2..0b3d9f1d8069 100644 --- a/net/ipv4/Kconfig +++ b/net/ipv4/Kconfig | |||
@@ -124,7 +124,7 @@ config IP_ROUTE_MULTIPATH | |||
124 | 124 | ||
125 | config IP_ROUTE_MULTIPATH_CACHED | 125 | config IP_ROUTE_MULTIPATH_CACHED |
126 | bool "IP: equal cost multipath with caching support (EXPERIMENTAL)" | 126 | bool "IP: equal cost multipath with caching support (EXPERIMENTAL)" |
127 | depends on: IP_ROUTE_MULTIPATH | 127 | depends on IP_ROUTE_MULTIPATH |
128 | help | 128 | help |
129 | Normally, equal cost multipath routing is not supported by the | 129 | Normally, equal cost multipath routing is not supported by the |
130 | routing cache. If you say Y here, alternative routes are cached | 130 | routing cache. If you say Y here, alternative routes are cached |
diff --git a/net/ipv4/Makefile b/net/ipv4/Makefile index 5718cdb3a61e..55dc6cca1e7b 100644 --- a/net/ipv4/Makefile +++ b/net/ipv4/Makefile | |||
@@ -2,7 +2,7 @@ | |||
2 | # Makefile for the Linux TCP/IP (INET) layer. | 2 | # Makefile for the Linux TCP/IP (INET) layer. |
3 | # | 3 | # |
4 | 4 | ||
5 | obj-y := utils.o route.o inetpeer.o protocol.o \ | 5 | obj-y := route.o inetpeer.o protocol.o \ |
6 | ip_input.o ip_fragment.o ip_forward.o ip_options.o \ | 6 | ip_input.o ip_fragment.o ip_forward.o ip_options.o \ |
7 | ip_output.o ip_sockglue.o \ | 7 | ip_output.o ip_sockglue.o \ |
8 | tcp.o tcp_input.o tcp_output.o tcp_timer.o tcp_ipv4.o \ | 8 | tcp.o tcp_input.o tcp_output.o tcp_timer.o tcp_ipv4.o \ |
diff --git a/net/ipv4/netfilter/ip_conntrack_core.c b/net/ipv4/netfilter/ip_conntrack_core.c index 63bf88264980..86f04e41dd8e 100644 --- a/net/ipv4/netfilter/ip_conntrack_core.c +++ b/net/ipv4/netfilter/ip_conntrack_core.c | |||
@@ -510,7 +510,7 @@ init_conntrack(const struct ip_conntrack_tuple *tuple, | |||
510 | /* Welcome, Mr. Bond. We've been expecting you... */ | 510 | /* Welcome, Mr. Bond. We've been expecting you... */ |
511 | __set_bit(IPS_EXPECTED_BIT, &conntrack->status); | 511 | __set_bit(IPS_EXPECTED_BIT, &conntrack->status); |
512 | conntrack->master = exp->master; | 512 | conntrack->master = exp->master; |
513 | #if CONFIG_IP_NF_CONNTRACK_MARK | 513 | #ifdef CONFIG_IP_NF_CONNTRACK_MARK |
514 | conntrack->mark = exp->master->mark; | 514 | conntrack->mark = exp->master->mark; |
515 | #endif | 515 | #endif |
516 | nf_conntrack_get(&conntrack->master->ct_general); | 516 | nf_conntrack_get(&conntrack->master->ct_general); |
diff --git a/net/ipv4/utils.c b/net/ipv4/utils.c deleted file mode 100644 index 6aecd7a43534..000000000000 --- a/net/ipv4/utils.c +++ /dev/null | |||
@@ -1,59 +0,0 @@ | |||
1 | /* | ||
2 | * INET An implementation of the TCP/IP protocol suite for the LINUX | ||
3 | * operating system. INET is implemented using the BSD Socket | ||
4 | * interface as the means of communication with the user level. | ||
5 | * | ||
6 | * Various kernel-resident INET utility functions; mainly | ||
7 | * for format conversion and debugging output. | ||
8 | * | ||
9 | * Version: $Id: utils.c,v 1.8 2000/10/03 07:29:01 anton Exp $ | ||
10 | * | ||
11 | * Author: Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG> | ||
12 | * | ||
13 | * Fixes: | ||
14 | * Alan Cox : verify_area check. | ||
15 | * Alan Cox : removed old debugging. | ||
16 | * Andi Kleen : add net_ratelimit() | ||
17 | * | ||
18 | * This program is free software; you can redistribute it and/or | ||
19 | * modify it under the terms of the GNU General Public License | ||
20 | * as published by the Free Software Foundation; either version | ||
21 | * 2 of the License, or (at your option) any later version. | ||
22 | */ | ||
23 | |||
24 | #include <linux/module.h> | ||
25 | #include <linux/types.h> | ||
26 | #include <asm/byteorder.h> | ||
27 | |||
28 | /* | ||
29 | * Convert an ASCII string to binary IP. | ||
30 | */ | ||
31 | |||
32 | __u32 in_aton(const char *str) | ||
33 | { | ||
34 | unsigned long l; | ||
35 | unsigned int val; | ||
36 | int i; | ||
37 | |||
38 | l = 0; | ||
39 | for (i = 0; i < 4; i++) | ||
40 | { | ||
41 | l <<= 8; | ||
42 | if (*str != '\0') | ||
43 | { | ||
44 | val = 0; | ||
45 | while (*str != '\0' && *str != '.') | ||
46 | { | ||
47 | val *= 10; | ||
48 | val += *str - '0'; | ||
49 | str++; | ||
50 | } | ||
51 | l |= val; | ||
52 | if (*str != '\0') | ||
53 | str++; | ||
54 | } | ||
55 | } | ||
56 | return(htonl(l)); | ||
57 | } | ||
58 | |||
59 | EXPORT_SYMBOL(in_aton); | ||