diff options
author | asmodai <asmodai@FreeBSD.org> | 2001-09-22 12:34:19 +0000 |
---|---|---|
committer | asmodai <asmodai@FreeBSD.org> | 2001-09-22 12:34:19 +0000 |
commit | 7f887c6ea4608c670b461aafcc206c38a47e0a6d (patch) | |
tree | 9ad8690a83c883d42a021880c075a264c5fad7b0 /share/man/man9/ifnet.9 | |
parent | b78a2af2f6f5c077ba100abb60e3e4bf0980f5e4 (diff) | |
download | FreeBSD-src-7f887c6ea4608c670b461aafcc206c38a47e0a6d.zip FreeBSD-src-7f887c6ea4608c670b461aafcc206c38a47e0a6d.tar.gz |
Commit descriptions for the interface capabilities support.
Diffstat (limited to 'share/man/man9/ifnet.9')
-rw-r--r-- | share/man/man9/ifnet.9 | 43 |
1 files changed, 40 insertions, 3 deletions
diff --git a/share/man/man9/ifnet.9 b/share/man/man9/ifnet.9 index b015ba0..c8b89ff 100644 --- a/share/man/man9/ifnet.9 +++ b/share/man/man9/ifnet.9 @@ -219,7 +219,7 @@ The fields of .Li "struct ifnet" are as follows: .Pp -.Bl -tag -width "if_poll_slowq" -offset indent +.Bl -tag -width "if_capabilities" -offset indent .It Li "if_softc" .Pq Li "void *" A pointer to the driver's private state block. (Initialized by @@ -280,6 +280,12 @@ decremented by generic watchdog code.) .Pq Li "short" Flags describing operational parameters of this interface (see below). (Manipulated by both driver and generic code.) +.It Li "if_capabilities" +.Pq Li "int" +Flags describing the capabilities the interface supports (see below). +.It Li "if_enable" +.Pq Li "int" +Flags describing the enabled capabilties of the interface (see below). .\" .It Li "if_ipending" .\" Interrupt-pending bits for polled operation: .\" .Dv IFI_XMIT @@ -441,6 +447,33 @@ defines the bits which cannot be set by a user program using the command to .Xr ioctl 2 ; these are indicated by an asterisk in the listing above. +.Ss Interface capabilities flags +Interface capabilities are specialized features an interface may +or may not support. +These capabilities are very hardware-specific +and allow, when enabled, +to offload specific network processing to the interface. +.Pp +.Bl -tag -width "IFCAP_NETCONS" -offset indent +.It Dv IFCAP_HWCSUM +This interface can do checksum validation for the IP stack on both +receiving and transmitting data. +Some interfaces do not have sufficient buffer storage to store frames +above a certain MTU-size completely. +The driver for the interface might disable hardware checksum validation +if the MTU is set above the hardcoded limit. +.It Dv IFCAP_NETCONS +This interface can be a network console. +.It Dv IFCAP_RXCSUM +This interface can do checksum validation for the IP stack on receiving data. +Some interfaces do not have sufficient buffer storage to store frames +above a certain MTU-size completely. +The driver for the interface might disable hardware checksum validation +if the MTU is set above the hardcoded limit. +.It Dv IFCAP_TXCSUM +This interface can do checksum calculation for the IP stack on transmitting +data. +.El .Ss The if_data structure In .Bx 4.4 , @@ -800,13 +833,17 @@ further interpretation. The following commands are handled by .It Dv SIOCGIFCONF .It Dv OSIOCGIFCONF Get interface configuration. (No call-down to driver.) +.It Dv SIOCGIFCAP .It Dv SIOCGIFFLAGS .It Dv SIOCGIFMETRIC .It Dv SIOCGIFMTU .It Dv SIOCGIFPHYS -Get interface flags, metric, MTU, medium selection. (No call-down to -driver.) +Get interface capabilities, flags, metric, MTU, medium selection. +(No call-down to driver.) .Pp +.It Dv SIOCSIFCAP +Enable interface capabilities. +Caller must have appropriate privilege. .It Dv SIOCSIFFLAGS Change interface flags. Caller must have appropriate privilege. If requested a change to the IFF_UP flag is requested, |