提交 839c5d25 编写于 作者: L Linus Torvalds

Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6

......@@ -23,9 +23,12 @@ config NETDEVICES
If unsure, say Y.
# All the following symbols are dependent on NETDEVICES - do not repeat
# that for each of the symbols.
if NETDEVICES
config DUMMY
tristate "Dummy net driver support"
depends on NETDEVICES
---help---
This is essentially a bit-bucket device (i.e. traffic you send to
this device is consigned into oblivion) with a configurable IP
......@@ -45,7 +48,6 @@ config DUMMY
config BONDING
tristate "Bonding driver support"
depends on NETDEVICES
depends on INET
---help---
Say 'Y' or 'M' if you wish to be able to 'bond' multiple Ethernet
......@@ -63,7 +65,6 @@ config BONDING
config EQUALIZER
tristate "EQL (serial line load balancing) support"
depends on NETDEVICES
---help---
If you have two serial connections to some other computer (this
usually requires two modems and two telephone lines) and you use
......@@ -83,7 +84,6 @@ config EQUALIZER
config TUN
tristate "Universal TUN/TAP device driver support"
depends on NETDEVICES
select CRC32
---help---
TUN/TAP provides packet reception and transmission for user space
......@@ -107,7 +107,7 @@ config TUN
config NET_SB1000
tristate "General Instruments Surfboard 1000"
depends on NETDEVICES && PNP
depends on PNP
---help---
This is a driver for the General Instrument (also known as
NextLevel) SURFboard 1000 internal
......@@ -129,16 +129,14 @@ config NET_SB1000
If you don't have this card, of course say N.
if NETDEVICES
source "drivers/net/arcnet/Kconfig"
endif
#
# Ethernet
#
menu "Ethernet (10 or 100Mbit)"
depends on NETDEVICES && !UML
depends on !UML
config NET_ETHERNET
bool "Ethernet (10 or 100Mbit)"
......@@ -1137,7 +1135,7 @@ config IBMLANA
config IBMVETH
tristate "IBM LAN Virtual Ethernet support"
depends on NETDEVICES && NET_ETHERNET && PPC_PSERIES
depends on NET_ETHERNET && PPC_PSERIES
---help---
This driver supports virtual ethernet adapters on newer IBM iSeries
and pSeries systems.
......@@ -1760,7 +1758,7 @@ endmenu
#
menu "Ethernet (1000 Mbit)"
depends on NETDEVICES && !UML
depends on !UML
config ACENIC
tristate "Alteon AceNIC/3Com 3C985/NetGear GA620 Gigabit support"
......@@ -2091,7 +2089,7 @@ endmenu
#
menu "Ethernet (10000 Mbit)"
depends on NETDEVICES && !UML
depends on !UML
config IXGB
tristate "Intel(R) PRO/10GbE support"
......@@ -2186,11 +2184,11 @@ source "drivers/s390/net/Kconfig"
config ISERIES_VETH
tristate "iSeries Virtual Ethernet driver support"
depends on NETDEVICES && PPC_ISERIES
depends on PPC_ISERIES
config FDDI
bool "FDDI driver support"
depends on NETDEVICES && (PCI || EISA)
depends on (PCI || EISA)
help
Fiber Distributed Data Interface is a high speed local area network
design; essentially a replacement for high speed Ethernet. FDDI can
......@@ -2239,7 +2237,7 @@ config SKFP
config HIPPI
bool "HIPPI driver support (EXPERIMENTAL)"
depends on NETDEVICES && EXPERIMENTAL && INET && PCI
depends on EXPERIMENTAL && INET && PCI
help
HIgh Performance Parallel Interface (HIPPI) is a 800Mbit/sec and
1600Mbit/sec dual-simplex switched or point-to-point network. HIPPI
......@@ -2271,7 +2269,7 @@ config ROADRUNNER_LARGE_RINGS
config PLIP
tristate "PLIP (parallel port) support"
depends on NETDEVICES && PARPORT
depends on PARPORT
---help---
PLIP (Parallel Line Internet Protocol) is used to create a
reasonably fast mini network consisting of two (or, rarely, more)
......@@ -2307,7 +2305,6 @@ config PLIP
config PPP
tristate "PPP (point-to-point protocol) support"
depends on NETDEVICES
---help---
PPP (Point to Point Protocol) is a newer and better SLIP. It serves
the same purpose: sending Internet traffic over telephone (and other
......@@ -2443,7 +2440,6 @@ config PPPOATM
config SLIP
tristate "SLIP (serial line) support"
depends on NETDEVICES
---help---
Say Y if you intend to use SLIP or CSLIP (compressed SLIP) to
connect to your Internet service provider or to connect to some
......@@ -2510,7 +2506,7 @@ config SLIP_MODE_SLIP6
config NET_FC
bool "Fibre Channel driver support"
depends on NETDEVICES && SCSI && PCI
depends on SCSI && PCI
help
Fibre Channel is a high speed serial protocol mainly used to connect
large storage devices to the computer; it is compatible with and
......@@ -2523,7 +2519,7 @@ config NET_FC
config SHAPER
tristate "Traffic Shaper (EXPERIMENTAL)"
depends on NETDEVICES && EXPERIMENTAL
depends on EXPERIMENTAL
---help---
The traffic shaper is a virtual network device that allows you to
limit the rate of outgoing data flow over some other network device.
......@@ -2544,11 +2540,13 @@ config SHAPER
config NETCONSOLE
tristate "Network console logging support (EXPERIMENTAL)"
depends on NETDEVICES && 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.
endif #NETDEVICES
config NETPOLL
def_bool NETCONSOLE
......
......@@ -206,13 +206,14 @@ int sock_setsockopt(struct socket *sock, int level, int optname,
*/
#ifdef SO_DONTLINGER /* Compatibility item... */
switch (optname) {
case SO_DONTLINGER:
sock_reset_flag(sk, SOCK_LINGER);
return 0;
if (optname == SO_DONTLINGER) {
lock_sock(sk);
sock_reset_flag(sk, SOCK_LINGER);
release_sock(sk);
return 0;
}
#endif
#endif
if(optlen<sizeof(int))
return(-EINVAL);
......
......@@ -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)
......@@ -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);
......@@ -124,7 +124,7 @@ config IP_ROUTE_MULTIPATH
config IP_ROUTE_MULTIPATH_CACHED
bool "IP: equal cost multipath with caching support (EXPERIMENTAL)"
depends on: IP_ROUTE_MULTIPATH
depends on IP_ROUTE_MULTIPATH
help
Normally, equal cost multipath routing is not supported by the
routing cache. If you say Y here, alternative routes are cached
......
......@@ -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 \
......
......@@ -510,7 +510,7 @@ init_conntrack(const struct ip_conntrack_tuple *tuple,
/* Welcome, Mr. Bond. We've been expecting you... */
__set_bit(IPS_EXPECTED_BIT, &conntrack->status);
conntrack->master = exp->master;
#if CONFIG_IP_NF_CONNTRACK_MARK
#ifdef CONFIG_IP_NF_CONNTRACK_MARK
conntrack->mark = exp->master->mark;
#endif
nf_conntrack_get(&conntrack->master->ct_general);
......
/*
* 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, <waltje@uWalt.NL.Mugnet.ORG>
*
* 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);
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册