aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/networking
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/networking')
-rw-r--r--Documentation/networking/README.ipw22002
-rw-r--r--Documentation/networking/bonding.txt68
-rw-r--r--Documentation/networking/dccp.txt32
-rw-r--r--Documentation/networking/driver.txt2
-rw-r--r--Documentation/networking/generic-hdlc.txt8
-rw-r--r--Documentation/networking/ip-sysctl.txt6
-rw-r--r--Documentation/networking/mac80211_hwsim/README9
-rw-r--r--Documentation/networking/netdevices.txt2
-rw-r--r--Documentation/networking/regulatory.txt22
9 files changed, 109 insertions, 42 deletions
diff --git a/Documentation/networking/README.ipw2200 b/Documentation/networking/README.ipw2200
index 4f2a40f1dbc6..80c728522c4c 100644
--- a/Documentation/networking/README.ipw2200
+++ b/Documentation/networking/README.ipw2200
@@ -147,7 +147,7 @@ Where the supported parameter are:
147 driver. If disabled, the driver will not attempt to scan 147 driver. If disabled, the driver will not attempt to scan
148 for and associate to a network until it has been configured with 148 for and associate to a network until it has been configured with
149 one or more properties for the target network, for example configuring 149 one or more properties for the target network, for example configuring
150 the network SSID. Default is 1 (auto-associate) 150 the network SSID. Default is 0 (do not auto-associate)
151 151
152 Example: % modprobe ipw2200 associate=0 152 Example: % modprobe ipw2200 associate=0
153 153
diff --git a/Documentation/networking/bonding.txt b/Documentation/networking/bonding.txt
index 688dfe1e6b70..5ede7473b425 100644
--- a/Documentation/networking/bonding.txt
+++ b/Documentation/networking/bonding.txt
@@ -194,6 +194,48 @@ or, for backwards compatibility, the option value. E.g.,
194 194
195 The parameters are as follows: 195 The parameters are as follows:
196 196
197ad_select
198
199 Specifies the 802.3ad aggregation selection logic to use. The
200 possible values and their effects are:
201
202 stable or 0
203
204 The active aggregator is chosen by largest aggregate
205 bandwidth.
206
207 Reselection of the active aggregator occurs only when all
208 slaves of the active aggregator are down or the active
209 aggregator has no slaves.
210
211 This is the default value.
212
213 bandwidth or 1
214
215 The active aggregator is chosen by largest aggregate
216 bandwidth. Reselection occurs if:
217
218 - A slave is added to or removed from the bond
219
220 - Any slave's link state changes
221
222 - Any slave's 802.3ad association state changes
223
224 - The bond's adminstrative state changes to up
225
226 count or 2
227
228 The active aggregator is chosen by the largest number of
229 ports (slaves). Reselection occurs as described under the
230 "bandwidth" setting, above.
231
232 The bandwidth and count selection policies permit failover of
233 802.3ad aggregations when partial failure of the active aggregator
234 occurs. This keeps the aggregator with the highest availability
235 (either in bandwidth or in number of ports) active at all times.
236
237 This option was added in bonding version 3.4.0.
238
197arp_interval 239arp_interval
198 240
199 Specifies the ARP link monitoring frequency in milliseconds. 241 Specifies the ARP link monitoring frequency in milliseconds.
@@ -551,6 +593,16 @@ num_grat_arp
551 affects only the active-backup mode. This option was added for 593 affects only the active-backup mode. This option was added for
552 bonding version 3.3.0. 594 bonding version 3.3.0.
553 595
596num_unsol_na
597
598 Specifies the number of unsolicited IPv6 Neighbor Advertisements
599 to be issued after a failover event. One unsolicited NA is issued
600 immediately after the failover.
601
602 The valid range is 0 - 255; the default value is 1. This option
603 affects only the active-backup mode. This option was added for
604 bonding version 3.4.0.
605
554primary 606primary
555 607
556 A string (eth0, eth2, etc) specifying which slave is the 608 A string (eth0, eth2, etc) specifying which slave is the
@@ -922,17 +974,19 @@ USERCTL=no
922NETMASK, NETWORK and BROADCAST) to match your network configuration. 974NETMASK, NETWORK and BROADCAST) to match your network configuration.
923 975
924 For later versions of initscripts, such as that found with Fedora 976 For later versions of initscripts, such as that found with Fedora
9257 and Red Hat Enterprise Linux version 5 (or later), it is possible, and, 9777 (or later) and Red Hat Enterprise Linux version 5 (or later), it is possible,
926indeed, preferable, to specify the bonding options in the ifcfg-bond0 978and, indeed, preferable, to specify the bonding options in the ifcfg-bond0
927file, e.g. a line of the format: 979file, e.g. a line of the format:
928 980
929BONDING_OPTS="mode=active-backup arp_interval=60 arp_ip_target=+192.168.1.254" 981BONDING_OPTS="mode=active-backup arp_interval=60 arp_ip_target=192.168.1.254"
930 982
931 will configure the bond with the specified options. The options 983 will configure the bond with the specified options. The options
932specified in BONDING_OPTS are identical to the bonding module parameters 984specified in BONDING_OPTS are identical to the bonding module parameters
933except for the arp_ip_target field. Each target should be included as a 985except for the arp_ip_target field when using versions of initscripts older
934separate option and should be preceded by a '+' to indicate it should be 986than and 8.57 (Fedora 8) and 8.45.19 (Red Hat Enterprise Linux 5.2). When
935added to the list of queried targets, e.g., 987using older versions each target should be included as a separate option and
988should be preceded by a '+' to indicate it should be added to the list of
989queried targets, e.g.,
936 990
937 arp_ip_target=+192.168.1.1 arp_ip_target=+192.168.1.2 991 arp_ip_target=+192.168.1.1 arp_ip_target=+192.168.1.2
938 992
@@ -940,7 +994,7 @@ added to the list of queried targets, e.g.,
940options via BONDING_OPTS, it is not necessary to edit /etc/modules.conf or 994options via BONDING_OPTS, it is not necessary to edit /etc/modules.conf or
941/etc/modprobe.conf. 995/etc/modprobe.conf.
942 996
943 For older versions of initscripts that do not support 997 For even older versions of initscripts that do not support
944BONDING_OPTS, it is necessary to edit /etc/modules.conf (or 998BONDING_OPTS, it is necessary to edit /etc/modules.conf (or
945/etc/modprobe.conf, depending upon your distro) to load the bonding module 999/etc/modprobe.conf, depending upon your distro) to load the bonding module
946with your desired options when the bond0 interface is brought up. The 1000with your desired options when the bond0 interface is brought up. The
diff --git a/Documentation/networking/dccp.txt b/Documentation/networking/dccp.txt
index 39131a3c78f8..7a3bb1abb830 100644
--- a/Documentation/networking/dccp.txt
+++ b/Documentation/networking/dccp.txt
@@ -57,6 +57,24 @@ can be set before calling bind().
57DCCP_SOCKOPT_GET_CUR_MPS is read-only and retrieves the current maximum packet 57DCCP_SOCKOPT_GET_CUR_MPS is read-only and retrieves the current maximum packet
58size (application payload size) in bytes, see RFC 4340, section 14. 58size (application payload size) in bytes, see RFC 4340, section 14.
59 59
60DCCP_SOCKOPT_AVAILABLE_CCIDS is also read-only and returns the list of CCIDs
61supported by the endpoint (see include/linux/dccp.h for symbolic constants).
62The caller needs to provide a sufficiently large (> 2) array of type uint8_t.
63
64DCCP_SOCKOPT_CCID is write-only and sets both the TX and RX CCIDs at the same
65time, combining the operation of the next two socket options. This option is
66preferrable over the latter two, since often applications will use the same
67type of CCID for both directions; and mixed use of CCIDs is not currently well
68understood. This socket option takes as argument at least one uint8_t value, or
69an array of uint8_t values, which must match available CCIDS (see above). CCIDs
70must be registered on the socket before calling connect() or listen().
71
72DCCP_SOCKOPT_TX_CCID is read/write. It returns the current CCID (if set) or sets
73the preference list for the TX CCID, using the same format as DCCP_SOCKOPT_CCID.
74Please note that the getsockopt argument type here is `int', not uint8_t.
75
76DCCP_SOCKOPT_RX_CCID is analogous to DCCP_SOCKOPT_TX_CCID, but for the RX CCID.
77
60DCCP_SOCKOPT_SERVER_TIMEWAIT enables the server (listening socket) to hold 78DCCP_SOCKOPT_SERVER_TIMEWAIT enables the server (listening socket) to hold
61timewait state when closing the connection (RFC 4340, 8.3). The usual case is 79timewait state when closing the connection (RFC 4340, 8.3). The usual case is
62that the closing server sends a CloseReq, whereupon the client holds timewait 80that the closing server sends a CloseReq, whereupon the client holds timewait
@@ -115,20 +133,12 @@ retries2
115 importance for retransmitted acknowledgments and feature negotiation, 133 importance for retransmitted acknowledgments and feature negotiation,
116 data packets are never retransmitted. Analogue of tcp_retries2. 134 data packets are never retransmitted. Analogue of tcp_retries2.
117 135
118send_ndp = 1
119 Whether or not to send NDP count options (sec. 7.7.2).
120
121send_ackvec = 1
122 Whether or not to send Ack Vector options (sec. 11.5).
123
124ack_ratio = 2
125 The default Ack Ratio (sec. 11.3) to use.
126
127tx_ccid = 2 136tx_ccid = 2
128 Default CCID for the sender-receiver half-connection. 137 Default CCID for the sender-receiver half-connection. Depending on the
138 choice of CCID, the Send Ack Vector feature is enabled automatically.
129 139
130rx_ccid = 2 140rx_ccid = 2
131 Default CCID for the receiver-sender half-connection. 141 Default CCID for the receiver-sender half-connection; see tx_ccid.
132 142
133seq_window = 100 143seq_window = 100
134 The initial sequence window (sec. 7.5.2). 144 The initial sequence window (sec. 7.5.2).
diff --git a/Documentation/networking/driver.txt b/Documentation/networking/driver.txt
index ea72d2e66ca8..03283daa64fe 100644
--- a/Documentation/networking/driver.txt
+++ b/Documentation/networking/driver.txt
@@ -13,7 +13,7 @@ Transmit path guidelines:
13 static int drv_hard_start_xmit(struct sk_buff *skb, 13 static int drv_hard_start_xmit(struct sk_buff *skb,
14 struct net_device *dev) 14 struct net_device *dev)
15 { 15 {
16 struct drv *dp = dev->priv; 16 struct drv *dp = netdev_priv(dev);
17 17
18 lock_tx(dp); 18 lock_tx(dp);
19 ... 19 ...
diff --git a/Documentation/networking/generic-hdlc.txt b/Documentation/networking/generic-hdlc.txt
index 31bc8b759b75..4eb3cc40b702 100644
--- a/Documentation/networking/generic-hdlc.txt
+++ b/Documentation/networking/generic-hdlc.txt
@@ -3,15 +3,15 @@ Krzysztof Halasa <khc@pm.waw.pl>
3 3
4 4
5Generic HDLC layer currently supports: 5Generic HDLC layer currently supports:
61. Frame Relay (ANSI, CCITT, Cisco and no LMI). 61. Frame Relay (ANSI, CCITT, Cisco and no LMI)
7 - Normal (routed) and Ethernet-bridged (Ethernet device emulation) 7 - Normal (routed) and Ethernet-bridged (Ethernet device emulation)
8 interfaces can share a single PVC. 8 interfaces can share a single PVC.
9 - ARP support (no InARP support in the kernel - there is an 9 - ARP support (no InARP support in the kernel - there is an
10 experimental InARP user-space daemon available on: 10 experimental InARP user-space daemon available on:
11 http://www.kernel.org/pub/linux/utils/net/hdlc/). 11 http://www.kernel.org/pub/linux/utils/net/hdlc/).
122. raw HDLC - either IP (IPv4) interface or Ethernet device emulation. 122. raw HDLC - either IP (IPv4) interface or Ethernet device emulation
133. Cisco HDLC. 133. Cisco HDLC
144. PPP (uses syncppp.c). 144. PPP
155. X.25 (uses X.25 routines). 155. X.25 (uses X.25 routines).
16 16
17Generic HDLC is a protocol driver only - it needs a low-level driver 17Generic HDLC is a protocol driver only - it needs a low-level driver
diff --git a/Documentation/networking/ip-sysctl.txt b/Documentation/networking/ip-sysctl.txt
index d84932650fd3..c7712787933c 100644
--- a/Documentation/networking/ip-sysctl.txt
+++ b/Documentation/networking/ip-sysctl.txt
@@ -27,6 +27,12 @@ min_adv_mss - INTEGER
27 The advertised MSS depends on the first hop route MTU, but will 27 The advertised MSS depends on the first hop route MTU, but will
28 never be lower than this setting. 28 never be lower than this setting.
29 29
30rt_cache_rebuild_count - INTEGER
31 The per net-namespace route cache emergency rebuild threshold.
32 Any net-namespace having its route cache rebuilt due to
33 a hash bucket chain being too long more than this many times
34 will have its route caching disabled
35
30IP Fragmentation: 36IP Fragmentation:
31 37
32ipfrag_high_thresh - INTEGER 38ipfrag_high_thresh - INTEGER
diff --git a/Documentation/networking/mac80211_hwsim/README b/Documentation/networking/mac80211_hwsim/README
index 2ff8ccb8dc37..24ac91d56698 100644
--- a/Documentation/networking/mac80211_hwsim/README
+++ b/Documentation/networking/mac80211_hwsim/README
@@ -50,10 +50,6 @@ associates with the AP. hostapd and wpa_supplicant are used to take
50care of WPA2-PSK authentication. In addition, hostapd is also 50care of WPA2-PSK authentication. In addition, hostapd is also
51processing access point side of association. 51processing access point side of association.
52 52
53Please note that the current Linux kernel does not enable AP mode, so a
54simple patch is needed to enable AP mode selection:
55http://johannes.sipsolutions.net/patches/kernel/all/LATEST/006-allow-ap-vlan-modes.patch
56
57 53
58# Build mac80211_hwsim as part of kernel configuration 54# Build mac80211_hwsim as part of kernel configuration
59 55
@@ -65,3 +61,8 @@ hostapd hostapd.conf
65 61
66# Run wpa_supplicant (station) for wlan1 62# Run wpa_supplicant (station) for wlan1
67wpa_supplicant -Dwext -iwlan1 -c wpa_supplicant.conf 63wpa_supplicant -Dwext -iwlan1 -c wpa_supplicant.conf
64
65
66More test cases are available in hostap.git:
67git://w1.fi/srv/git/hostap.git and mac80211_hwsim/tests subdirectory
68(http://w1.fi/gitweb/gitweb.cgi?p=hostap.git;a=tree;f=mac80211_hwsim/tests)
diff --git a/Documentation/networking/netdevices.txt b/Documentation/networking/netdevices.txt
index d0f71fc7f782..a2ab6a0b116d 100644
--- a/Documentation/networking/netdevices.txt
+++ b/Documentation/networking/netdevices.txt
@@ -18,7 +18,7 @@ There are routines in net_init.c to handle the common cases of
18alloc_etherdev, alloc_netdev. These reserve extra space for driver 18alloc_etherdev, alloc_netdev. These reserve extra space for driver
19private data which gets freed when the network device is freed. If 19private data which gets freed when the network device is freed. If
20separately allocated data is attached to the network device 20separately allocated data is attached to the network device
21(dev->priv) then it is up to the module exit handler to free that. 21(netdev_priv(dev)) then it is up to the module exit handler to free that.
22 22
23MTU 23MTU
24=== 24===
diff --git a/Documentation/networking/regulatory.txt b/Documentation/networking/regulatory.txt
index a96989a8ff35..dcf31648414a 100644
--- a/Documentation/networking/regulatory.txt
+++ b/Documentation/networking/regulatory.txt
@@ -131,11 +131,13 @@ are expected to do this during initialization.
131 131
132 r = zd_reg2alpha2(mac->regdomain, alpha2); 132 r = zd_reg2alpha2(mac->regdomain, alpha2);
133 if (!r) 133 if (!r)
134 regulatory_hint(hw->wiphy, alpha2, NULL); 134 regulatory_hint(hw->wiphy, alpha2);
135 135
136Example code - drivers providing a built in regulatory domain: 136Example code - drivers providing a built in regulatory domain:
137-------------------------------------------------------------- 137--------------------------------------------------------------
138 138
139[NOTE: This API is not currently available, it can be added when required]
140
139If you have regulatory information you can obtain from your 141If you have regulatory information you can obtain from your
140driver and you *need* to use this we let you build a regulatory domain 142driver and you *need* to use this we let you build a regulatory domain
141structure and pass it to the wireless core. To do this you should 143structure and pass it to the wireless core. To do this you should
@@ -167,7 +169,6 @@ struct ieee80211_regdomain mydriver_jp_regdom = {
167 169
168Then in some part of your code after your wiphy has been registered: 170Then in some part of your code after your wiphy has been registered:
169 171
170 int r;
171 struct ieee80211_regdomain *rd; 172 struct ieee80211_regdomain *rd;
172 int size_of_regd; 173 int size_of_regd;
173 int num_rules = mydriver_jp_regdom.n_reg_rules; 174 int num_rules = mydriver_jp_regdom.n_reg_rules;
@@ -178,17 +179,12 @@ Then in some part of your code after your wiphy has been registered:
178 179
179 rd = kzalloc(size_of_regd, GFP_KERNEL); 180 rd = kzalloc(size_of_regd, GFP_KERNEL);
180 if (!rd) 181 if (!rd)
181 return -ENOMEM; 182 return -ENOMEM;
182 183
183 memcpy(rd, &mydriver_jp_regdom, sizeof(struct ieee80211_regdomain)); 184 memcpy(rd, &mydriver_jp_regdom, sizeof(struct ieee80211_regdomain));
184 185
185 for (i=0; i < num_rules; i++) { 186 for (i=0; i < num_rules; i++)
186 memcpy(&rd->reg_rules[i], &mydriver_jp_regdom.reg_rules[i], 187 memcpy(&rd->reg_rules[i],
187 sizeof(struct ieee80211_reg_rule)); 188 &mydriver_jp_regdom.reg_rules[i],
188 } 189 sizeof(struct ieee80211_reg_rule));
189 r = regulatory_hint(hw->wiphy, NULL, rd); 190 regulatory_struct_hint(rd);
190 if (r) {
191 kfree(rd);
192 return r;
193 }
194