Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
b62bd852
Commit
b62bd852
authored
Aug 02, 2003
by
David S. Miller
Browse files
Options
Browse Files
Download
Plain Diff
Merge nuts.ninka.net:/home/davem/src/BK/network-2.5
into nuts.ninka.net:/home/davem/src/BK/net-2.5
parents
b86422d7
b88d3971
Changes
9
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
153 additions
and
150 deletions
+153
-150
drivers/net/sungem.c
drivers/net/sungem.c
+4
-4
include/linux/skbuff.h
include/linux/skbuff.h
+2
-2
net/Kconfig
net/Kconfig
+123
-116
net/atm/Makefile
net/atm/Makefile
+1
-1
net/core/netfilter.c
net/core/netfilter.c
+12
-13
net/decnet/Kconfig
net/decnet/Kconfig
+0
-2
net/ipv4/Kconfig
net/ipv4/Kconfig
+0
-1
net/ipv6/Kconfig
net/ipv6/Kconfig
+0
-1
net/netsyms.c
net/netsyms.c
+11
-10
No files found.
drivers/net/sungem.c
View file @
b62bd852
...
...
@@ -2101,17 +2101,14 @@ static int gem_open(struct net_device *dev)
gp
->
hw_running
=
1
;
}
spin_lock_irq
(
&
gp
->
lock
);
/* We can now request the interrupt as we know it's masked
* on the controller
*/
if
(
request_irq
(
gp
->
pdev
->
irq
,
gem_interrupt
,
SA_SHIRQ
,
dev
->
name
,
(
void
*
)
dev
))
{
spin_unlock_irq
(
&
gp
->
lock
);
printk
(
KERN_ERR
"%s: failed to request irq !
\n
"
,
gp
->
dev
->
name
);
spin_lock_irq
(
&
gp
->
lock
);
#ifdef CONFIG_PPC_PMAC
if
(
!
hw_was_up
&&
gp
->
pdev
->
vendor
==
PCI_VENDOR_ID_APPLE
)
gem_apple_powerdown
(
gp
);
...
...
@@ -2120,10 +2117,13 @@ static int gem_open(struct net_device *dev)
gp
->
pm_timer
.
expires
=
jiffies
+
10
*
HZ
;
add_timer
(
&
gp
->
pm_timer
);
up
(
&
gp
->
pm_sem
);
spin_unlock_irq
(
&
gp
->
lock
);
return
-
EAGAIN
;
}
spin_lock_irq
(
&
gp
->
lock
);
/* Allocate & setup ring buffers */
gem_init_rings
(
gp
);
...
...
include/linux/skbuff.h
View file @
b62bd852
...
...
@@ -904,9 +904,9 @@ static inline unsigned char *pskb_pull(struct sk_buff *skb, unsigned int len)
static
inline
int
pskb_may_pull
(
struct
sk_buff
*
skb
,
unsigned
int
len
)
{
if
(
l
en
<=
skb_headlen
(
skb
))
if
(
l
ikely
(
len
<=
skb_headlen
(
skb
)
))
return
1
;
if
(
len
>
skb
->
len
)
if
(
unlikely
(
len
>
skb
->
len
)
)
return
0
;
return
__pskb_pull_tail
(
skb
,
len
-
skb_headlen
(
skb
))
!=
NULL
;
}
...
...
net/Kconfig
View file @
b62bd852
...
...
@@ -58,66 +58,6 @@ config NETLINK_DEV
the real netlink socket.
This is a backward compatibility option, choose Y for now.
config NETFILTER
bool "Network packet filtering (replaces ipchains)"
---help---
Netfilter is a framework for filtering and mangling network packets
that pass through your Linux box.
The most common use of packet filtering is to run your Linux box as
a firewall protecting a local network from the Internet. The type of
firewall provided by this kernel support is called a "packet
filter", which means that it can reject individual network packets
based on type, source, destination etc. The other kind of firewall,
a "proxy-based" one, is more secure but more intrusive and more
bothersome to set up; it inspects the network traffic much more
closely, modifies it and has knowledge about the higher level
protocols, which a packet filter lacks. Moreover, proxy-based
firewalls often require changes to the programs running on the local
clients. Proxy-based firewalls don't need support by the kernel, but
they are often combined with a packet filter, which only works if
you say Y here.
You should also say Y here if you intend to use your Linux box as
the gateway to the Internet for a local network of machines without
globally valid IP addresses. This is called "masquerading": if one
of the computers on your local network wants to send something to
the outside, your box can "masquerade" as that computer, i.e. it
forwards the traffic to the intended outside destination, but
modifies the packets to make it look like they came from the
firewall box itself. It works both ways: if the outside host
replies, the Linux box will silently forward the traffic to the
correct local computer. This way, the computers on your local net
are completely invisible to the outside world, even though they can
reach the outside and can receive replies. It is even possible to
run globally visible servers from within a masqueraded local network
using a mechanism called portforwarding. Masquerading is also often
called NAT (Network Address Translation).
Another use of Netfilter is in transparent proxying: if a machine on
the local network tries to connect to an outside host, your Linux
box can transparently forward the traffic to a local server,
typically a caching proxy server.
Various modules exist for netfilter which replace the previous
masquerading (ipmasqadm), packet filtering (ipchains), transparent
proxying, and portforwarding mechanisms. Please see
<file:Documentation/Changes> under "iptables" for the location of
these packages.
Make sure to say N to "Fast switching" below if you intend to say Y
here, as Fast switching currently bypasses netfilter.
Chances are that you should say Y here if you compile a kernel which
will run as a router and N for regular hosts. If unsure, say N.
config NETFILTER_DEBUG
bool "Network packet filtering debugging"
depends on NETFILTER
help
You can say Y here if you want to get additional messages useful in
debugging the netfilter code.
config UNIX
tristate "Unix domain sockets"
---help---
...
...
@@ -208,6 +148,129 @@ config IPV6
source "net/ipv6/Kconfig"
config DECNET
tristate "DECnet Support"
---help---
The DECnet networking protocol was used in many products made by
Digital (now Compaq). It provides reliable stream and sequenced
packet communications over which run a variety of services similar
to those which run over TCP/IP.
To find some tools to use with the kernel layer support, please
look at Patrick Caulfield's web site:
<http://linux.dreamtime.org/decnet/>.
More detailed documentation is available in
<file:Documentation/networking/decnet.txt>.
Be sure to say Y to "/proc file system support" and "Sysctl support"
below when using DECnet, since you will need sysctl support to aid
in configuration at run time.
The DECnet code is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module is called decnet.
source "net/decnet/Kconfig"
config BRIDGE
tristate "802.1d Ethernet Bridging"
depends on INET
---help---
If you say Y here, then your Linux box will be able to act as an
Ethernet bridge, which means that the different Ethernet segments it
is connected to will appear as one Ethernet to the participants.
Several such bridges can work together to create even larger
networks of Ethernets using the IEEE 802.1 spanning tree algorithm.
As this is a standard, Linux bridges will cooperate properly with
other third party bridge products.
In order to use the Ethernet bridge, you'll need the bridge
configuration tools; see <file:Documentation/networking/bridge.txt>
for location. Please read the Bridge mini-HOWTO for more
information.
If you enable iptables support along with the bridge support then you
turn your bridge into a bridging firewall.
iptables will then see the IP packets being bridged, so you need to
take this into account when setting up your firewall rules.
If you want to compile this code as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt>. The module
will be called bridge.
If unsure, say N.
menuconfig NETFILTER
bool "Network packet filtering (replaces ipchains)"
---help---
Netfilter is a framework for filtering and mangling network packets
that pass through your Linux box.
The most common use of packet filtering is to run your Linux box as
a firewall protecting a local network from the Internet. The type of
firewall provided by this kernel support is called a "packet
filter", which means that it can reject individual network packets
based on type, source, destination etc. The other kind of firewall,
a "proxy-based" one, is more secure but more intrusive and more
bothersome to set up; it inspects the network traffic much more
closely, modifies it and has knowledge about the higher level
protocols, which a packet filter lacks. Moreover, proxy-based
firewalls often require changes to the programs running on the local
clients. Proxy-based firewalls don't need support by the kernel, but
they are often combined with a packet filter, which only works if
you say Y here.
You should also say Y here if you intend to use your Linux box as
the gateway to the Internet for a local network of machines without
globally valid IP addresses. This is called "masquerading": if one
of the computers on your local network wants to send something to
the outside, your box can "masquerade" as that computer, i.e. it
forwards the traffic to the intended outside destination, but
modifies the packets to make it look like they came from the
firewall box itself. It works both ways: if the outside host
replies, the Linux box will silently forward the traffic to the
correct local computer. This way, the computers on your local net
are completely invisible to the outside world, even though they can
reach the outside and can receive replies. It is even possible to
run globally visible servers from within a masqueraded local network
using a mechanism called portforwarding. Masquerading is also often
called NAT (Network Address Translation).
Another use of Netfilter is in transparent proxying: if a machine on
the local network tries to connect to an outside host, your Linux
box can transparently forward the traffic to a local server,
typically a caching proxy server.
Various modules exist for netfilter which replace the previous
masquerading (ipmasqadm), packet filtering (ipchains), transparent
proxying, and portforwarding mechanisms. Please see
<file:Documentation/Changes> under "iptables" for the location of
these packages.
Make sure to say N to "Fast switching" below if you intend to say Y
here, as Fast switching currently bypasses netfilter.
Chances are that you should say Y here if you compile a kernel which
will run as a router and N for regular hosts. If unsure, say N.
if NETFILTER
config NETFILTER_DEBUG
bool "Network packet filtering debugging"
depends on NETFILTER
help
You can say Y here if you want to get additional messages useful in
debugging the netfilter code.
source "net/ipv4/netfilter/Kconfig"
source "net/ipv6/netfilter/Kconfig"
source "net/decnet/netfilter/Kconfig"
source "net/bridge/netfilter/Kconfig"
endif
source "net/xfrm/Kconfig"
source "net/sctp/Kconfig"
...
...
@@ -370,62 +433,6 @@ config ATALK
source "drivers/net/appletalk/Kconfig"
config DECNET
tristate "DECnet Support"
---help---
The DECnet networking protocol was used in many products made by
Digital (now Compaq). It provides reliable stream and sequenced
packet communications over which run a variety of services similar
to those which run over TCP/IP.
To find some tools to use with the kernel layer support, please
look at Patrick Caulfield's web site:
<http://linux.dreamtime.org/decnet/>.
More detailed documentation is available in
<file:Documentation/networking/decnet.txt>.
Be sure to say Y to "/proc file system support" and "Sysctl support"
below when using DECnet, since you will need sysctl support to aid
in configuration at run time.
The DECnet code is also available as a module ( = code which can be
inserted in and removed from the running kernel whenever you want).
The module is called decnet.
source "net/decnet/Kconfig"
config BRIDGE
tristate "802.1d Ethernet Bridging"
depends on INET
---help---
If you say Y here, then your Linux box will be able to act as an
Ethernet bridge, which means that the different Ethernet segments it
is connected to will appear as one Ethernet to the participants.
Several such bridges can work together to create even larger
networks of Ethernets using the IEEE 802.1 spanning tree algorithm.
As this is a standard, Linux bridges will cooperate properly with
other third party bridge products.
In order to use the Ethernet bridge, you'll need the bridge
configuration tools; see <file:Documentation/networking/bridge.txt>
for location. Please read the Bridge mini-HOWTO for more
information.
If you enable iptables support along with the bridge support then you
turn your bridge into a bridging firewall.
iptables will then see the IP packets being bridged, so you need to
take this into account when setting up your firewall rules.
If you want to compile this code as a module ( = code which can be
inserted in and removed from the running kernel whenever you want),
say M here and read <file:Documentation/modules.txt>. The module
will be called bridge.
If unsure, say N.
source "net/bridge/netfilter/Kconfig"
config X25
tristate "CCITT X.25 Packet Layer (EXPERIMENTAL)"
depends on EXPERIMENTAL
...
...
net/atm/Makefile
View file @
b62bd852
...
...
@@ -10,7 +10,7 @@ obj-$(CONFIG_ATM_CLIP) += clip.o
atm-$(subst
m,y,
$(CONFIG_ATM_CLIP))
+=
ipcommon.o
obj-$(CONFIG_ATM_BR2684)
+=
br2684.o
atm-$(subst
m,y,
$(CONFIG_ATM_BR2684))
+=
ipcommon.o
atm-$(subst
m,y,
$CONFIG_NET_SCH_ATM))
+=
ipcommon.o
atm-$(subst
m,y,
$
(
CONFIG_NET_SCH_ATM))
+=
ipcommon.o
atm-$(CONFIG_PROC_FS)
+=
proc.o
obj-$(CONFIG_ATM_LANE)
+=
lec.o
...
...
net/core/netfilter.c
View file @
b62bd852
...
...
@@ -557,6 +557,18 @@ void nf_reinject(struct sk_buff *skb, struct nf_info *info,
rcu_read_lock
();
/* Release those devices we held, or Alexey will kill me. */
if
(
info
->
indev
)
dev_put
(
info
->
indev
);
if
(
info
->
outdev
)
dev_put
(
info
->
outdev
);
#if defined(CONFIG_BRIDGE) || defined(CONFIG_BRIDGE_MODULE)
if
(
skb
->
nf_bridge
)
{
if
(
skb
->
nf_bridge
->
physindev
)
dev_put
(
skb
->
nf_bridge
->
physindev
);
if
(
skb
->
nf_bridge
->
physoutdev
)
dev_put
(
skb
->
nf_bridge
->
physoutdev
);
}
#endif
/* Drop reference to owner of hook which queued us. */
module_put
(
info
->
elem
->
owner
);
...
...
@@ -599,19 +611,6 @@ void nf_reinject(struct sk_buff *skb, struct nf_info *info,
}
rcu_read_unlock
();
/* Release those devices we held, or Alexey will kill me. */
if
(
info
->
indev
)
dev_put
(
info
->
indev
);
if
(
info
->
outdev
)
dev_put
(
info
->
outdev
);
#if defined(CONFIG_BRIDGE) || defined(CONFIG_BRIDGE_MODULE)
if
(
skb
->
nf_bridge
)
{
if
(
skb
->
nf_bridge
->
physindev
)
dev_put
(
skb
->
nf_bridge
->
physindev
);
if
(
skb
->
nf_bridge
->
physoutdev
)
dev_put
(
skb
->
nf_bridge
->
physoutdev
);
}
#endif
if
(
verdict
==
NF_DROP
)
kfree_skb
(
skb
);
...
...
net/decnet/Kconfig
View file @
b62bd852
...
...
@@ -35,5 +35,3 @@ config DECNET_ROUTE_FWMARK
packets with different FWMARK ("firewalling mark") values
(see ipchains(8), "-m" argument).
source "net/decnet/netfilter/Kconfig"
net/ipv4/Kconfig
View file @
b62bd852
...
...
@@ -374,6 +374,5 @@ config INET_IPCOMP
If unsure, say Y.
source "net/ipv4/netfilter/Kconfig"
source "net/ipv4/ipvs/Kconfig"
net/ipv6/Kconfig
View file @
b62bd852
...
...
@@ -63,4 +63,3 @@ config IPV6_TUNNEL
If unsure, say N.
source "net/ipv6/netfilter/Kconfig"
net/netsyms.c
View file @
b62bd852
...
...
@@ -514,20 +514,11 @@ EXPORT_SYMBOL(netlink_post);
#endif
EXPORT_SYMBOL
(
rtattr_parse
);
EXPORT_SYMBOL
(
rtnetlink_links
);
EXPORT_SYMBOL
(
__rta_fill
);
EXPORT_SYMBOL
(
rtnetlink_dump_ifinfo
);
EXPORT_SYMBOL
(
rtnetlink_put_metrics
);
EXPORT_SYMBOL
(
rtnl
);
EXPORT_SYMBOL
(
neigh_delete
);
EXPORT_SYMBOL
(
neigh_add
);
EXPORT_SYMBOL
(
neigh_dump_info
);
EXPORT_SYMBOL
(
dev_set_allmulti
);
EXPORT_SYMBOL
(
dev_set_promiscuity
);
EXPORT_SYMBOL
(
rtnl_sem
);
EXPORT_SYMBOL
(
rtnl_lock
);
EXPORT_SYMBOL
(
rtnl_unlock
);
/* ABI emulation layers need this */
EXPORT_SYMBOL
(
move_addr_to_kernel
);
...
...
@@ -535,7 +526,6 @@ EXPORT_SYMBOL(move_addr_to_user);
/* Used by at least ipip.c. */
EXPORT_SYMBOL
(
ipv4_config
);
EXPORT_SYMBOL
(
dev_open
);
/* Used by other modules */
EXPORT_SYMBOL
(
xrlim_allow
);
...
...
@@ -611,12 +601,23 @@ EXPORT_SYMBOL(netdev_fc_xoff);
#endif
EXPORT_SYMBOL
(
dev_base
);
EXPORT_SYMBOL
(
dev_base_lock
);
EXPORT_SYMBOL
(
dev_open
);
EXPORT_SYMBOL
(
dev_close
);
EXPORT_SYMBOL
(
dev_mc_add
);
EXPORT_SYMBOL
(
dev_mc_delete
);
EXPORT_SYMBOL
(
dev_mc_upload
);
EXPORT_SYMBOL
(
dev_set_allmulti
);
EXPORT_SYMBOL
(
dev_set_promiscuity
);
EXPORT_SYMBOL
(
__kill_fasync
);
EXPORT_SYMBOL
(
rtnl
);
EXPORT_SYMBOL
(
rtnetlink_links
);
EXPORT_SYMBOL
(
rtnetlink_dump_ifinfo
);
EXPORT_SYMBOL
(
rtnetlink_put_metrics
);
EXPORT_SYMBOL
(
rtnl_sem
);
EXPORT_SYMBOL
(
rtnl_lock
);
EXPORT_SYMBOL
(
rtnl_unlock
);
#ifdef CONFIG_HIPPI
EXPORT_SYMBOL
(
hippi_type_trans
);
#endif
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment