Commit Graph

66 Commits

Author SHA1 Message Date
jilles
a28caa4777 swapon: Fix buffer overflow when configuring encrypted swap on GBDE.
PR:		bin/184950
Tested by:	Radim Kolar
MFC after:	3 days
2013-12-21 11:59:58 +00:00
pluknet
f3f3baee3f - Purge one more reference to ad(4)[1].
- NSWAPDEV limit has gone.

Noticed by:	Sergey V. Dyatko [1]
MFC after:	1 week
2013-11-22 12:09:15 +00:00
hrs
eb57efaf2f Style clean-ups.
Reviewed by:	md5
2013-09-05 21:19:16 +00:00
hrs
81f77e5add Enable "late" option when a file= option is specified in /etc/fstab.
The file= option requires rw mount where the backing store exists but
it does not work because rc.d/swap runs before rc.d/fsck.
Reported by:	wblock
2013-09-05 20:50:52 +00:00
delphij
cf0d40cd38 Make two buffer variables static for now. It is not safe to
reference stack memory after return.

MFC after:	2 weeks
2013-07-31 07:09:35 +00:00
delphij
63b9166cda Plug a memory leak. 2013-07-02 17:34:34 +00:00
delphij
c646da3daf Correct a typo in comment. 2013-07-01 21:18:39 +00:00
delphij
3a5f04c7d2 - Modify swapon(8) so that it uses most of geli(8) defaults for swap,
which is presently: AES-XTS, no authentication.  Create provider
   with pagesize as sectorsize by default.
 - Rewrite parsing code for geli(8)-backed swap options, now options
   are required to be exact match, and unrecognized options will trigger
   a warning.
 - Don't initialize GELI device if it's already initialized.  This
   restores previous behavior.
 - Don't duplicate file descriptor when working with geli(8) and
   gbde(8) as there is no need to communicate with the utility other
   than exit status.
 - When calling swap_on_off_* routines, which_prog can only be SWAP_ON
   or SWAP_OFF.  Eliminate unneeded case branches by replacing switch
   with if's.
 - Plug a few memory leaks.

Reviewed by:	hrs (but bugs are mine)
MFC after:	1 week
X-MFC-with:	r252310, r252332, r252345
2013-06-29 22:04:04 +00:00
hrs
09fe89cd96 Fix build with gcc. 2013-06-28 16:24:14 +00:00
hrs
78ac9f10ca Fix build.
Spotted by:	gjb
2013-06-28 05:09:01 +00:00
hrs
8a3748f531 - Add vnode-backed swap space specification support. This is enabled when
device names "md" or "md[0-9]*" and a "file" option are specified in
  /etc/fstab like this:

  md    none    swap    sw,file=/swap.bin       0       0

- Add GBDE/GELI encrypted swap space specification support, which
  rc.d/encswap supported.  The /etc/fstab lines are like the following:

  /dev/ada1p1.bde       none    swap    sw      0       0
  /dev/ada1p2.eli       none    swap    sw      0       0

  .eli devices accepts aalgo, ealgo, keylen, and sectorsize as options.

  swapctl(8) can understand an encrypted device in the command line
  like this:

  # swapctl -a /dev/ada2p1.bde

- "-L" flag is added to support "late" option to defer swapon until
  rc.d/mountlate runs.

- rc.d script change:

    rc.d/encswap -> removed
    rc.d/addswap -> just display a warning message if $swapfile is defined
    rc.d/swap1 -> renamed to rc.d/swap
    rc.d/swaplate -> newly added to support "late" option

These changes alleviate a race condition between device creation/removal
and swapon/swapoff.

MFC after:	1 week
Reviewed by:	wblock (manual page)
2013-06-27 18:28:45 +00:00
ed
5b02333e84 Add missing static keywords for global variables to tools in sbin/.
These tools declare global variables without using the static keyword,
even though their use is limited to a single C-file, or without placing
an extern declaration of them in the proper header file.
2011-11-04 13:36:02 +00:00
ed
f1b63119c2 Build swapon with WARNS=6.
Don't use a variable called stat, because it collides with stat(2).
2011-10-25 17:10:15 +00:00
sobomax
40cf9012a1 Add new option -F to specify alternative location of the /etc/fstab
file.

MFC after:	1 month
2011-10-25 01:47:33 +00:00
ed
ebbfa5188a Raise WARNS for various tools where possible.
Submitted by:	Marius Nünnerich <marius@nuenneri.ch>
2010-01-17 21:56:27 +00:00
ru
763b9ae1f8 Switch the default WARNS level for sbin/ to 6.
Submitted by:	Ulrich Spörlein
2009-10-19 16:00:24 +00:00
mtm
06cbeaa694 Add a -q flag to swapon(8) to suppress informational messages. Use it in
rc.d.
Note: errors are not affected by this flag.
2008-06-23 22:17:08 +00:00
pjd
60f1019c3e - Change the meaning of -h flag from giving the output in megabytes to
giving the output in a human-readable form. This behaviour is consistent
  with most of system tools.
- Add -m and -g options to give output in megabytes and gigabytes
  respectively.
2008-05-20 12:24:31 +00:00
ru
719be5d341 Sync program's usage() with manpage's SYNOPSIS. 2005-02-10 09:19:34 +00:00
ru
13fe9ea5a2 Sort sections. 2005-01-18 10:09:38 +00:00
das
130bed6547 Don't include sys/user.h merely for its side-effect of recursively
including other headers.
2004-11-27 06:51:39 +00:00
markm
90f91e7879 Remove advertising clause from University of California Regent's license,
per letter dated July 22, 1999.

Approved by: core, imp
2004-04-09 19:58:40 +00:00
markm
0b0ae8e16e Make NULL a (void*)0 whereever possible, and fix the warnings(-Werror)
that this provokes. "Wherever possible" means "In the kernel OR NOT
C++" (implying C).

There are places where (void *) pointers are not valid, such as for
function pointers, but in the special case of (void *)0, agreement
settles on it being OK.

Most of the fixes were NULL where an integer zero was needed; many
of the fixes were NULL where ascii <nul> ('\0') was needed, and a
few were just "other".

Tested on: i386 sparc64
2004-03-05 08:10:19 +00:00
obrien
19105c8312 Use __FBSDID() to quiet GCC 3.3 warnings. 2003-05-03 18:41:59 +00:00
keramida
db29ab160b Spell "utilities" correctly. 2003-02-28 00:55:18 +00:00
ru
d5d524487f More fixes.
Submitted by:	Andy Farkas <andyf@speednet.com.au>
Reviewed by:	das
2003-02-25 07:41:33 +00:00
ru
4227865460 mdoc(7) police: Tidy up. 2003-02-24 23:02:37 +00:00
das
859f2bea3a Clarify about NSWAPDEV, add a DIAGNOSTICS section pointing to
swapon(2), and correct HISTORY.

Reviewed by:	mike (mentor)
2003-02-24 08:52:06 +00:00
das
9f419c5edf - Add a clearer error message for the case where swapon hits the
NSWAPDEV limit.
- Don't warn about devices that are not in use in 'swapoff -a'.
- Re-add behavior mistakenly removed in revision 1.44:
  If using 'swapon -a', do not warn if the device is already in use.

PR:		46633
Submitted by:	Andy Farkas <andyf@speednet.com.au> (in part)
Reviewed by:	mike (mentor)
2003-02-24 08:51:31 +00:00
mike
565badda7f Remove hack from rev 1.15; getbsize(3)'s original interface has been
restored.
2002-12-30 18:24:14 +00:00
mike
8dbf6198d3 Make the first argument to getbsize(3) a `size_t *'. This is a hack
since getbsize(3) should have `int *' as its first parameter.
2002-12-30 05:35:06 +00:00
dillon
954749368b Add 'swapctl' - as a hardlink to swapon/swapoff, and augment swapon with
swapctl functionality.  The idea is to create a swapctl command that is
fairly close to the OpenBSD and NetBSD version.  FreeBSD does not implement
swap priority (and it would be a mistake if we did) so we didn't bother with
that part of it.

Submitted by:	Eirik Nygaard <eirikn@bluezone.no>
Augmented by:	dillon (extensively)
Reviewed by:	David Schultz <dschultz@uclink.Berkeley.EDU>
2002-12-28 23:39:47 +00:00
dillon
b43fb3e920 This is David Schultz's swapoff code which I am finally able to commit.
This should be considered highly experimental for the moment.

Submitted by:	David Schultz <dschultz@uclink.Berkeley.EDU>
MFC after:	3 weeks
2002-12-15 19:17:57 +00:00
trhodes
136be46680 s/filesystem/file system/g as discussed on -developers 2002-08-21 18:11:48 +00:00
charnier
a82970a04e The .Nm utility. 2002-07-06 19:35:14 +00:00
imp
ec2a00af74 o remove __P
o remove main prototype
2002-03-21 13:20:49 +00:00
obrien
73c6870b18 Remove 'register' keyword.
It does not help modern compilers, and some may take some hit from it.
(I also found several functions that listed *every* of its 10 local vars with
 "register" -- just how many free registers do people think machines have?)
2002-03-20 17:55:10 +00:00
obrien
9baf2f1b03 Default to WARNS=2.
Binary builds that cannot handle this must explicitly set WARNS=0.

Reviewed by:	mike
2001-12-04 02:19:58 +00:00
dd
0f445ae1d8 Set WARNS=2 on programs which compile cleanly.
Submitted by:	Mike Barcroft <mike@q9media.com>
2001-07-15 10:30:46 +00:00
ru
7cef49ff86 mdoc(7) police: removed HISTORY info from the .Os call. 2001-07-10 11:04:34 +00:00
dd
ef9ae51ffe Include missing header files which define functions for which gcc has
builtins (e.g., exit, strcmp).
2001-06-24 23:04:23 +00:00
ru
4944787dbf vnconfig(8) -> mdconfig(8). 2001-04-10 16:29:41 +00:00
ru
86642a4ab4 - Backout botched attempt to introduce MANSECT feature.
- MAN[1-9] -> MAN.
2001-03-26 14:33:27 +00:00
ru
56b5d7535b Set the default manual section for sbin/ to 8. 2001-03-20 18:13:31 +00:00
ru
ea31070695 mdoc(7) police: use the new features of the Nm macro. 2000-11-20 16:52:27 +00:00
imp
7fec3d2787 Add include of errno.h where needed, remove extern int errno where not.
These commits were inspired by a similar commit to netbsd.
2000-04-14 06:15:01 +00:00
gsutter
d975becf84 correct wording in BUGS section; it's not possible to dismount swap
devices, but it's certainly possible to make use of them.

PR:		17013
Submitted by:	Giorgos Keramidas <keramida@ceid.upatras.gr>
2000-02-28 21:29:37 +00:00
nik
a9b8cbd24d Mention /dev/vn0b and /dev/vntab. ascii -> ASCII transform had
already happened in an earlier commit.

PR:             docs/13645
Submitted by:   Stephen Roznowski <sjr@home.com>
1999-09-26 00:05:45 +00:00
phantom
353c1a6746 Correct spelling : ascii -> ASCII
PR:		docs/13702
Submitted by:	Stephen J. Roznowski <sjr@home.com>
Reviewed by:	mpp
1999-09-20 09:15:23 +00:00
peter
76f0c923fe $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00