5829 Commits

Author SHA1 Message Date
delphij
41b6a83547 rc.d/geli should not depend on random, as the attach functionality
do not require additional entropy to function.

It would create a circular dependency (not immediately obvious:
geli provides 'disks' and requires 'random' as of r273872,
'random' requires 'FILESYSTEMS', 'FILESYSTEMS' requires 'root',
'root' requires 'swap', and finally 'swap' requires 'disk').
2014-10-31 22:20:27 +00:00
markm
fce6747f55 This is the much-discussed major upgrade to the random(4) device, known to you all as /dev/random.
This code has had an extensive rewrite and a good series of reviews, both by the author and other parties. This means a lot of code has been simplified. Pluggable structures for high-rate entropy generators are available, and it is most definitely not the case that /dev/random can be driven by only a hardware souce any more. This has been designed out of the device. Hardware sources are stirred into the CSPRNG (Yarrow, Fortuna) like any other entropy source. Pluggable modules may be written by third parties for additional sources.

The harvesting structures and consequently the locking have been simplified. Entropy harvesting is done in a more general way (the documentation for this will follow). There is some GREAT entropy to be had in the UMA allocator, but it is disabled for now as messing with that is likely to annoy many people.

The venerable (but effective) Yarrow algorithm, which is no longer supported by its authors now has an alternative, Fortuna. For now, Yarrow is retained as the default algorithm, but this may be changed using a kernel option. It is intended to make Fortuna the default algorithm for 11.0. Interested parties are encouraged to read ISBN 978-0-470-47424-2 "Cryptography Engineering" By Ferguson, Schneier and Kohno for Fortuna's gory details. Heck, read it anyway.

Many thanks to Arthur Mesh who did early grunt work, and who got caught in the crossfire rather more than he deserved to.

My thanks also to folks who helped me thresh this out on whiteboards and in the odd "Hallway track", or otherwise.

My Nomex pants are on. Let the feedback commence!

Reviewed by:	trasz,des(partial),imp(partial?),rwatson(partial?)
Approved by:	so(des)
2014-10-30 21:21:53 +00:00
emaste
95f601fb4f Add missing /usr/lib/debug directories
Directories for /usr/lib{,32}/{i18n,private} were missing from the mtree
file, which caused installworld to install the files that should be in
the directory as the name of the directory.
2014-10-28 14:48:52 +00:00
bapt
99068e4287 Add regression tests for the timeout(1) utility
They are modeled over the regression tests that are provided for the GNU
coreutils timeout(1) utility
2014-10-28 10:39:41 +00:00
marcel
1c9fbedf83 Hook libxo to the build.
Sponsored by:	Juniper Networks, Inc.
2014-10-23 23:14:23 +00:00
hrs
f8efef6094 Fix a typo.
Spotted by:	O. Hartmann
2014-10-20 04:14:35 +00:00
hrs
7bc5d0ce46 - Honer MK_KERBEROS for Heimdal rc.d scripts.
- Add rc.c/kerberos to OLD_FILES.
2014-10-19 20:46:59 +00:00
hrs
062adab01a Add support of "/{udp,tcp,proto}" suffix into $firewall_myservices, which
interpreted the listed items as port numbers of TCP services.

A service with no suffix still works and recognized as a TCP service for
backward compatibility.  It should be updated with /tcp suffix.

PR:		194292
MFC after:	1 week
2014-10-17 00:31:51 +00:00
imp
e33f69c523 HYPERV isn't available on all architectures, but just on by default
for i386/amd64. Rather, it only works on i386/amd64 and should only be
built there. Rather than change the default based on which
architecutre, do things more directly by only building it on
i386/amd64 and having it always on. This is how we handle other
options that are relevant only for a few architectures.
2014-10-16 00:33:06 +00:00
hrs
9be68c3461 s/-/_/ in name. 2014-10-12 22:11:28 +00:00
jhibbits
71bc2d7846 Add an AC line monitor so power_profile can work
Summary:
Add a polling loop (1Hz) to monitor the battery and AC status, to notify devd
like ACPI does for power monitoring.  This allows /etc/rc.d/power_profile to
work on PowerPC laptops

Test Plan:
Tested on a Titanium PowerBook, configuring economy_cpu_freq and
performance_cpu_freq, disabling powerd.

Reviewers: #powerpc, nwhitehorn

Reviewed By: nwhitehorn

Subscribers: rpaulo

Differential Revision: https://reviews.freebsd.org/D937
2014-10-12 19:12:48 +00:00
hrs
106faa1462 Add env and prepend to _rc_namevarlist. 2014-10-12 02:42:36 +00:00
hrs
77616d41a2 Add ${name}_env and ${name}_prepend. ${name}_env is an argument list which
will be passed to env(1).  ${name}_prepend is simply prepended to the command
line for $command.
2014-10-11 23:49:27 +00:00
hrs
ab0d138ede Rename s/network/netif/ and set netif_enable for namespace consistency. 2014-10-11 20:28:04 +00:00
hselasky
afe30bff57 Add example devd configuration file for USB printers. 2014-10-09 13:58:19 +00:00
ngie
9de8ee6c0c Integrate usr.bin/gzip/tests from NetBSD into atf/kyua
Sponsored by: EMC / Isilon Storage Division
2014-10-09 02:24:34 +00:00
ngie
af608f76fa Integrate usr.bin/diff/tests from NetBSD into atf/kyua at gnu/usr.bin/diff/tests
Sponsored by: EMC / Isilon Storage Division
2014-10-09 02:07:34 +00:00
ngie
9cf2b42641 Integrate usr.bin/grep/tests from NetBSD into atf/kyua
Sponsored by: EMC / Isilon Storage Division
2014-10-09 01:53:23 +00:00
ngie
429a4fc8f2 Integrate usr.bin/cut/tests from NetBSD into atf/kyua
Sponsored by: EMC / Isilon Storage Division
2014-10-09 01:46:31 +00:00
ngie
d99fd4f0d7 Integrate bin/sleep/tests from NetBSD into atf/kyua
Sponsored by: EMC / Isilon Storage Division
2014-10-09 01:39:07 +00:00
ngie
82aaaa0800 Integrate usr.bin/dirname/tests from NetBSD into atf/kyua
In collaboration with: pho, sjg
Sponsored by: EMC / Isilon Storage Division
2014-10-09 00:55:04 +00:00
ngie
70c01e4074 Integrate usr.bin/cmp/tests from NetBSD into atf/kyua
In collaboration with: sjg
Sponsored by: EMC / Isilon Storage Division
2014-10-09 00:50:33 +00:00
ngie
52c660bb43 Integrate usr.sbin/basename/tests from NetBSD into atf/kyua
In collaboration with: pho
Sponsored by: EMC / Isilon Storage Division
2014-10-09 00:41:42 +00:00
ngie
bdd90c4710 Set the autoindent to 4 spaces with vim in BSD.tests.dist
This will prevent vim users from accidentally checking in buggy mtree files
(mixed tabs/spaces).

MFC after: 2 weeks
Sponsored by: EMC / Isilon Storage Division
2014-10-09 00:37:58 +00:00
ngie
c4fbacfa9e Integrate usr.sbin/nmtree/tests from NetBSD into atf/kyua
In collaboration with: pho
Sponsored by: EMC / Isilon Storage Division
2014-10-09 00:32:33 +00:00
brd
1319daf668 - Add a test for bug 191427 where pw(8) will go into an infinite loop
Reviewed by:	will
MFC after:	1 month
2014-10-02 19:53:37 +00:00
hrs
fd6a7f8ca9 Resurrect set_rcvar() as a function to define a rc.conf variable.
It defines a variable and its default value in load_rc_config() just after
rc.conf is loaded.  "rcvar" command shows the current and the default values.

This is an attempt to solve a problem that rc.d scripts from third-party
software do not have entries in /etc/defaults/rc.conf.  The fact that
load_rc_config() reads rc.conf only once and /etc/rc invokes the function
before running rc.d scripts made developers confused for a long time because
load_rc_config() just before run_rc_command() in each rc.d script overrides
variables only when the script is directly invoked, not from /etc/rc.

Variables defined in set_rcvar are always set in load_rc_config() after
loading rc.conf.  An rc.d script can now be written in a self-contained
manner regarding the related variables as follows:

---
name=foo
rcvar=foo_enable

set_rcvar foo_enable	YES	"Enable $name"
set_rcvar foo_flags	"-s"	"Flags to $name"

...

load_rc_config $name
run_rc_command "$@"
---
2014-10-02 01:16:30 +00:00
hselasky
91dfb92280 Regenerate usb.conf
MFC after:	3 days
2014-09-28 12:41:48 +00:00
wblock
c262e70a87 Revised to better point to release notes and errata, security advisories,
and be more specific about the -questions list.

MFC after:	3 days
2014-09-25 21:57:35 +00:00
ngie
207b1a98a8 Don't install /etc/rc.d/keyserv unless MK_OPENSSL == yes
Sponsored by: EMC / Isilon Storage Division
2014-09-23 22:07:08 +00:00
markj
c6bdc8ffe7 Remove settings for pkg_* scripts which are no longer present.
MFC after:	1 week
2014-09-23 18:38:06 +00:00
se
4acc8ae376 The new naming scheme for keymap files for use with vt(4) introduced a
collision for "no" as a country code with "NO" meaning "do not load any
keymap" (which also has been the default value in etc/defaults/rc.conf
for a long time).

The result of this collision is, that "kbdcontrol -l no" will load the
Norwegian keymap, while "keymap=no" in rc.conf was interpreted as the
lower case spelling of "NO" meaning "no keyboard" (and "no.kbd" was not
loaded).

Fix this by matching only the upper-case spelling "NO" in rc.d/syscons
when deciding whether to load a keymap file.

This will lead to "no.kbd" being loaded, if the until now valid (but
non-default) spelling "no" was used in an individual rc.conf file to mean
"no keyboard". But all alternatives I could think of introduce a larger
violation of POLA ...

Reported by:    Gyrd Thane Lange (gyrd-se at thanelange.no)
MFC after:	3 days
2014-09-22 11:54:13 +00:00
jmmv
ae206eb32a Register /usr/tests/lib/libproc to fix build.
Missed in r271937, reviewed in D710.
2014-09-22 09:54:48 +00:00
marcel
e6285cbc7c Add unit tests for mkimg(1): 2014-09-20 21:02:54 +00:00
ngie
f345ebf797 Don't install /etc/rc.d/ftp-proxy unless MK_PF == yes
MFC after: 2 weeks
Sponsored by: EMC / Isilon Storage Division
2014-09-20 06:34:34 +00:00
ngie
559aae68ec Don't install /etc/rc.d/rwho unless MK_RCMDS == yes
MFC after: 2 weeks
Sponsored by: EMC / Isilon Storage Division
2014-09-20 06:05:24 +00:00
ngie
cb2834e3be Sort the optional rc.d scripts by their knobs
MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2014-09-20 05:49:15 +00:00
hrs
c8f0850d9e Fix cdev. It is a device node name, not a pathname. 2014-09-19 07:18:45 +00:00
will
8fbdaa50ea Fix incremental builds involving non-root users with read-only source files.
Makefiles should not assume that source files can be overwritten.  This is the
common case for Perforce source trees.

This is a followup commit to r211243 in the same vein.

MFC after:	1 month
Sponsored by:	Spectra Logic
MFSpectraBSD:	r1036319 on 2014/01/29, r1046711 on 2014/03/06
2014-09-18 14:41:57 +00:00
delphij
f38530676c Use a devd event to start hv_kvpd instead of doing so in rc.d script.
This is cleaner and eliminates the unneeded startup of KVP daemon on
systems that do not run as a Hyper-V guest.

Submitted by:	hrs
X-MFC-with:	271493, 271688, 271699
2014-09-17 02:32:22 +00:00
sbruno
6ea28efcbc Such typo, many email, very spelling. wow.
MFC with 271688 271493
Submitted by:	ngie ian
MFC after:	2 weeks
Relnotes:	yes
2014-09-16 20:48:13 +00:00
sbruno
4fa78dd391 Add proper disable/enable hooks to the default scripts so that this is only
run when asked for by the user.  Right now, hv_kvpd is run on every boot.

Don't do that.

Add hv_kvpd_enable= for this script to be run.

MFC with 271493

MFC after:	2 weeks
Relnotes:	yes
2014-09-16 20:02:16 +00:00
hrs
1669d588d5 Fix a typo; master server for iprop service should be singular. 2014-09-16 05:45:38 +00:00
hrs
0d57c69d7b Make net.inet.ip.sourceroute, net.inet.ip.accept_sourceroute, and
net.inet.ip.process_options vnet-aware.  Revert changes in r271545.

Suggested by:	bz
2014-09-15 07:20:40 +00:00
hrs
de7f3e3c40 Do not set net.inet.ip.{sourceroute,accept_sourceroute} in a vnet jail.
The following warnings were displayed:

 sysctl: net.inet.ip.sourceroute=0: Operation not permitted
 sysctl: net.inet.ip.accept_sourceroute=0: Operation not permitted
2014-09-13 18:54:15 +00:00
delphij
edc7ea3a5d Import HyperV Key-Value Pair (KVP) driver and daemon code by Microsoft,
many thanks for their continued support of FreeBSD.

While I'm there, also implement a new build knob, WITHOUT_HYPERV to
disable building and installing of the HyperV utilities when necessary.

The HyperV utilities are only built for i386 and amd64 targets.

This is a stable/10 candidate for inclusion with 10.1-RELEASE.

Submitted by:	Wei Hu <weh microsoft com>
MFC after:	1 week
2014-09-13 02:15:31 +00:00
wblock
cb4f5443ae Update motd, clarifying the information and adding pointers to other
resources.

MFC after:	3 days
2014-09-11 18:24:16 +00:00
hrs
9e4c2e6032 - Add $netif_ipexpand_max to specify the upper limit for the number of
addresses generated by an address range specification.  The default
  value is 2048.  This can be increased by setting $netif_ipexpand_max
  in rc.conf.

- Fix warning messages when an address range spec exceeds the upper limit.

PR:	186841
2014-09-11 12:30:29 +00:00
bdrewery
ec56ad408f Don't cross mount boundaries when cleaning tmp files.
Mounting something in /tmp such as a build jail with nullfs mounts for
some directories can result in very surprising results the next day.

MFC after:	2 weeks
Relnotes:	yes
2014-09-09 17:03:58 +00:00
des
1798b7ca76 Revert r271257 after several issues were pointed out. An updated patch
will be committed at a later date.
2014-09-08 12:26:52 +00:00