5153 Commits

Author SHA1 Message Date
Bryan Venteicher
c6e32006e1 Prefix all the vxlan ifconfig commands so they are unique
And rehook ifvxlan back into the build.
2014-12-17 05:36:34 +00:00
John-Mark Gurney
08fca7a56b Add some new modes to OpenCrypto. These modes are AES-ICM (can be used
for counter mode), and AES-GCM.  Both of these modes have been added to
the aesni module.

Included is a set of tests to validate that the software and aesni
module calculate the correct values.  These use the NIST KAT test
vectors.  To run the test, you will need to install a soon to be
committed port, nist-kat that will install the vectors.  Using a port
is necessary as the test vectors are around 25MB.

All the man pages were updated.  I have added a new man page, crypto.7,
which includes a description of how to use each mode.  All the new modes
and some other AES modes are present.  It would be good for someone
else to go through and document the other modes.

A new ioctl was added to support AEAD modes which AES-GCM is one of them.
Without this ioctl, it is not possible to test AEAD modes from userland.

Add a timing safe bcmp for use to compare MACs.  Previously we were using
bcmp which could leak timing info and result in the ability to forge
messages.

Add a minor optimization to the aesni module so that single segment
mbufs don't get copied and instead are updated in place.  The aesni
module needs to be updated to support blocked IO so segmented mbufs
don't have to be copied.

We require that the IV be specified for all calls for both GCM and ICM.
This is to ensure proper use of these functions.

Obtained from:	p4: //depot/projects/opencrypto
Relnotes:	yes
Sponsored by:	FreeBSD Foundation
Sponsored by:	NetGate
2014-12-12 19:56:36 +00:00
Mark Peek
0ad435f321 Document support for Netgear WG111v1 (rev2) 2014-12-08 04:06:03 +00:00
Alexander Motin
238e75e505 Document ISP 2532 support and hint.isp.0.vports tunable.
MFC after:	1 week
2014-12-01 17:51:16 +00:00
Peter Jeremy
b6e5ca4a88 Cross reference tap(4) and tun(4) and include a short explanation as
to how they differ.  This will assist users in selecting which interface
is more appropriate for their purposes.

Approved by:	grog (co-mentor)
MFC after:	2 week
2014-11-30 04:50:13 +00:00
Joel Dahl
d4d112e34a Misc mdoc fixes:
- Remove superfluous paragraph macros.
- Remove/fix empty or incorrect macros.
- Sort sections into conventional order.
- Terminate quoted strings properly.
- Remove EOL whitespace.
2014-11-23 21:00:00 +00:00
Ian Lepore
233024d933 Document the recent enhancements for configuring bus speed in iicbus(4).
Differential Revision:        https://reviews.freebsd.org/D1182
PR:		195009
2014-11-21 21:30:08 +00:00
Ed Maste
224914b7da Spell out "Windows" - no need to censor it in a man page 2014-11-20 14:18:07 +00:00
Kevin Lo
fa20eb98a8 Add Trendnet TEW-646UBH.
Submitted by:	bolshakov_1 at yahoo dot com
2014-11-19 05:38:45 +00:00
Alexander Motin
9f4fae3950 Remove mostly obsolete hint to disable LAPIC timers.
It is partially covered by new code and partially by new CPUs.

PR:		195016
Submitted by:	tobias.rehbein@web.de
MFC after:	1 week
2014-11-14 22:01:14 +00:00
Edward Tomasz Napierala
be609cace2 Fix mdoc warning.
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2014-11-14 11:47:27 +00:00
Edward Tomasz Napierala
7fe2e170e4 Fix mdoc warning by removing empty lines.
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2014-11-14 08:58:55 +00:00
John Baldwin
14d4e1e250 Drop mention of ISA cards. Note that I have no idea what to cull from the
supported hardware list.  Judging by the PCI driver attachment, dpt_pci.c
only supports a single adapter rather than the various PCI adapters listed.
The list of EISA adapters listed somewhat overlaps with the device IDs in
dpt_eisa.c.  It's not clear which devices are ISA-only devices.
2014-11-13 20:09:47 +00:00
Alexander V. Chernikov
670e8b3b8c Kill custom in_matroute() radix mathing function removing one rte mutex lock.
Initially in_matrote() in_clsroute() in their current state was introduced by
r4105 20 years ago. Instead of deleting inactive routes immediately, we kept them
in route table, setting RTPRF_OURS flag and some expire time. After that, either
GC came or RTPRF_OURS got removed on first-packet. It was a good solution
in that days (and probably another decade after that) to keep TCP metrics.
However, after moving metrics to TCP hostcache in r122922, most of in_rmx
functionality became unused. It might had been used for flushing icmp-originated
routes before rte mutexes/refcounting, but I'm not sure about that.

So it looks like this is nearly impossible to make GC do its work nowadays:

in_rtkill() ignores non-RTPRF_OURS routes.
route can only become RTPRF_OURS after dropping last reference via rtfree()
which calls in_clsroute(), which, it turn, ignores UP and non-RTF_DYNAMIC routes.

Dynamic routes can still be installed via received redirect, but they
have default lifetime (no specific rt_expire) and no one has another trie walker
to call RTFREE() on them.

So, the changelist:
* remove custom rnh_match / rnh_close matching function.
* remove all GC functions
* partially revert r256695 (proto3 is no more used inside kernel,
  it is not possible to use rt_expire from user point of view, proto3 support
  is not complete)
* Finish r241884 (similar to this commit) and remove remaining IPv6 parts

MFC after:	1 month
2014-11-11 02:52:40 +00:00
Alexander V. Chernikov
603eaf792b Renove faith(4) and faithd(8) from base. It looks like industry
have chosen different (and more traditional) stateless/statuful
NAT64 as translation mechanism. Last non-trivial commits to both
faith(4) and faithd(8) happened more than 12 years ago, so I assume
it is time to drop RFC3142 in FreeBSD.

No objections from:	net@
2014-11-09 21:33:01 +00:00
Andrey V. Elsukov
f325335caf Overhaul if_gre(4).
Split it into two modules: if_gre(4) for GRE encapsulation and
if_me(4) for minimal encapsulation within IP.

gre(4) changes:
* convert to if_transmit;
* rework locking: protect access to softc with rmlock,
  protect from concurrent ioctls with sx lock;
* correct interface accounting for outgoing datagramms (count only payload size);
* implement generic support for using IPv6 as delivery header;
* make implementation conform to the RFC 2784 and partially to RFC 2890;
* add support for GRE checksums - calculate for outgoing datagramms and check
  for inconming datagramms;
* add support for sending sequence number in GRE header;
* remove support of cached routes. This fixes problem, when gre(4) doesn't
  work at system startup. But this also removes support for having tunnels with
  the same addresses for inner and outer header.
* deprecate support for various GREXXX ioctls, that doesn't used in FreeBSD.
  Use our standard ioctls for tunnels.

me(4):
* implementation conform to RFC 2004;
* use if_transmit;
* use the same locking model as gre(4);

PR:		164475
Differential Revision:	D1023
No objections from:	net@
Relnotes:	yes
Sponsored by:	Yandex LLC
2014-11-07 19:13:19 +00:00
John-Mark Gurney
cea971c122 convert .Nm to proper .Xr's... 2014-11-04 08:22:08 +00:00
Jean-Sébastien Pédron
4261dbcfa6 vt(4): Start new sentences on their own lines
Submitted by:	brueffer@
MFC after:	1 week
2014-11-03 16:01:44 +00:00
Jean-Sébastien Pédron
a95c461233 vt(4): Improve the description of kern.vt.fb.modes.$connector
Differential Revision:	https://reviews.freebsd.org/D1098
Submitted by:	emaste@
MFC after:	1 week
2014-11-03 15:25:48 +00:00
Jean-Sébastien Pédron
79c4bda828 vt(4): Document kern.vt.fb.default_mode and kern.vt.fb.modes.*
Those tunables are used to set a specific mode in vt(4) instead of using
the default mode.

Differential Revision:	https://reviews.freebsd.org/D1098
Reviewed by:	ak@, emaste@, kwm@
MFC after:	1 week
2014-11-03 14:57:41 +00:00
Edward Tomasz Napierala
9d66b6a5a9 Mention VAAI and ODX in ctl(4).
Reviewed by:	mav@
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2014-10-26 13:30:53 +00:00
Kevin Lo
66fef59616 Add D-Link DWA-123 rev D1 and Elecom WDC-150SU2M. 2014-10-24 15:36:30 +00:00
Bryan Venteicher
6f744ddee4 Add VirtIO console driver
Support for the multiport feature is mostly implemented, but currently
disabled due to some potential races in the hot plug code paths.

Requested by:	marcel
MFC after:	1 month
Relnotes:	yes
2014-10-23 04:47:32 +00:00
Alexander Motin
4f8244bbf7 Document sort_io_queue sysctls/tunables.
MFC after:	1 week
2014-10-22 08:54:10 +00:00
Ed Maste
5e81927466 Add vtfontcvt(8) cross-reference to vt(4) man page
Reported by:	beeessdee@ruggedinbox.com
MFC after:	3 days
2014-10-20 14:48:20 +00:00
Bryan Venteicher
007054f070 Add vxlan interface
vxlan creates a virtual LAN by encapsulating the inner Ethernet frame in
a UDP packet. This implementation is based on RFC7348.

Currently, the IPv6 support is not fully compliant with the specification:
we should be able to receive UPDv6 packets with a zero checksum, but we
need to support RFC6935 first. Patches for this should come soon.

Encapsulation protocols such as vxlan emphasize the need for the FreeBSD
network stack to support batching, GRO, and GSO. Each frame has to make
two trips through the network stack, and each frame will be at most MTU
sized. Performance suffers accordingly.

Some latest generation NICs have begun to support vxlan HW offloads that
we should also take advantage of. VIMAGE support should also be added soon.

Differential Revision:	https://reviews.freebsd.org/D384
Reviewed by:	gnn
Relnotes:	yes
2014-10-20 14:42:42 +00:00
Gavin Atkinson
0b43817eac The igb(4) driver supports 82580, i350, i354, i210 and i211 chipsets too,
document them.

PR:		192301
MFC after:	1 week
2014-10-16 23:07:09 +00:00
Ed Maste
d98ae07545 Update vt(4) for UEFI defaults and special keys
vt(4) is the default console for UEFI boot [1], and the bitmapped
kern.vt.spclkeys sysctl has been replaced with individual kern.vt.kbd_*
enable sysctls.

PR:		193710
Submitted by:	wblock [1]
Reviewed by:	wblock
MFC after:	3 days
Relnotes:	Yes
Sponsored by:	The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D953
2014-10-16 18:49:50 +00:00
Andrey V. Elsukov
0b9f5f8a5f Overhaul if_gif(4):
o convert to if_transmit;
 o use rmlock to protect access to gif_softc;
 o use sx lock to protect from concurrent ioctls;
 o remove a lot of unneeded and duplicated code;
 o remove cached route support (it won't work with concurrent io);
 o style fixes.

Reviewed by:	melifaro
Obtained from:	Yandex LLC
MFC after:	1 month
Sponsored by:	Yandex LLC
2014-10-14 13:31:47 +00:00
Christian Brueffer
d1e159345b New sentence -> new line; use macros where appropriate. 2014-10-14 12:29:24 +00:00
Sean Bruno
d6f180ad78 Bump .Dd
Submitted by:	gjb
MFC after:	2 weeks
Relnotes:	yes
2014-10-13 21:08:27 +00:00
Sean Bruno
33b8f2518c Update tcp(4) with plpmtud blackhole sysctls
Submitted by:	Mikhail <mp@lenta.ru>
MFC after:	2 weeks
Relnotes:	yes
2014-10-13 21:04:14 +00:00
Edward Tomasz Napierala
d32789d95c Mark iscontrol(8) and iscsi_initiator(4) obsolete.
Differential Revision:	https://reviews.freebsd.org/D931
Reviewed by:	wblock@
MFC after:	3 days
Sponsored by:	The FreeBSD Foundation
2014-10-11 05:18:22 +00:00
Pyun YongHyeon
e27bcffd9b Document newly added controller AR816x/AR817x. 2014-10-08 05:49:10 +00:00
Kevin Lo
34ad8c7be4 bump .Dd
Reported by:	gjb
2014-10-03 01:39:33 +00:00
Kevin Lo
7fb94ea5c3 Mention umoscom(4) and uslcom(4). 2014-10-03 01:20:49 +00:00
Gavin Atkinson
35fe94304b Add HARDWARE section of urnis(4) driver to try to gain more visibility.
MFC after:	3 days
2014-10-02 22:22:34 +00:00
Hans Petter Selasky
e8fa59aa5e Add new USB ID.
PR:		194091
MFC after:	3 days
2014-10-02 12:27:41 +00:00
Hiroki Sato
939a050ad9 Virtualize lagg(4) cloner. This change fixes a panic when tearing down
if_lagg(4) interfaces which were cloned in a vnet jail.

Sysctl nodes which are dynamically generated for each cloned interface
(net.link.lagg.N.*) have been removed, and use_flowid and flowid_shift
ifconfig(8) parameters have been added instead.  Flags and per-interface
statistics counters are displayed in "ifconfig -v".

CR:	D842
2014-10-01 21:37:32 +00:00
Mark Johnston
00cb6bef99 Add a sysctl, net.inet.icmp.tstamprepl, which can be used to disable replies
to ICMP Timestamp packets.

PR:		193689
Submitted by:	Anthony Cornehl <accornehl@gmail.com>
MFC after:	3 weeks
Sponsored by:	EMC / Isilon Storage Division
2014-10-01 18:07:34 +00:00
Benjamin Kaduk
98286ba5f4 Some cleanup for sfxge.4
Use standard mdoc macros instead of pure roff, fix some other mdoc usage,
make the style consistent, and fix some grammar issues.

Approved by:	hrs (mentor)
2014-10-01 17:16:18 +00:00
Michael Tuexen
83e95fb30b The default for UDPLITE_RECV_CSCOV is zero. RFC 3828 recommend
that this means full checksum coverage for received packets.
If an application is willing to accept packets with partial
coverage, it is expected to use the socekt option and provice
the minimum coverage it accepts.

Reviewed by: kevlo
MFC after: 3 days
2014-10-01 05:43:29 +00:00
George V. Neville-Neil
316ee70dd3 Update SolarFlare driver manual page with new tunables.
Submitted by:   Andrew Rybchenko <arybchenko at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
2014-09-30 20:38:36 +00:00
Gavin Atkinson
a47bbf3fcf Make clear in the ipheth(4) hardware notes that this driver is for the
tethering functionality only.  Add a "bugs" section to give a pointer
to usbconfig set_config if the device isn't automatically detected.

MFC after:	3 days
2014-09-30 05:36:16 +00:00
Sergey Kandaurov
2458e8d29a Add smsc(4) to the list of drivers use the miibus interface.
X-MFC with:	r272165
Sponsored by:	Nginx, Inc.
2014-09-26 11:13:19 +00:00
Gavin Atkinson
69e034c7a8 Add MLINKS for if_ipheth(4) and if_smsc(4).
Submitted by:	brueffer
MFC after:	6 days
2014-09-26 09:54:57 +00:00
Gavin Atkinson
5067548af0 Add very basic outline man page for smsc(4).
MFC after:	6 days
2014-09-26 09:19:11 +00:00
Gavin Atkinson
425258e2de Cross reference cdce(4), ipheth(4) and urndis(4) from each other.
MFC after:	1 week
2014-09-25 14:22:32 +00:00
Gavin Atkinson
59d9081f35 Add basic man page for ipheth(4).
MFC after:	1 week
2014-09-25 14:18:34 +00:00
Alexander Motin
b81577dd23 Mention read_ahead tunables/sysctls.
MFC after:	1 month
2014-09-21 10:05:27 +00:00