summaryrefslogtreecommitdiffstats
path: root/Documentation
diff options
context:
space:
mode:
authorSami Kerola2011-08-12 20:19:52 +0200
committerSami Kerola2011-08-12 20:19:52 +0200
commitf98d4f766e39efd255c9b70d3780feea9c7a7898 (patch)
tree7eef63942216eb29ef1cb1532305ee45e6a67f42 /Documentation
parentdocs: remove README.clear (diff)
downloadkernel-qcow2-util-linux-f98d4f766e39efd255c9b70d3780feea9c7a7898.tar.gz
kernel-qcow2-util-linux-f98d4f766e39efd255c9b70d3780feea9c7a7898.tar.xz
kernel-qcow2-util-linux-f98d4f766e39efd255c9b70d3780feea9c7a7898.zip
docs: Documentation directory added
Move readme, licence, change log, relese notes and other supplementary files to a Documentation directory. This commit does not change contents of any other but few Makefile.am files. Signed-off-by: Sami Kerola <kerolasa@iki.fi>
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/README.devel121
-rw-r--r--Documentation/TODO292
-rw-r--r--Documentation/blkid.txt78
-rw-r--r--Documentation/cal.txt42
-rw-r--r--Documentation/cfdisk.txt45
-rw-r--r--Documentation/col.txt48
-rw-r--r--Documentation/ddate.txt73
-rw-r--r--Documentation/deprecated.txt46
-rw-r--r--Documentation/example.files/filesystems7
-rw-r--r--Documentation/example.files/fstab15
-rw-r--r--Documentation/example.files/motd10
-rw-r--r--Documentation/example.files/securetty5
-rw-r--r--Documentation/example.files/shells4
-rw-r--r--Documentation/example.files/udev-raw.rules7
-rw-r--r--Documentation/fdisk.txt583
-rw-r--r--Documentation/getopt.txt81
-rw-r--r--Documentation/getopt_changelog.txt38
-rw-r--r--Documentation/howto-tests.txt27
-rw-r--r--Documentation/hwclock.txt17
-rw-r--r--Documentation/licenses/COPYING.GPL339
-rw-r--r--Documentation/licenses/COPYING.UCB32
-rw-r--r--Documentation/licenses/COPYING.getopt339
-rw-r--r--Documentation/licenses/COPYING.libblkid510
-rw-r--r--Documentation/licenses/COPYING.libmount508
-rw-r--r--Documentation/licenses/COPYING.libuuid25
-rw-r--r--Documentation/licenses/LICENSE.pg28
-rw-r--r--Documentation/modems-with-agetty.txt76
-rw-r--r--Documentation/mount.txt17
-rw-r--r--Documentation/pg.txt23
-rw-r--r--Documentation/poeigl.txt583
-rw-r--r--Documentation/releases/v2.13-ReleaseNotes460
-rw-r--r--Documentation/releases/v2.14-ReleaseNotes418
-rw-r--r--Documentation/releases/v2.15-ReleaseNotes675
-rw-r--r--Documentation/releases/v2.16-ReleaseNotes182
-rw-r--r--Documentation/releases/v2.17-ReleaseNotes526
-rw-r--r--Documentation/releases/v2.18-ReleaseNotes468
-rw-r--r--Documentation/releases/v2.19-ReleaseNotes660
-rw-r--r--Documentation/releases/v2.20-ReleaseNotes848
-rw-r--r--Documentation/sfdisk.txt264
39 files changed, 8520 insertions, 0 deletions
diff --git a/Documentation/README.devel b/Documentation/README.devel
new file mode 100644
index 000000000..d76baafa5
--- /dev/null
+++ b/Documentation/README.devel
@@ -0,0 +1,121 @@
+
+ Notes for util-linux developers
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+AUTOTOOLS:
+
+ * "./autogen.sh" generates all files needed to compile and install the code
+ (run it after checkout from git)
+
+ * "make distclean" removes all unnecessary files, but the code can still be
+ recompiled with "./configure; make"
+
+ * "make dist-gzip" (or -bzip2) creates a tarball that can be configured and
+ compiled without running "./autogen.sh"
+
+
+PATCHES:
+
+ * send your patches to the mailing list or to the upstream maintainer
+ (see the AUTHORS and README files)
+
+ * diff -u
+
+ * don't include generated (autotools) stuff to your patches
+ (hint: use git-clean [-X])
+
+ * patches are delivered via email only. Downloading them from internet
+ servers is a pain.
+
+ * one patch per email, with the changelog in the body of the email.
+
+ * many small patches are favoured over one big. Break down is done on
+ basis of logical functionality; for example #endif mark ups, compiler
+ warning and exit codes fixes all should be individual small patches.
+
+ * Subject: [PATCH] subsystem: description
+
+ * if someone else wrote the patch, they should be credited (and blamed)
+ for it. To communicate this, add a line:
+
+ From: John Doe <jdoe@wherever.com>
+
+ * add a Signed-off-by line (hint: use "git commit -s")
+
+ The sign-off is a simple line at the end of the explanation for the
+ patch, which certifies that you wrote it or otherwise have the right to
+ pass it on as a open-source patch. The rules are pretty simple: if you
+ can certify the below:
+
+ By making a contribution to this project, I certify that:
+
+ (a) The contribution was created in whole or in part by me and I
+ have the right to submit it under the open source license
+ indicated in the file; or
+
+ (b) The contribution is based upon previous work that, to the best
+ of my knowledge, is covered under an appropriate open source
+ license and I have the right under that license to submit that
+ work with modifications, whether created in whole or in part
+ by me, under the same open source license (unless I am
+ permitted to submit under a different license), as indicated
+ in the file; or
+
+ (c) The contribution was provided directly to me by some other
+ person who certified (a), (b) or (c) and I have not modified it.
+
+ (d) I understand and agree that this project and the contribution
+ are public and that a record of the contribution (including all
+ personal information I submit with it, including my sign-off) is
+ maintained indefinitely and may be redistributed consistent with
+ this project or the open source license(s) involved.
+
+ then you just add a line saying
+
+ Signed-off-by: Random J Developer <random@developer.example.org>
+
+ using your real name (sorry, no pseudonyms or anonymous contributions.)
+
+
+ * for more details see:
+
+ The perfect patch
+ http://userweb.kernel.org/~akpm/stuff/tpp.txt
+
+CODING STYLE:
+
+ * the preferred coding style is based on the linux kernel Documentation/CodingStyle.
+ For more details see:
+
+ http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob_plain;f=Documentation/CodingStyle
+
+
+SCM (source code management):
+
+ git clone git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git util-linux
+
+
+ * maintenance (stable) branch
+ - created for every <major>.<minor> release
+ - branch name: stable/v<major>.<minor>
+
+ * bugfix branch
+ - created for <major>.<minor>.<maint> release for critical/security bugs only
+ - this branch is optional
+ - branch name: stable/v<major>.<minor>.<maint>
+
+ * master branch
+ - the status of this branch is: "it works for me". It means useful
+ but not well tested patches.
+ - it's source for occasional snapshots
+ - for long-term development or invasive changes should be an active
+ development forked into a separate branch (topic branches) from the
+ tip of "master".
+
+ * A new tag object is created for:
+ - every release, tag name: v<version>
+
+
+ * KNOWN BUGS:
+ - tag v2.13.1 is typo. Please, ignore this tag.
+
diff --git a/Documentation/TODO b/Documentation/TODO
new file mode 100644
index 000000000..8341b94d2
--- /dev/null
+++ b/Documentation/TODO
@@ -0,0 +1,292 @@
+
+ Note that items with (!) have high priority.
+
+dmesg
+-----
+
+ - add --follow option
+ http://www.spinics.net/lists/util-linux-ng/msg04453.html
+
+ - add --color to colorize err and panic messages
+
+minix (fsck, mkfs)
+------------------
+
+ - clean up types -- use ino_t, size_t and ssize_t
+
+libmount (mount/umount)
+-----------------------
+
+ Note that the old mount/[u]mount.c code is in MAINTENANCE MODE only. All new
+ features should be implemented to libmount or to the new mount/umount
+ implementation in the libmount/samples/ directory.
+
+ - (!) on systems with regular mtab file it is impossible to umount by "umount
+ /dev/loop0" if the loop device has been created by "mount -o loop", because
+ there is backing file in the mtab (instead of the device name).
+
+ Now we have all necessary information in /sysfs so it should be possible to
+ translate the device name to backing file and then search in mtab for the
+ filename. See loopdev_get_loopfile().
+
+ - (!!!) add libmount based umount(8) (see libmount/samples/ where is new mount(8)
+ implementation.
+
+ - (!) add --source and --target options to specify device and mountpoint
+
+ fstab:
+ /dev/sda1 /foo auto defaults 0 0
+ /foo /mnt auto bind 0 0
+ command line:
+ mount -o remount,ro /foo
+
+ ... this command is ambiguous. It would be better to have a way how specify
+ target or source:
+
+ mount --target /foo -o remount,ro
+
+ Note that findmnt(8) already supports --target and --source.
+
+ - add ---target-prefix option to specify prefix for mountpoints
+ so then you can
+
+ LIBMOUNT_FSTAB=/etc/fstab.foo mount -a --target-prefix=$FOO_ROOT
+
+ to create a new hierarchy of filesystems at $FOO_ROOT.
+
+ - umount by label:
+ # mount LABEL=mylabel
+ # umount LABEL=mylabel
+
+losetup
+-------
+
+ - (!!!) use new lib/sysfs.c code for losetup(8), the new implementation should
+ be moved to sys-utils/losetup.c.
+
+ - (!!!) add support for LOOP_CTL_ ioctls (probably will be in kernel 3.1 or 3.2)
+
+libblkd and libmountL
+----------------------------
+
+ - use __attribute__((notnull)) and __attribute__((warn_unused_result))
+ Note that the code has to be usefull for non-gcc compilers too.
+
+partx
+-----
+
+ - (!) add support loop devices:
+
+ partx -a /path/file.img
+
+ * associate the file with loop device (use lib/loopdev.c)
+ * map partitions by BLKPG_ADD_PARTITION
+
+ - support mapping by device-mapper if argv[0] is "kpartx" or --dm option is used.
+
+ - (!) add regression tests for partx, addpart and delpart
+
+
+docs
+----
+
+ - (!) use something better than gtk-doc for libmount and libblkid (doxyden?)
+
+ - (!) add API documentation to libuuid
+
+ - add Documentation/ directory with:
+ - man page template
+ - usage() HOW-TO
+ - move README.devel to the Documentation/
+
+build-sys
+--------
+
+ - use non-recursive build-sys, see
+ http://thread.gmane.org/gmane.linux.utilities.util-linux-ng/3297
+
+ - we use something like
+
+ AC_ARG_ENABLE(...., enable_foo=check)
+ build_foo=yes
+ if test "x$enable_foo" = xcheck; then
+ if test "x$linux_os" = xno; then
+ build_foo=no
+ fi
+ fi
+ AM_CONDITIONAL(BUILD_FOO, test "x$build_foo" = xyes)
+
+ for Linux-only utils in configure.ac. It would be nice to set all defaults
+ for all "$enable_" variables at the begin of the configure script according to
+ $linux_os. Something like:
+
+ if test "x$linux_os" = xno
+ enable_mount=no
+ enable_libmount=no
+ enable_lsblk=no
+ fi
+
+ then we can remove all "if test "x$enable_foo" = xcheck;" stuff from the rest
+ of the configure script.
+
+ - it would be nice to remove all "if BUILD_LIB{MOUNT,BLKID,UUID}" from the
+ Makefiles (e.g. misc-utils/Makefile.am) and use BUILD_<utilname> only
+
+ The configure.ac has to care about dependence between utils and librares and
+ enable BUILD_<utilname>.
+
+lib/tt.c
+--------
+
+ - allows to sort columns, for example sort lsblk(8) output by SIZE
+
+login-utils:
+-----------
+
+ - use err() and warn() macros rather than fprintf(stderr, ...)
+
+libblkid
+--------
+
+ - remove strerrr() from debug messages (use %m) to make BLKID_DEBUG= output
+ thread-safe
+
+ - (!) don't use internally blkid_loff_t, rather use off_t, size_t, ssize_t,
+ stdint.h types and so on...
+
+ - add -<BE|LE> suffix to test images for native-endian filesystems (e.g. swap)
+ and add support for such functionality to tests/ts/blkid/low-probe
+
+ - add FSSIZE value -- filesystem size (klibc requirement)
+
+ - (!) add support for dasd PT (used for example on s390)
+
+ - (!!!) support PARTUUID= tag
+
+ * the partitions probing is already supported by low-level part of the
+ library, but it's necessary add support for this tag also to high-level
+ blkid_cache and blkid_evaluate_* APIs
+
+ * add blkid -P <PARTUUID>
+
+ * add PARTUUID to wipefs output
+
+wipefs
+------
+
+ - some filesystem (namely FAT) contains more magic strings, so if you erase
+ one magic string the FS is still detectable by libblkid. We have to inform
+ users that there is more valid magic string for the same FS.
+
+ - (!!!) allow to wipe partition tables
+
+fdisk(s)
+--------
+
+ - add "move end" command to move end of the last primary/extended partition.
+ This feature seems very attractive to users who resizing their disks
+ (for example in virtual machines).
+
+ - sfdisk has to use rpmatch() for answers to y/n questions
+ (e.g. "Are you satisfied with this? [ynq]")
+
+ - sfdisk rounds to cylinders is -uM (megabyte units) is specified, this is
+ pretty stupid feature. It has to round to sectors if -uS or -uM is specified.
+
+ - Sun label support is completely useless for large disks, it uses number of
+ cylinders from on-disk-label where the geometry is stored by int16 values.
+ It seems better to completely ignore this stuff from the label and always
+ use geometry + BLKGETSIZE64 from kernel.
+
+ - use off_t instead "long long"
+
+ - catch SIGINT (Ctrl-C) and return to main menu.
+ From Red Hat bugzilla #545488:
+
+ While using fdisk normally, if you accidentally pressed the wrong button (to
+ start a sequence of questions for some operation, e.g. 'c' to create
+ partition). The tool tries too hard to keep asking you for valid input. You
+ can't provide a blank or invalid input to get it to break out of the current
+ dialog sequence and get back to the main menu.
+
+ - fdisk/* refactoring (probably implement libfdisk ???)
+
+ - add GPT support (probably implement libfdisk ???)
+
+misc
+----
+
+ - switch_root:
+ - move all mountpoints to the newroot (there are hardcoded /proc /sys and /dev paths now)
+ - add --dont-move[=<list of dirs>] options
+
+ - use ngettext() for strings with plurals, for example
+
+ /* include/nls.h */
+ #define P_(id, id_plural, n) ngettext(id, id_plural, n)
+
+ printf(P_("%d used sector",
+ "%d used sectors", sectors),
+ sectors);
+
+ - use TZ=UTC and LANG=en_US.UTF-8 for tests
+
+ - add mllockall() and SCHED_FIFO to hwclock,
+ see http://lkml.org/lkml/2008/10/12/132
+
+ - use rpmatch() for all Y/N questions
+
+
+---------------
+exotic requests
+---------------
+
+ - mount -a -- reorder fstab entries by paths before mount (just idea only)
+
+ - mount -a (just idea only)
+
+ Date: Sun, 3 Jun 2007 18:04:24 +0300 (MET DST)
+ From: Szabolcs Szakacsits <szaka@sienet.hu>
+
+ In the past the right record order could be figured out easily by just
+ checking out fstab (if one knew what to look for) but considering the
+ fastly increasing number of user space file systems and their usage, with
+ their path, library, etc dependencies, it's getting trickier and is a black
+ magic for most users because they simply expect drives to be mounted
+ independently of their order in fstab.
+
+ One typical, wrongly edited fstab example is:
+
+ /dev/hda2 / ext3 defaults 1 1
+ /dev/hda1 /mnt/windows ntfs-3g defaults 0 0
+ /dev/hda3 /usr ext3 defaults 0 0
+
+ The events:
+
+ mount -> /sbin/mount.ntfs-3g ->
+ -> resolves to <path1>/ntfs-3g via a symlink ->
+ -> ntfs-3g requires at least <path2>/libfuse*
+
+ There are many potential solutions. For example installing everything on
+ the root file system which may be needed for successful mount. But this
+ is not always feasible or practical since we could end up putting almost
+ everything on the root file system in the end.
+
+ Another idea is an improved mount strategy:
+
+ do {
+ try to mount all unmounted entries
+ } while (not all mounted && at least one new was successfully mounted)
+
+ - rewrite ipcs to use /proc/sys/kernel rather than unreliable syscalls
+ (there are problems with 32bit userspace on 64bit kernel)
+
+
+ - add SELinux security contexts support to the 'ipcs' utility
+ http://bugzilla.redhat.com/show_bug.cgi?id=225342
+
+ Would be great to list the current system IPC Objects with their respective
+ security labels (where allowed) with something like 'ipcs -Z' - following the
+ way other tools reports those.
+
+
diff --git a/Documentation/blkid.txt b/Documentation/blkid.txt
new file mode 100644
index 000000000..4fa9be1f7
--- /dev/null
+++ b/Documentation/blkid.txt
@@ -0,0 +1,78 @@
+libblkid - a library to handle device identification and token extraction
+
+Basic usage is as follows - there are two normal usage patterns:
+
+For cases where a program wants information about multiple devices, or
+expects to be doing multiple token searches, the program should
+directly initialize cache file via (second parameter is cache
+filename, NULL = default):
+
+ blkid_cache cache = NULL;
+ if (blkid_get_cache(&cache, NULL) < 0)
+ /* error reading the cache file, not really fatal */
+
+Note that if no cache file exists, an empty cache struct is still
+allocated. Usage of libblkid functions will use the cache to avoid
+needless device scans.
+
+The model of the blkid cache is that each device has a number of
+attributes that can be associated with it. Currently the attributes
+which are supported (and set) by blkid are:
+
+ TYPE filesystem type
+ UUID filesystem uuid
+ LABEL filesystem label
+
+
+How to use libblkid? Normally, you either want to find a device with
+a specific NAME=value token, or you want to output token(s) from a
+device. To find a device that matches a following attribute, you
+simply call the blkid_get_devname() function:
+
+ if ((devname = blkid_get_devname(cache, attribute_name, value))) {
+ /* do something with devname */
+ string_free(devname);
+ }
+
+The cache parameter is optional; if it is NULL, then the blkid library
+will load the default blkid.tab cache file, and then release the cache
+before function call returns. The return value is an allocated string
+which holds the resulting device name (if it is found). If the value
+is NULL, then attribute_name is parsed as if it were
+"<attribute_name>=<value>"; if it cannot be so parsed, then the
+original attribute_name is returned in a copied allocated string.
+This is a convenience to allow user programs to want to translate user
+input, whether it is of the form: "/dev/hda1", "LABEL=root",
+"UUID=082D-26E3", and get back a device name that it can use.
+
+Alternatively, of course, the programmer can pass an attribute name of
+"LABEL", and value of "root", if that is more convenient.
+
+Another common usage is to retrieve the value of a specific attribute
+for a particular device. This can be used to determine the filesystem
+type, or label, or uuid for a particular device:
+
+ if ((value = blkid_get_tag_value(cache, attribute_name, devname))) {
+ /* do something with value */
+ string_free(value);
+ }
+
+If a program needs to call multiple blkid functions, then passing in a
+cache value of NULL is not recommended, since the /etc/blkid.tab file
+will be repeatedly parsed over and over again, with memory allocated
+and deallocated. To initialize the blkid cache, blkid_get_cache()
+function is used:
+
+ if (blkid_get_cache(&cache, NULL) < 0)
+ goto errout;
+
+The second parameter of blkid_get_cache (if non-zero) is the alternate
+filename of the blkid cache file (where the default is
+/etc/blkid.tab). Normally, programs should just pass in NULL.
+
+If you have called blkid_get_cache(), you should call blkid_put_cache()
+when you are done using the blkid library functions. This will save the
+cache to the blkid.tab file, if you have write access to the file. It
+will also free all associated devices and tags:
+
+ blkid_put_cache(cache);
diff --git a/Documentation/cal.txt b/Documentation/cal.txt
new file mode 100644
index 000000000..638ac9dff
--- /dev/null
+++ b/Documentation/cal.txt
@@ -0,0 +1,42 @@
+The cal(1) date routines were written from scratch, basically from first
+principles. The algorithm for calculating the day of week from any
+Gregorian date was "reverse engineered". This was necessary as most of
+the documented algorithms have to do with date calculations for other
+calendars (e.g. julian) and are only accurate when converted to gregorian
+within a narrow range of dates.
+
+1 Jan 1 is a Saturday because that's what cal says and I couldn't change
+that even if I was dumb enough to try. From this we can easily calculate
+the day of week for any date. The algorithm for a zero based day of week:
+
+ calculate the number of days in all prior years (year-1)*365
+ add the number of leap years (days?) since year 1
+ (not including this year as that is covered later)
+ add the day number within the year
+ this compensates for the non-inclusive leap year
+ calculation
+ if the day in question occurs before the gregorian reformation
+ (3 sep 1752 for our purposes), then simply return
+ (value so far - 1 + SATURDAY's value of 6) modulo 7.
+ if the day in question occurs during the reformation (3 sep 1752
+ to 13 sep 1752 inclusive) return THURSDAY. This is my
+ idea of what happened then. It does not matter much as
+ this program never tries to find day of week for any day
+ that is not the first of a month.
+ otherwise, after the reformation, use the same formula as the
+ days before with the additional step of subtracting the
+ number of days (11) that were adjusted out of the calendar
+ just before taking the modulo.
+
+It must be noted that the number of leap years calculation is sensitive
+to the date for which the leap year is being calculated. A year that occurs
+before the reformation is determined to be a leap year if its modulo of
+4 equals zero. But after the reformation, a year is only a leap year if
+its modulo of 4 equals zero and its modulo of 100 does not. Of course,
+there is an exception for these century years. If the modulo of 400 equals
+zero, then the year is a leap year anyway. This is, in fact, what the
+gregorian reformation was all about (a bit of error in the old algorithm
+that caused the calendar to be inaccurate.)
+
+Once we have the day in year for the first of the month in question, the
+rest is trivial.
diff --git a/Documentation/cfdisk.txt b/Documentation/cfdisk.txt
new file mode 100644
index 000000000..5241ad136
--- /dev/null
+++ b/Documentation/cfdisk.txt
@@ -0,0 +1,45 @@
+Announcing the new curses based fdisk program... cfdisk
+
+cfdisk is a curses based disk drive partitioning program that can
+create partitions for a wide variety of operating systems including
+Linux, MS-DOS and OS/2. cfdisk was inspired by the fdisk program, by
+A. V. Le Blanc (LeBlanc@mcc.ac.uk). I hope that this program will be
+useful to both new and old Linux users, and I hope it will make the
+installation process easier.
+
+
+ **** WARNING ****
+If you write a bad partition table to disk, it may destroy data and
+partitions.
+
+
+You can FTP cfdisk from ftp.cs.unc.edu in the /pub/martin/linux
+directory.
+
+I would also like comments (good and bad) on the user interface, logic
+and ease of use. If you have any suggestions for improvements, I
+would be happy to hear them.
+
+My e-mail address is martin@cs.unc.edu.
+
+-------------------------------------------------------------------
+
+ Copyright (C) 1994 Kevin E. Martin (martin@cs.unc.edu)
+
+cfdisk is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License as published by the
+Free Software Foundation; either version 2 of the License, or (at your
+option) any later version.
+
+cfdisk is distributed in the hope that it will be useful, but WITHOUT
+ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+for more details.
+
+You should have received a copy of the GNU General Public License
+along with cfdisk; if not, write to the Free Software Foundation,
+Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+
+___
+Kevin E. Martin University of North Carolina at Chapel Hill
+martin@cs.unc.edu Department of Computer Science
diff --git a/Documentation/col.txt b/Documentation/col.txt
new file mode 100644
index 000000000..2a7dd6ca4
--- /dev/null
+++ b/Documentation/col.txt
@@ -0,0 +1,48 @@
+# @(#)README 5.1 (Berkeley) 5/22/90
+
+col - filter out reverse line feeds.
+
+Options are:
+ -b do not print any backspaces (last character written is printed)
+ -f allow half line feeds in output, by default characters between
+ lines are pushed to the line below
+ -x do not compress spaces into tabs.
+ -l num keep (at least) num lines in memory, 128 are kept by default
+
+In the 32V source code to col(1) the default behavior was to NOT compress
+spaces into tabs. There was a -h option which caused it to compress spaces
+into tabs. There was no -x flag.
+
+The 32V documentation, however, was consistent with the SVID (actually, V7
+at the time) and documented a -x flag (as defined above) while making no
+mention of a -h flag. Just before 4.3BSD went out, CSRG updated the manual
+page to reflect the way the code worked. Suspecting that this was probably
+the wrong way to go, this version adopts the SVID defaults, and no longer
+documents the -h option.
+
+The S5 -p flag is not supported because it isn't clear what it does (looks
+like a kludge introduced for a particular printer).
+
+Known differences between AT&T's col and this one (# is delimiter):
+ Input AT&T col this col
+ #\nabc\E7def\n# # def\nabc\r# # def\nabc\n#
+ #a# ## #a\n#
+ - last line always ends with at least one \n (or \E9)
+ #1234567 8\n# #1234567\t8\n# #1234567 8\n#
+ - single space not expanded to tab
+ -f #a\E8b\n# #ab\n# # b\E9\ra\n#
+ - can back up past first line (as far as you want) so you
+ *can* have a super script on the first line
+ #\E9_\ba\E8\nb\n# #\n_\bb\ba\n# #\n_\ba\bb\n#
+ - always print last character written to a position,
+ AT&T col claims to do this but doesn't.
+
+If a character is to be placed on a line that has been flushed, a warning
+is produced (the AT&T col is silent). The -l flag (not in AT&T col) can
+be used to increase the number of lines buffered to avoid the problem.
+
+General algorithm: a limited number of lines are buffered in a linked
+list. When a printable character is read, it is put in the buffer of
+the current line along with the column it's supposed to be in. When
+a line is flushed, the characters in the line are sorted according to
+column and then printed.
diff --git a/Documentation/ddate.txt b/Documentation/ddate.txt
new file mode 100644
index 000000000..87d0fb8bb
--- /dev/null
+++ b/Documentation/ddate.txt
@@ -0,0 +1,73 @@
+
+PERPETUAL DATE CONVERTER FROM GREGORIAN TO POEE CALENDAR
+
+SEASONS
+ 1. Chaos -- Patron Apostle Hung Mung
+ 2. Discord -- Patron Apostle Dr. Van Van Mojo
+ 3. Confusion -- Patron Apostle Sri Syadasti
+ 4. Bureaucracy -- Patron Apostle Zarathud
+ 5. The Aftermath -- Patron Apostle the Elder Malaclypse
+
+DAYS OF THE WEEK*
+ 1. Sweetmorn *The DAYS OF THE WEEK
+ 2. Boomtime are named from the five
+ 3. Pungenday basic elements: SWEET,
+ 4. Prickle-Prickle BOOM, PUNGENT, PRICKLE,
+ 5. Setting Orange and ORANGE.
+
+HOLYDAYS
+A. Apostle Holydays B. Seasons Holydays
+ 1. Mungday 1. Chaoflux
+ 2. Mojoday 2. Discoflux
+ 3. Syaday 3. Confuflux
+ 4. Zaraday 4. Bureflux
+ 5. Maladay 5. Afflux
+Each occurs on the 5th Each occurs on the 50th
+day of the Season day of the Season
+
+C. Saint Tib's Day -- occurs once every four years (1 + 4 = 5) and is
+ inserted between the 59th and 60th days of the Season of Chaos
+
+ ST BT PD PP SO SM BT PD PP SO
+Jan 1 2 3 4 5 1 2 3 4 5 Chs Jul 5 6 7 8 9 40 41 42 43 44 Cfn
+ 6 7 8 9 10 6 7 8 9 10 10 11 12 13 14 45 46 47 48 49
+ 11 12 13 14 15 11 12 13 14 15 15 16 17 18 19 50 51 52 53 54
+ 16 17 18 19 20 16 17 18 19 20 20 21 22 23 24 55 56 57 58 59
+ 21 22 23 24 25 21 22 23 24 25 25 26 27 28 29 60 61 62 63 64
+ 26 27 28 29 30 26 27 28 29 30 30 31 1 2 3 65 66 67 68 69
+ 31 1 2 3 4 31 32 33 34 35 Aug 4 5 6 7 8 70 71 72 73 1 Bcy
+Feb 5 6 7 8 9 36 37 38 39 40 9 10 11 12 13 2 3 4 5 6
+ 10 11 12 13 14 41 42 43 44 45 14 15 16 17 18 7 8 9 10 11
+ 15 16 17 18 19 46 47 48 49 50 19 20 21 22 23 12 13 14 15 16
+ 20 21 22 23 24 51 52 53 54 55 24 25 26 27 28 17 18 19 20 21
+ 25 26 27 28* 1 56 57 58 59 60 29 30 31 1 2 22 23 24 25 26
+Mar 2 3 4 5 6 61 62 63 64 65 Sep 3 4 5 6 7 27 28 29 30 31
+ 7 8 9 10 11 66 67 68 69 70 8 9 10 11 12 32 33 34 35 36
+ 12 13 14 15 16 71 72 73 1 2 Dsc 13 14 15 16 17 37 38 39 40 41
+ 17 18 19 20 21 3 4 5 6 7 18 19 20 21 22 42 43 44 45 46
+ 22 23 24 25 26 8 9 10 11 12 23 24 25 26 27 47 48 49 50 51
+ 27 28 29 30 31 13 14 15 16 17 28 29 30 1 2 52 53 54 55 56
+Apr 1 2 3 4 5 18 19 20 21 22 Oct 3 4 5 6 7 57 58 59 60 61
+ 6 7 8 9 10 23 24 25 26 27 8 9 10 11 12 62 63 64 65 66
+ 11 12 13 14 15 28 29 30 31 32 13 14 15 16 17 67 68 69 70 71
+ 16 17 18 19 20 33 34 35 36 37 18 19 20 21 22 72 73 1 2 3 Afm
+ 21 22 23 24 25 38 39 40 41 42 23 24 25 26 27 4 5 6 7 8
+ 26 27 28 29 30 43 44 45 46 47 28 29 30 31 1 9 10 11 12 13
+May 1 2 3 4 5 48 49 50 51 52 Nov 2 3 4 5 6 14 15 16 17 18
+ 6 7 8 9 10 53 54 55 56 57 7 8 9 10 11 19 20 21 22 23
+ 11 12 13 14 15 58 59 60 61 62 12 13 14 15 16 24 25 26 27 28
+ 16 17 18 19 20 63 64 65 66 67 17 18 19 20 21 29 30 31 32 33
+ 21 22 23 24 25 68 69 70 71 72 22 23 24 25 26 34 35 36 37 38
+ 26 27 28 29 30 73 1 2 3 4 Cfn 27 28 29 30 1 39 40 41 42 43
+ 31 1 2 3 4 5 6 7 8 9 Dec 2 3 4 5 6 44 45 46 47 48
+Jun 5 6 7 8 9 10 11 12 13 14 7 8 9 10 11 49 50 51 52 53
+ 10 11 12 13 14 15 16 17 18 19 12 13 14 15 16 54 55 56 57 58
+ 15 16 17 18 19 20 21 22 23 24 17 18 19 20 21 59 60 61 62 63
+ 20 21 22 23 24 25 26 27 28 29 22 23 24 25 26 64 65 66 67 68
+ 25 26 27 28 29 30 31 32 33 34 27 28 29 30 31 69 70 71 72 73
+ 30 1 2 3 4 35 36 37 38 39 [1970 = 3136] [Next St. Tib's Day in 3138]
+
+ SACRED DOCUMENT OF THE FROGS (old Erisian poem):
+ 73 Days hath
+ Chaos, Discord, Confusion, Bureaucracy, and Aftermath
+
diff --git a/Documentation/deprecated.txt b/Documentation/deprecated.txt
new file mode 100644
index 000000000..7c6b0d326
--- /dev/null
+++ b/Documentation/deprecated.txt
@@ -0,0 +1,46 @@
+The following is a list of commands or features that are deprecated. All
+deprecated utils are in maintenance mode and we keep them in source tree for
+backward compatibility only.
+
+What: line(1) command
+Why: useless, nobody uses this command, head(1) is better
+
+--------------------------
+
+What: losetup -s
+Why: the option -s is in collision with the Loop-AES losetup dialect that is used
+ in some distributions. Use the long version (--show) only.
+
+--------------------------
+
+What: cryptoloop support in mount/losetup
+Why: depreciated in favor of dm-crypt.
+
+---------------------------
+
+What: elvtune
+Why: useless for kernel >= 2.6.9
+
+---------------------------
+
+What: arch(1) command
+Why: deprecated in favor of uname(1) or arch(1) from coreutils
+
+ The arch(1) has been added (during 2.13 development cycle) to coreutuls
+ where it will be maintained as an alias for uname(1) command.
+
+----------------------------
+
+What: newgrp(1)
+Why: deprecated in favor of newgrp from shadow-utils
+
+----------------------------
+
+What: vipw/vigr(8)
+Why: deprecated in favor of vipw/vigr(8) from shadow-utils
+
+----------------------------
+
+What: last(1)
+Why: nobody uses this implementation
+
diff --git a/Documentation/example.files/filesystems b/Documentation/example.files/filesystems
new file mode 100644
index 000000000..cd56ee724
--- /dev/null
+++ b/Documentation/example.files/filesystems
@@ -0,0 +1,7 @@
+ext4
+ext3
+vfat
+hfs
+hfsplus
+iso9660
+btrfs
diff --git a/Documentation/example.files/fstab b/Documentation/example.files/fstab
new file mode 100644
index 000000000..8cffa6460
--- /dev/null
+++ b/Documentation/example.files/fstab
@@ -0,0 +1,15 @@
+# /etc/fstab
+# static file system information
+#
+# This file is not used by the kernel, but rather by mount(8) and umount(8)
+# (and some day fsck(8)). Comment lines have "#" in the first column.
+#
+# For more information see fstab(5) man page.
+#
+# device directory type options freq pass
+UUID=2cda1e08-1f22-490b-9101-c93d511bc9c9 / ext4 defaults 1 1
+UUID=805e7418-fc20-4dcf-830c-729781e58d1a /boot ext4 defaults 1 2
+proc /proc proc defaults 0 0
+sysfs /sys sysfs defaults 0 0
+tmpfs /dev/shm tmpfs defaults 0 0
+devpts /dev/pts devpts gid=5,mode=620 0 0
diff --git a/Documentation/example.files/motd b/Documentation/example.files/motd
new file mode 100644
index 000000000..842a6f3bc
--- /dev/null
+++ b/Documentation/example.files/motd
@@ -0,0 +1,10 @@
+
+ |^^^^^^|
+ | | _____________________
+ | | / \
+ | (o)(o) | |
+ @ _) | BOGUS man!! |
+ | ,___| ,,| |
+ | / ..'' | |
+ /____\ \_____________________/
+
diff --git a/Documentation/example.files/securetty b/Documentation/example.files/securetty
new file mode 100644
index 000000000..d874765d2
--- /dev/null
+++ b/Documentation/example.files/securetty
@@ -0,0 +1,5 @@
+tty1
+tty2
+tty3
+tty4
+ttyS1
diff --git a/Documentation/example.files/shells b/Documentation/example.files/shells
new file mode 100644
index 000000000..14b99f1aa
--- /dev/null
+++ b/Documentation/example.files/shells
@@ -0,0 +1,4 @@
+/bin/sh
+/bin/bash
+/bin/csh
+/bin/tcsh
diff --git a/Documentation/example.files/udev-raw.rules b/Documentation/example.files/udev-raw.rules
new file mode 100644
index 000000000..3f0e8cb70
--- /dev/null
+++ b/Documentation/example.files/udev-raw.rules
@@ -0,0 +1,7 @@
+# Enter raw device bindings here.
+#
+# An example would be:
+# ACTION=="add", KERNEL=="sda", RUN+="/bin/raw /dev/raw/raw1 %N"
+# to bind /dev/raw/raw1 to /dev/sda, or
+# ACTION=="add", ENV{MAJOR}=="8", ENV{MINOR}=="1", RUN+="/bin/raw /dev/raw/raw2 %M %m"
+# to bind /dev/raw/raw2 to the device with major 8, minor 1.
diff --git a/Documentation/fdisk.txt b/Documentation/fdisk.txt
new file mode 100644
index 000000000..69cfff67c
--- /dev/null
+++ b/Documentation/fdisk.txt
@@ -0,0 +1,583 @@
+`fdisk': the Linux partition table editor
+=========================================
+
+`fdisk' is the Linux partition table editor. In this section we
+examine this utility and try to describe it thoroughly enough so that
+anyone can use it.
+
+* Contents:
+
+* Disks and how they are described.
+* Dividing up your disk.
+* The `fdisk' command.
+* Deleting and adding partitions.
+* Active flags and system types.
+* Extra commands for experts.
+* Warnings for `fdisk' users.
+
+
+Disks and how they are described
+--------------------------------
+
+A typical disk consists physically of one or more circular objects
+called "platters", which rotate about a central axis. Devices called
+"heads" move to specified places on the disk surface to read or write
+information. There is usually one head on each side of every platter,
+and all these heads are attached to a comb-like controller arm which
+moves all of them at the same time, either closer to the centre of the
+disk, or closer to the outer edge.
+
+Suppose the arm is in one position, putting an area of the disk
+surface within reach of one or another of the heads. This total area,
+everything that is accessible without moving the arm, is called a
+"cylinder". (A cylinder is a barrel-shaped cross section of a disk,
+consisting of a circular strip from each side of each platter.) The
+part of a cylinder that one head can read or write without moving is
+called a "track".
+
+Each track is divided into several pie-shaped slices called
+"sectors", which are the smallest parts of the disk which can be read
+or written at a time. The sectors on one disk are usually all the same
+size.
+
+In fact, there are not always two heads to every platter, there are
+some disks which do not have the same amount of data in every cylinder,
+and there may be disks which do not have the same amount of data in
+every sector. These features are usually hidden on PCs by the
+controller card or the BIOS, which map the physical geometry of a disk
+onto a logical geometry, which is what is actually used to access the
+disk.
+
+The numbers which describe the "geometry" of a disk are
+
+ 1. The number of cylinders it contains.
+
+ 2. The number of tracks per cylinder, which is the number of heads.
+
+ 3. The number of sectors per track.
+
+ 4. The number of bytes per sector.
+
+These numbers vary from disk to disk, but a typical PC disk might
+have about 1000 cylinders, half a dozen heads, and 15 or 20 sectors per
+track, with each sector containing 512 bytes or characters; such a disk
+contains 40 to 60 megabytes of data. A "double density" floppy disk
+contains 40 cylinders, with 2 heads (2 tracks per cylinder), and with 9
+sectors per track; such a disk contains 360 kilobytes, or 360 * 1024
+characters. A "high density" 3.5 inch floppy contains 80 cylinders,
+with 2 heads and 18 sectors per track, or 1.44 megabytes, or 1440 *
+1024 characters.
+
+The exact size of a track or cylinder in bytes varies from one disk
+to another. This `fdisk' for Linux deals mainly with cylinders, since
+this is the best unit to use when allocating space for partitions. It
+reports partition sizes in "blocks" of 1024 bytes, or 2 sectors, since
+`mkswap' and the various `mkfs' programs require this number. A block
+is the smallest amount of space which can be set aside for a file in
+the current file systems.
+
+An operating system, such as Linux or DOS or OS/2, may use a disk in
+any way that it wishes, but if two operating systems share the same
+disk, they must agree on who owns what, or else one will interfere with
+the other (that is, by damaging the other's files). A "partition" is a
+section of a hard disk which is handled as a unit by all operating
+systems which can access the disk. The standard way to define
+partitions (for the moment) is the "partition table", a list of
+information which is stored in parts of the disk that don't belong to
+any of the systems using the disk. The beginning of the partition
+table is stored in the disk's primary boot sector, and the rest is
+stored in a chain of sectors scattered throughout the disk.
+
+The first sector on the disk is called the "primary boot block" or
+"primary boot sector" because (1) it comes first, before other, similar
+sectors; (2) it tells where the other, similar sectors are found, so
+that it is logically `prior' to them; and (3) it usually contains code
+which is executed when the system boots up. This sector contains a
+table describing at most four partitions. These areas are called
+"primary partitions".
+
+The partition table in the primary boot sector may also describe at
+most one "extended partition". This is a large area of the disk,
+usually containing all the space which is not in any primary partition.
+Within this space we can set aside other areas which are called
+"logical partitions", because they look almost exactly like primary
+partitions. In fact, the main difference between them is that we can
+boot from primary partitions, while we cannot boot from logical
+partitions. This happens because the address of a primary partition is
+in a fixed place, whereas the address of a secondary partition is not,
+so we require a more complicated process to discover it, one which is
+too difficult for most primary boot programs.
+
+
+Dividing up your disk
+---------------------
+
+It is a good idea to plan ahead before you start creating partitions
+on your disk. If you set aside a partition for some purpose, it is not
+easy to change its size: you must backup all the data from the partition,
+whether to floppies, to another partition, to another hard disk, or
+somewhere else; then you must edit the table which describes this
+partition, so changing its size; then you must reboot and initialise
+the new partition, formatting it, for example, under DOS, or running
+`mkfs' under Linux; finally you can copy all the data back. It is
+possible, if you have several partitions, to copy data back and forth
+between them while you change their sizes, but this is a bit risky and
+time consuming. It is better to plan ahead what you will need, since
+it is hard to change it afterwards.
+
+Many people with large disks and recent versions of DOS have their
+entire file system on one large partition. They usually ask, `Isn't
+there any way I can reformat my disk without copying everything off?'
+There is no way to do it using standard DOS utilities, and there is no
+truly safe way to do it using commercial software, because, if you make
+a mistake, you will lose the entire contents of your disk. If you are
+going to back up your disk anyway, you might as well copy the data back
+safely. The Linux FAQ contains references to tools and procedures
+which will allow you to do this, if you dare.
+
+DOS and Linux both allow you to access several partitions on a
+single disk; on DOS these are treated as if they were separate disks or
+drives, and under Linux they are treated as different "devices".
+
+You can have up to 64 partitions on a single IDE disk, or up to 16
+partitions on a single SCSI disk, at least as far as Linux is
+concerned; in practice you will rarely want so many. The maximum size
+of a Linux file system on a single partition depends on the type of
+file system you use. Minix file systems are limited to 64 megabytes.
+You may have all of your Linux files in a single partition, or you may
+have two, three, or more Linux file systems. Similarly you may have
+one or more DOS partitions. If you have several small partitions, you
+run much less risk of losing all your files if your disk gets
+corrupted. On the other hand, you may run out of space on a small
+partition more easily.
+
+Under DOS, you must refer to each partition by a separate drive
+letter, but all partitions are automatically accessible. Under Linux
+only the root partition is automatically accessible, but once we mount
+another partition, it is indistinguishable from the rest of the file
+system. Disks are usually mounted by a command in one of the system
+startup files, `/etc/rc', so you need not worry about having to do it
+yourself whenever you boot the system. But even ordinary users may
+be allowed to mount removable hard disks and floppy disks.
+
+Linux requires at least one partition, which is the `root' of the
+file system. You may prefer to have a separate partition for `/usr',
+which contains most of the executable files, or for `/home', which
+contains most of your private files. You may also wish to set aside a
+partition to use for swap space, depending on the amount of memory your
+PC has. You will certainly need swap space if you have less than 4 MB
+of RAM and wish to compile anything substantial. You can reserve swap
+space in a file, but you need a partition big enough to hold it, and
+this will probably be less efficient than having a partition devoted to
+swap.
+
+The disk space you need for Linux is discussed in README.prepare.
+
+Are you going to boot Linux from the hard disk, or will you boot
+from a floppy? Some boot programs place severe restrictions on where
+the boot partition can be. LILO is more relaxed about this, but does
+require either the Master Boot Record on your first hard disk, or the
+boot record on one of the first four partitions on your first hard disk.
+
+If you have an extended partition with logical partitions in it, you
+can have only three primary partitions containing data.
+
+
+The `fdisk' command
+-------------------
+
+Every operating system, whether DOS, OS/2, or Linux, should provide
+its own utility for editing hard disk partition tables. At least four
+of these utilities have been called `fdisk', for `Fixed DISK setup
+program', where `fixed' means `not removable'. I believe the first PC
+program named `fdisk' came from Microsoft in about 1985; before that
+time disks were too small to divide into separate sections.
+
+Every operating system has its own peculiarities. Normally you
+should set up a partition for the use of one operating system by using
+its own `fdisk' program. Do not use the Linux `fdisk' to create
+partitions for DOS or for any system other than Linux; otherwise you
+may have problems.
+
+An `fdisk' program performs two functions: it reports how the disk is
+configured, and it changes that configuration by adding or deleting
+partitions. Most `fdisk' programs can also change other information in
+partition tables.
+
+This `fdisk' for Linux operates on one hard disk at a time. If you
+give the command
+
+ fdisk
+
+it reports on, and is able to change, `/dev/hda', the first hard
+disk. (If you have no `/dev/hda', `fdisk' uses `/dev/sda' as the
+default device.) To look at or change the second hard disk, `/dev/hdb',
+give the command
+
+ fdisk /dev/hdb
+
+To look at or change the first SCSI disk, give the command
+
+ fdisk /dev/sda
+
+There are some special forms of the `fdisk' command. One of them,
+suggested by Jim Winstead, simply lists all partitions on all available
+disks:
+
+ fdisk -l (where `l' is a letter, not the digit `1')
+
+The option `-v' is provided to list the current version of the
+`fdisk' command. Finally, there is an option `-s' which is not really
+intended for interactive use. It causes fdisk to print the size of a
+partition in blocks of 1024 bytes as follows:
+
+ fdisk -s /dev/hda7
+ 39934
+
+Because this is intended to be used by `mkfs' and `mkswap' programs,
+it does not return the size of extended partitions or of partitions
+whose system type code is less than 10 (hexadecimal a). If you start
+`fdisk' without using one of these special options, it responds by
+asking for a command:
+
+ Command (m for help): _
+
+Each `fdisk' command consists of a single letter, which must be
+followed by <RETURN> before it is obeyed. Upper and lower case are not
+distinguished. Anything you type after the first character is ignored.
+Give the command `m', and you should see this menu:
+ Command action
+ a toggle a bootable flag
+ d delete a partition
+ l list known partition types
+ m print this menu
+ n add a new partition
+ p print the partition table
+ q quit without saving changes
+ t change a partition's system id
+ u change display/entry units
+ v verify the partition table
+ w write table to disk and exit
+ x extra functionality (experts only)
+
+ Command (m for help): _
+
+The simplest commands are Print, Verify, and Quit. On a small disk, the
+Print command might produce a display like this one:
+
+ Disk /dev/hda: 5 heads, 17 sectors, 977 cylinders
+ Units = cylinders of 85 * 512 bytes
+
+ Device Boot Begin Start End Blocks Id System
+ /dev/hda1 * 1 1 236 10021+ 1 DOS 12-bit FAT
+ /dev/hda2 837 837 977 5992+ 5 Extended
+ /dev/hda3 * 237 237 836 25500 83 Linux native
+ /dev/hda5 837 837 936 4249+ 82 Linux swap
+ /dev/hda6 942 942 977 1522 1 DOS 12-bit FAT
+
+There are 5 partitions reported; `/dev/hda4' does not appear because
+it is not allocated. Partitions 1 and 3 are flagged as bootable. The
+size of each partition is reported in 1 kilobyte blocks; hence the
+primary Linux partition, partition 3, is 25 1/2 megabytes in size. The
+`+' after three of the sizes warns that these partitions contain an odd
+number of sectors: Linux normally allocates filespace in 1 kilobyte
+blocks, so the extra sector in partition 5 is wasted. Id numbers are
+reported in hexadecimal and explained in English.
+
+The display/entry units may be either cylinders or sectors. The
+default is cylinders, but changing the units makes the print command
+display the following table for the system reported above:
+
+ Disk /dev/hda: 5 heads, 17 sectors, 977 cylinders
+ Units = sectors of 1 * 512 bytes
+
+ Device Boot Begin Start End Blocks Id System
+ /dev/hda1 * 1 17 20059 10021+ 1 DOS 12-bit FAT
+ /dev/hda2 71060 71060 83044 5992+ 5 Extended
+ /dev/hda3 * 20060 20060 71059 25500 83 Linux native
+ /dev/hda5 71061 71061 79559 4249+ 82 Linux swap
+ /dev/hda6 79985 80001 83044 1522 1 DOS 12-bit FAT
+
+The start of data in both DOS partitions is 16 sectors after the
+beginning of the partition: this is one reason why you should use DOS's
+own `FDISK' to create DOS partitions. Changing the units to sectors
+also affects the way in which the new partition command asks for the
+beginning and end of a new partition.
+
+*Warning*: it is dangerous to create a new partition when the
+display/entry units are sectors.
+
+The Verify command is useful because
+
+ 1. It warns you if anything is wrong. *Always* do a Verify command
+ to check your work before writing any changes to disk.
+
+ 2. It reports how many unallocated sectors there are on the disk.
+
+The Quit command is also useful. `fdisk' does not actually change
+any data on your disk unless you give a Write command. If you are
+unhappy about any changes you may have made, give the Quit command, and
+your disk will remain as it was before you ran `fdisk'. You can also
+interrupt `fdisk' with `CTRL-C'.
+
+
+Deleting and adding partitions
+------------------------------
+
+Deleting a partition is simple. Give the Delete command by typing
+`d'. `fdisk' asks:
+
+ Partition number (1-6): _
+
+Once you get this far, you must either delete a partition or
+interrupt the program with `CTRL-C' (or whatever your current interrupt
+character is). Note:
+
+ 1. You may delete a nonexistent partition. You will get a warning
+ message.
+
+ 2. You may delete an extended partition. This has the side effect of
+ deleting all partitions greater than or equal to 5.
+
+ 3. You may delete a logical partition. In that case, all partitions
+ above it are renumbered at once. For example, if you delete
+ partition 5, then partition 6 becomes known as partition 5, and
+ partition 7 as partition 6.
+
+Adding a partition is just a bit more complicated. Give the New
+command by typing `n'. `fdisk' allows you to
+
+ 1. Create a primary partition, if there is a free slot in the primary
+ partition table.
+
+ 2. Create an extended partition if there is a free slot in the
+ primary partition table, and if there is no extended partition.
+
+ 3. Create a logical partition if an extended partition exists.
+
+If more than one of these actions is possible, you will be asked to
+select Primary, Extended, or Logical, depending on what is currently
+permissible. Before you create a primary or an extended partition, you
+are asked what slot it is to have in the table (1-4).
+
+You may not add a primary or an extended partition if the selected
+slot in the primary partition table is already occupied: in that case
+you simply return to the main menu. You are not allowed to add a new
+primary partition unless there are sectors available outside the
+extended partition. You are not allowed to add a new logical partition
+unless there are sectors available inside the extended partition.
+
+If space is available, you are prompted for the first cylinder:
+
+ First cylinder ([237]-977): _
+
+The limits are the lowest and the highest cylinders in which sectors
+are available in the appropriate part of the disk. The square-bracketed
+number is what you'll get if you simply press enter. Not all numbers in
+this range are necessarily available: they may fall inside an existing
+partition. If you select a cylinder which is already in use, you are
+told off and prompted again for the first cylinder. After selecting the
+first cylinder, you are prompted again:
+
+ Last cylinder or +size or +sizeM or +sizeK (237-[836]): _
+
+The limits are the cylinder you have chosen as the first cylinder,
+and the highest cylinder which contains a legitimate upper boundary for
+the new partition. The square-bracketed number is what you'll get if
+you simply press enter. In other words, all numbers in the given range are
+legitimate, unlike those in the first range of cylinders. You may also
+specify the size of a partition in megabytes, kilobytes, or in the
+current units (cylinders or sectors). A plus sign `+' indicates that
+your answer is a size rather than a boundary, and the suffix `m' or `k'
+(upper or lower case) indicates that the size is not given in units of
+sectors or cyliners, but in megabytes or kilobytes respectively. Thus
+possible answers to the last cylinder request above are
+
+700
+ Make cylinder 700 the last cylinder in the partition.
+
++300
+ Make cylinder 237 + 300 = 537 the last cylinder in the partition.
+
++15m
+ Make the partition at least 15 megabytes in size.
+
++12500k
+ Make the partition at least 12,500 kilobytes in size.
+
+If you specify a size which is too large or an end which is out of
+range, fdisk complains and repeats the prompt.
+
+Adding or deleting partitions has no effect unless you subsequently
+give the Write command. Please remember to give the Verify command
+first, just before giving the Write command: this is a safety
+precaution. After giving the Write command, you will see this message:
+
+ The partition table has been altered!
+ Calling ioctl() to re-read partition table.
+ Syncing disks.
+
+If there are no further messages, the kernel has successfully copied
+the information from the partition table into its own internal table.
+But sometimes you will see a message like this one:
+
+ Re-read table failed with error 16: Device or resource busy.
+ Reboot your system to ensure the partition table is updated.
+
+In this case, depending on what you have changed in the partition
+table, it may be dangerous to continue working without rebooting,
+since you may lose or corrupt your data.
+
+
+Here are some important things to note:
+
+ 1. Before you reboot, you *may* run `fdisk' again, either to manage
+ another disk, or to make additional changes to the same disk, or
+ just to check that the changes have been made as you expected.
+ This is true even after you receive the message warning you to
+ reboot.
+
+ 2. It is not a good idea to run any of the programs `mkfs', `mkswap',
+ `mount', or `swapon' if you have received the warning message but
+ have not rebooted. In this case it is dangerous to run any program,
+ but these in particular may cause serious damage to the data on your
+ disk, including the partition tables themselves.
+
+
+Active flags and system types
+-----------------------------
+
+The active flag is a bit in the partition table entry which marks a
+partition as bootable. This is important to some primary boot sector
+programs, which will not boot from an unflagged partition. Other such
+programs do not allow more than one partition to be flagged. Some,
+like LILO, ignore the flags completely. I prefer to flag all bootable
+partitions as active so that they stand out on the menu which `fdisk'
+lists. Fdisk prints a star after the name of a partition's device file
+if its active flag is set.
+
+The Active command changes, or toggles, a partition's active flag.
+Give the Active command, and select a partition by number. If it was
+marked inactive, it will be flagged as active; if it was flagged as
+active, it will be marked inactive. You may set the active flag on an
+extended or logical partition, though the meaning of such a flag is by
+no means clear. This can be used to install LILO as a secondary boot
+loader to boot a Linux which lives on a second hard disk.
+
+The Type command changes the ID number which describes what type a
+partition is. `fdisk' currently recognises 30 system IDs, in the sense
+that it prints a string for each of them, but it allows you to change
+any system ID to any other, with the following exceptions: you may not
+change any partition to or from the type Extended, and you may not
+change a partition whose type is Empty (0) to any other type. You may,
+however, change the type of any data partition to 0, which is
+equivalent to deleting it.
+
+The new system ID or type code is a hexadecimal number. There are
+two ways of listing the numbers which `fdisk' recognises: use the List
+command, which prints the list, or use the Type command, which, when it
+prompts you for the code, says
+
+ Hex code (type L to list codes): _
+
+where the upper case `L' is used for clarity. The codes printed are:
+Some of these numbers are a trifle uncertain. By default `fdisk' uses
+a type of 83. It used to use 81, the type code used by the MINIX
+`fdisk'. It seemed prudent to change the default since (a) many Linux
+`minix' file systems are no longer compatible with MINIX, (b) the ext2
+file system, a native Linux file system, is fairly stable, as is the
+Xia file system, and (c) the number 81 causes problems with DR-DOS.
+Linux does not usually care what values you use for type codes, but
+other systems, in particular DOS, OS/2, and DR-DOS, may.
+
+The value of 82 for Linux swap partitions is my own invention, and
+is intended to give some recognisable distinction to the partitions
+when the values are displayed in hexadecimal.
+
+New active flags and new system type codes are not written to the
+disk until you exit from `fdisk' with the Write command, as described
+above, in the section on deleting and adding partitions.
+
+
+Extra commands for experts
+--------------------------
+
+The eXtra command `x' puts `fdisk' into `expert' mode, in which a
+slightly different set of commands is available. The Active, Delete,
+List, New, Type, Verify, and `eXpert' commands are not available in
+expert mode. The commands Write and Quit are available as in ordinary
+mode, the Print command is available, but produces output in a slightly
+different format, and of course the Menu command prints the expert
+menu. There are several new commands.
+
+ 1. The Return command brings you back to the main menu.
+
+ 2. The Extended command prints the list of table entries which point
+ to other tables. Ordinary users do not need this information.
+ The data is shown as it is stored. The same format is used for
+ the expert Print command.
+
+ 3. The dangerous Begin command allows you to move the start of data
+ in a partition away from its beginning. Other systems create
+ partitions with this format, and it is sometimes useful to be able
+ to reproduce it.
+
+ 4. The slightly dangerous Cylinders command allows you to change the
+ available number of cylinders. For SCSI disk owners, note that we
+ require not the actual number of physical cylinders, but the
+ number of logical cylinders used by DOS and other operating
+ systems.
+
+ 5. The extremely dangerous Heads and Sectors commands allow you to
+ change the number of heads and sectors. It should not be
+ necessary to use these commands unless you have a SCSI disk, whose
+ geometry Linux is not always able to determine. SCSI disk owners
+ note that we need not the actual number of heads or of sectors per
+ track, but the number believed to exist by DOS and other operating
+ systems. *Warning*: If you set either of these numbers to a bad
+ value, you may lose all data on your disk.
+
+Always, after giving any of the commands Begin, Cylinder, Heads, or
+Sectors, you should Return to the main menu and give the Verify command.
+
+
+Warnings for `fdisk' users
+--------------------------
+
+In general, you should not use this `fdisk' program to create
+partitions for other operating systems, only for Linux. Nor should you
+use `fdisk' commands from other operating systems to create partitions
+for Linux.
+
+DR-DOS 5.0 and 6.0 are reported to have difficulties with partition
+ID codes of 80 or more. The Linux `fdisk' used to set the system type
+of new partitions to hexadecimal 81. DR-DOS seems to confuse this with
+hexadecimal 1, a DOS code. The values 82 for swap and 83 for file
+systems should not cause problems with DR-DOS. If they do, you may use
+the `fdisk' command `t' to change the system code of any Linux
+partitions to some number less than hexadecimal 80; I suggest 42 and 43
+for the moment.
+
+Partitioning a hard disk may destroy data which is on that disk if you
+are not careful. Go slowly, write down a description of the partition
+tables before you changed them, and always verify before you write.
+
+Most operating systems and utilities expect that all partitions begin and
+end at cylinder boundaries. This version of `fdisk' does so by default,
+but you can use it to create partitions which begin or end anywhere.
+This does not normally affect Linux, but it is very dangerous, as other
+operating systems (including DOS) may try to `correct' the partition
+boundaries.
+
+It is dangerous to create a new partition when the display/entry
+units are sectors.
+
+The Verify command warns you if anything is wrong. *Always* give a
+Verify command before writing any changes to disk.
+
+If you set the disk geometry (tracks per cylinder, or sectors per
+track) to an incorrect value, you may lose all data on your disk.
+
+Do create BSD/SUN and/or IRIX/SGI disk labels only when you are sure
+that you want them. Both features are intended to allow you READing
+those labels and prevent unintentional formatting of these disks.
diff --git a/Documentation/getopt.txt b/Documentation/getopt.txt
new file mode 100644
index 000000000..dbf7bb018
--- /dev/null
+++ b/Documentation/getopt.txt
@@ -0,0 +1,81 @@
+This package contains a reimplementation of getopt(1).
+
+PREFACE
+
+Getopt(1) is a program to help shell scripts parse command-line parameters.
+It is for example included in the util-linux distribution (upto version
+2.7.1). But, there are some problems with that getopt(1) implementation,
+as listed in the 'BUGS' section of its man-page:
+
+>BUGS
+> Whatever getopt(3) has.
+>
+> Arguments containing white space or imbedded shell metacharacters gener-
+> ally will not survive intact; this looks easy to fix but isn't.
+>
+> The error message for an invalid option is identified as coming from
+> getopt rather than from the shell procedure containing the invocation of
+> getopt; this again is hard to fix.
+>
+> The precise best way to use the set command to set the arguments without
+> disrupting the value(s) of shell options varies from one shell version to
+> another.
+
+This implementation of getopt(1) is written to solve some of these problems,
+while still staying (for all practical purposes) completely compatible with
+other getopt(1) implementations.
+
+
+INSTALLATION
+
+Installation should be very easy. Just type 'make' to compile the sources.
+It should compile cleanly, without any warnings, but even if it does not
+you probably don't have to worry. You must use GNU Make and gcc, or you
+will have to edit the Makefile.
+
+Type 'make install' to install the binary and the manual page. It installs
+by default in /usr/local/bin and /usr/local/man/man1, to install in /usr/bin
+and /usr/man/man1 try 'make install prefix=/usr'.
+
+The example files can be installed in /usr/local/lib/getopt by calling
+'make install_doc'.
+
+If you do not trust the getopt(3) in your libc, or if you do not use a libc
+with the GNU getopt(3) routines, you can use the gnu sources as provided
+in the gnu directory. Try 'make LIBCGETOPT=0'. Ignore any compile warnings.
+
+You can check whether the new implementation of getopt is found first
+in your path by calling 'bash test.bash'.
+
+
+HIGHLIGHTS
+
+It can do anything that the GNU getopt(3) routines can do.
+
+It can cope with spaces and shell metacharacters within arguments.
+
+It can parse long parameters.
+
+It can shuffle parameters, so you can mix options and other parameters on
+the command-line.
+
+It can be easily identified as an enhanced getopt(1) from within shell scripts.
+
+It can report parse errors as coming from the shell script.
+
+It is fully compatible with other getopt(1) implementations.
+
+COPYING
+
+This program comes under the GNU general public licence version 2. See the
+file COPYING included in this package. Note that though you may freely
+copy it, it is copyright (c) 1997-2005 by Frodo Looijaard
+<frodo@frodo.looijaard.name>.
+Files in the gnu directory are from glibc-2.0.4: copyright (C) 1987, 88,
+89, 90, 91, 92, 93, 94, 95, 96, 97 Free Software Foundation, Inc.
+
+
+DOWNLOADING
+
+You can find the latest version of this program at:
+ http://software.frodo.looijaard.name/getopt/
diff --git a/Documentation/getopt_changelog.txt b/Documentation/getopt_changelog.txt
new file mode 100644
index 000000000..ee2796550
--- /dev/null
+++ b/Documentation/getopt_changelog.txt
@@ -0,0 +1,38 @@
+20051107: Bumped up version number to 1.1.4
+20051107: Makefile: package target
+20051107: Changed email and website to current ones
+20051107: Fixed a few typos in the manpage (sync with util-linux (2.12r)
+20030123: Bumped up version number to 1.1.3
+20030123: Changed WITH_GETTEXT option to WITHOUT_GETTEXT
+20030123: Renamed example programs to have the string getopt- prepended
+20030123: Manpage: all minus signs are now escaped
+20030123: Sync with util-linux (2.11y)
+20010329: Bumped up version number to 1.1.2
+20010329: Sync with util-linux
+20010311: Bumped up version number to 1.1.1
+20010311: Fixed stupid compilation error if NLS not selected
+20000630: Bumped up version number to 1.1.0
+20000630: Ported the Native Language Support patches from util-linux
+ They are written by Arkadiusz Mikiewicz <misiek@pld.org.pl>
+20000627: Bumped up version number to 1.0.6
+20000627: A few manpage tweaks
+20000616: Introduced DESTDIR and directory creation in the Makefile.
+19990716: Bumped up version number to 1.0.5
+19990622: Made -u work
+19990101: Bumped up version number to 1.0.4 (aka. 1.0.3a in util-linux)
+19990101: Very small fix in main()
+19990101: Updated util-linux Makefile
+19980628: Bumped up version number to 1.0.3
+19980628: Removed remaining incompatibility with tcsh-6.02 from parse.tcsh
+980626: Added separate Makefile for util-linux
+19980625: Removed several bugs from parse.tcsh, partly thanks to Volker Kuhlmann
+ (v.kuhlmann@elec.canterbury.ac.nz).
+19980612: Removed reference to getopt in util-linux
+19980611: Bumped up version number to 1.0.2
+19980611: Fixed --version bug (was not available, though documented!)
+19980611: Removed compiler warnings.
+19980603: Bumped up version number to 1.0.1
+19980603: Fixed sizeof() bug (should be strlen) in getopt.c, thanks to
+ Bob Proulx (rwp@hprwp.fc.hp.com).
+19980505: Changed date field in LSM to proper syntax
+19980505: Released version 1.0
diff --git a/Documentation/howto-tests.txt b/Documentation/howto-tests.txt
new file mode 100644
index 000000000..c812a3929
--- /dev/null
+++ b/Documentation/howto-tests.txt
@@ -0,0 +1,27 @@
+
+ util-linux regression tests
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ It's expected that for each invasive change or important bugfix you will
+ include a test to your patch.
+
+
+ Run all tests:
+
+ ./run.sh [--verbose]
+
+ Run subset of tests:
+
+ ./run.sh <test_directory-name>
+
+ for example:
+
+ ./run.sh blkid
+ ./run.sh fdisk
+
+
+
+ *** WARNING ***
+
+ The tests touch your /etc/fstab. Please, be careful and use
+ these tests only for development and never on production system.
diff --git a/Documentation/hwclock.txt b/Documentation/hwclock.txt
new file mode 100644
index 000000000..5c364212c
--- /dev/null
+++ b/Documentation/hwclock.txt
@@ -0,0 +1,17 @@
+Hwclock is a program that runs under Linux and sets and queries the
+Hardware Clock, which is often called the Real Time Clock, RTC, or
+CMOS clock.
+
+Sometimes, you need to install hwclock setuid root. If you want users
+other than the superuser to be able to display the clock value using the
+direct ISA I/O method, install it setuid root. If you have the /dev/rtc
+interface on your system or are on a non-ISA system, there's probably
+no need for users to use the direct ISA I/O method, so don't bother.
+
+To install setuid root, do something like this:
+
+ chmod a=rx,u=s /sbin/hwclock
+
+In any case, hwclock will not allow you to set anything unless you have
+the superuser _real_ uid. (This is restriction is not necessary if you
+haven't installed setuid root, but it's there for now).
diff --git a/Documentation/licenses/COPYING.GPL b/Documentation/licenses/COPYING.GPL
new file mode 100644
index 000000000..a43ea2126
--- /dev/null
+++ b/Documentation/licenses/COPYING.GPL
@@ -0,0 +1,339 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+ 675 Mass Ave, Cambridge, MA 02139, USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ Appendix: How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+ Copyright (C) 19yy <name of author>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) 19yy name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ <signature of Ty Coon>, 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Library General
+Public License instead of this License.
diff --git a/Documentation/licenses/COPYING.UCB b/Documentation/licenses/COPYING.UCB
new file mode 100644
index 000000000..9abbf2410
--- /dev/null
+++ b/Documentation/licenses/COPYING.UCB
@@ -0,0 +1,32 @@
+/*
+ * Copyright (c) 1989 The Regents of the University of California.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ * must display the following acknowledgement:
+ * This product includes software developed by the University of
+ * California, Berkeley and its contributors.
+ * 4. Neither the name of the University nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
diff --git a/Documentation/licenses/COPYING.getopt b/Documentation/licenses/COPYING.getopt
new file mode 100644
index 000000000..a43ea2126
--- /dev/null
+++ b/Documentation/licenses/COPYING.getopt
@@ -0,0 +1,339 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+ 675 Mass Ave, Cambridge, MA 02139, USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ Appendix: How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+ Copyright (C) 19yy <name of author>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) 19yy name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ <signature of Ty Coon>, 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Library General
+Public License instead of this License.
diff --git a/Documentation/licenses/COPYING.libblkid b/Documentation/licenses/COPYING.libblkid
new file mode 100644
index 000000000..cf9b6b997
--- /dev/null
+++ b/Documentation/licenses/COPYING.libblkid
@@ -0,0 +1,510 @@
+
+ GNU LESSER GENERAL PUBLIC LICENSE
+ Version 2.1, February 1999
+
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
+ 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+[This is the first released version of the Lesser GPL. It also counts
+ as the successor of the GNU Library Public License, version 2, hence
+ the version number 2.1.]
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+Licenses are intended to guarantee your freedom to share and change
+free software--to make sure the software is free for all its users.
+
+ This license, the Lesser General Public License, applies to some
+specially designated software packages--typically libraries--of the
+Free Software Foundation and other authors who decide to use it. You
+can use it too, but we suggest you first think carefully about whether
+this license or the ordinary General Public License is the better
+strategy to use in any particular case, based on the explanations
+below.
+
+ When we speak of free software, we are referring to freedom of use,
+not price. Our General Public Licenses are designed to make sure that
+you have the freedom to distribute copies of free software (and charge
+for this service if you wish); that you receive source code or can get
+it if you want it; that you can change the software and use pieces of
+it in new free programs; and that you are informed that you can do
+these things.
+
+ To protect your rights, we need to make restrictions that forbid
+distributors to deny you these rights or to ask you to surrender these
+rights. These restrictions translate to certain responsibilities for
+you if you distribute copies of the library or if you modify it.
+
+ For example, if you distribute copies of the library, whether gratis
+or for a fee, you must give the recipients all the rights that we gave
+you. You must make sure that they, too, receive or can get the source
+code. If you link other code with the library, you must provide
+complete object files to the recipients, so that they can relink them
+with the library after making changes to the library and recompiling
+it. And you must show them these terms so they know their rights.
+
+ We protect your rights with a two-step method: (1) we copyright the
+library, and (2) we offer you this license, which gives you legal
+permission to copy, distribute and/or modify the library.
+
+ To protect each distributor, we want to make it very clear that
+there is no warranty for the free library. Also, if the library is
+modified by someone else and passed on, the recipients should know
+that what they have is not the original version, so that the original
+author's reputation will not be affected by problems that might be
+introduced by others.
+^L
+ Finally, software patents pose a constant threat to the existence of
+any free program. We wish to make sure that a company cannot
+effectively restrict the users of a free program by obtaining a
+restrictive license from a patent holder. Therefore, we insist that
+any patent license obtained for a version of the library must be
+consistent with the full freedom of use specified in this license.
+
+ Most GNU software, including some libraries, is covered by the
+ordinary GNU General Public License. This license, the GNU Lesser
+General Public License, applies to certain designated libraries, and
+is quite different from the ordinary General Public License. We use
+this license for certain libraries in order to permit linking those
+libraries into non-free programs.
+
+ When a program is linked with a library, whether statically or using
+a shared library, the combination of the two is legally speaking a
+combined work, a derivative of the original library. The ordinary
+General Public License therefore permits such linking only if the
+entire combination fits its criteria of freedom. The Lesser General
+Public License permits more lax criteria for linking other code with
+the library.
+
+ We call this license the "Lesser" General Public License because it
+does Less to protect the user's freedom than the ordinary General
+Public License. It also provides other free software developers Less
+of an advantage over competing non-free programs. These disadvantages
+are the reason we use the ordinary General Public License for many
+libraries. However, the Lesser license provides advantages in certain
+special circumstances.
+
+ For example, on rare occasions, there may be a special need to
+encourage the widest possible use of a certain library, so that it
+becomes a de-facto standard. To achieve this, non-free programs must
+be allowed to use the library. A more frequent case is that a free
+library does the same job as widely used non-free libraries. In this
+case, there is little to gain by limiting the free library to free
+software only, so we use the Lesser General Public License.
+
+ In other cases, permission to use a particular library in non-free
+programs enables a greater number of people to use a large body of
+free software. For example, permission to use the GNU C Library in
+non-free programs enables many more people to use the whole GNU
+operating system, as well as its variant, the GNU/Linux operating
+system.
+
+ Although the Lesser General Public License is Less protective of the
+users' freedom, it does ensure that the user of a program that is
+linked with the Library has the freedom and the wherewithal to run
+that program using a modified version of the Library.
+
+ The precise terms and conditions for copying, distribution and
+modification follow. Pay close attention to the difference between a
+"work based on the library" and a "work that uses the library". The
+former contains code derived from the library, whereas the latter must
+be combined with the library in order to run.
+^L
+ GNU LESSER GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License Agreement applies to any software library or other
+program which contains a notice placed by the copyright holder or
+other authorized party saying it may be distributed under the terms of
+this Lesser General Public License (also called "this License").
+Each licensee is addressed as "you".
+
+ A "library" means a collection of software functions and/or data
+prepared so as to be conveniently linked with application programs
+(which use some of those functions and data) to form executables.
+
+ The "Library", below, refers to any such software library or work
+which has been distributed under these terms. A "work based on the
+Library" means either the Library or any derivative work under
+copyright law: that is to say, a work containing the Library or a
+portion of it, either verbatim or with modifications and/or translated
+straightforwardly into another language. (Hereinafter, translation is
+included without limitation in the term "modification".)
+
+ "Source code" for a work means the preferred form of the work for
+making modifications to it. For a library, complete source code means
+all the source code for all modules it contains, plus any associated
+interface definition files, plus the scripts used to control
+compilation and installation of the library.
+
+ Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running a program using the Library is not restricted, and output from
+such a program is covered only if its contents constitute a work based
+on the Library (independent of the use of the Library in a tool for
+writing it). Whether that is true depends on what the Library does
+and what the program that uses the Library does.
+
+ 1. You may copy and distribute verbatim copies of the Library's
+complete source code as you receive it, in any medium, provided that
+you conspicuously and appropriately publish on each copy an
+appropriate copyright notice and disclaimer of warranty; keep intact
+all the notices that refer to this License and to the absence of any
+warranty; and distribute a copy of this License along with the
+Library.
+
+ You may charge a fee for the physical act of transferring a copy,
+and you may at your option offer warranty protection in exchange for a
+fee.
+
+ 2. You may modify your copy or copies of the Library or any portion
+of it, thus forming a work based on the Library, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) The modified work must itself be a software library.
+
+ b) You must cause the files modified to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ c) You must cause the whole of the work to be licensed at no
+ charge to all third parties under the terms of this License.
+
+ d) If a facility in the modified Library refers to a function or a
+ table of data to be supplied by an application program that uses
+ the facility, other than as an argument passed when the facility
+ is invoked, then you must make a good faith effort to ensure that,
+ in the event an application does not supply such function or
+ table, the facility still operates, and performs whatever part of
+ its purpose remains meaningful.
+
+ (For example, a function in a library to compute square roots has
+ a purpose that is entirely well-defined independent of the
+ application. Therefore, Subsection 2d requires that any
+ application-supplied function or table used by this function must
+ be optional: if the application does not supply it, the square
+ root function must still compute square roots.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Library,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Library, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote
+it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Library.
+
+In addition, mere aggregation of another work not based on the Library
+with the Library (or with a work based on the Library) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may opt to apply the terms of the ordinary GNU General Public
+License instead of this License to a given copy of the Library. To do
+this, you must alter all the notices that refer to this License, so
+that they refer to the ordinary GNU General Public License, version 2,
+instead of to this License. (If a newer version than version 2 of the
+ordinary GNU General Public License has appeared, then you can specify
+that version instead if you wish.) Do not make any other change in
+these notices.
+^L
+ Once this change is made in a given copy, it is irreversible for
+that copy, so the ordinary GNU General Public License applies to all
+subsequent copies and derivative works made from that copy.
+
+ This option is useful when you wish to copy part of the code of
+the Library into a program that is not a library.
+
+ 4. You may copy and distribute the Library (or a portion or
+derivative of it, under Section 2) in object code or executable form
+under the terms of Sections 1 and 2 above provided that you accompany
+it with the complete corresponding machine-readable source code, which
+must be distributed under the terms of Sections 1 and 2 above on a
+medium customarily used for software interchange.
+
+ If distribution of object code is made by offering access to copy
+from a designated place, then offering equivalent access to copy the
+source code from the same place satisfies the requirement to
+distribute the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 5. A program that contains no derivative of any portion of the
+Library, but is designed to work with the Library by being compiled or
+linked with it, is called a "work that uses the Library". Such a
+work, in isolation, is not a derivative work of the Library, and
+therefore falls outside the scope of this License.
+
+ However, linking a "work that uses the Library" with the Library
+creates an executable that is a derivative of the Library (because it
+contains portions of the Library), rather than a "work that uses the
+library". The executable is therefore covered by this License.
+Section 6 states terms for distribution of such executables.
+
+ When a "work that uses the Library" uses material from a header file
+that is part of the Library, the object code for the work may be a
+derivative work of the Library even though the source code is not.
+Whether this is true is especially significant if the work can be
+linked without the Library, or if the work is itself a library. The
+threshold for this to be true is not precisely defined by law.
+
+ If such an object file uses only numerical parameters, data
+structure layouts and accessors, and small macros and small inline
+functions (ten lines or less in length), then the use of the object
+file is unrestricted, regardless of whether it is legally a derivative
+work. (Executables containing this object code plus portions of the
+Library will still fall under Section 6.)
+
+ Otherwise, if the work is a derivative of the Library, you may
+distribute the object code for the work under the terms of Section 6.
+Any executables containing that work also fall under Section 6,
+whether or not they are linked directly with the Library itself.
+^L
+ 6. As an exception to the Sections above, you may also combine or
+link a "work that uses the Library" with the Library to produce a
+work containing portions of the Library, and distribute that work
+under terms of your choice, provided that the terms permit
+modification of the work for the customer's own use and reverse
+engineering for debugging such modifications.
+
+ You must give prominent notice with each copy of the work that the
+Library is used in it and that the Library and its use are covered by
+this License. You must supply a copy of this License. If the work
+during execution displays copyright notices, you must include the
+copyright notice for the Library among them, as well as a reference
+directing the user to the copy of this License. Also, you must do one
+of these things:
+
+ a) Accompany the work with the complete corresponding
+ machine-readable source code for the Library including whatever
+ changes were used in the work (which must be distributed under
+ Sections 1 and 2 above); and, if the work is an executable linked
+ with the Library, with the complete machine-readable "work that
+ uses the Library", as object code and/or source code, so that the
+ user can modify the Library and then relink to produce a modified
+ executable containing the modified Library. (It is understood
+ that the user who changes the contents of definitions files in the
+ Library will not necessarily be able to recompile the application
+ to use the modified definitions.)
+
+ b) Use a suitable shared library mechanism for linking with the
+ Library. A suitable mechanism is one that (1) uses at run time a
+ copy of the library already present on the user's computer system,
+ rather than copying library functions into the executable, and (2)
+ will operate properly with a modified version of the library, if
+ the user installs one, as long as the modified version is
+ interface-compatible with the version that the work was made with.
+
+ c) Accompany the work with a written offer, valid for at least
+ three years, to give the same user the materials specified in
+ Subsection 6a, above, for a charge no more than the cost of
+ performing this distribution.
+
+ d) If distribution of the work is made by offering access to copy
+ from a designated place, offer equivalent access to copy the above
+ specified materials from the same place.
+
+ e) Verify that the user has already received a copy of these
+ materials or that you have already sent this user a copy.
+
+ For an executable, the required form of the "work that uses the
+Library" must include any data and utility programs needed for
+reproducing the executable from it. However, as a special exception,
+the materials to be distributed need not include anything that is
+normally distributed (in either source or binary form) with the major
+components (compiler, kernel, and so on) of the operating system on
+which the executable runs, unless that component itself accompanies
+the executable.
+
+ It may happen that this requirement contradicts the license
+restrictions of other proprietary libraries that do not normally
+accompany the operating system. Such a contradiction means you cannot
+use both them and the Library together in an executable that you
+distribute.
+^L
+ 7. You may place library facilities that are a work based on the
+Library side-by-side in a single library together with other library
+facilities not covered by this License, and distribute such a combined
+library, provided that the separate distribution of the work based on
+the Library and of the other library facilities is otherwise
+permitted, and provided that you do these two things:
+
+ a) Accompany the combined library with a copy of the same work
+ based on the Library, uncombined with any other library
+ facilities. This must be distributed under the terms of the
+ Sections above.
+
+ b) Give prominent notice with the combined library of the fact
+ that part of it is a work based on the Library, and explaining
+ where to find the accompanying uncombined form of the same work.
+
+ 8. You may not copy, modify, sublicense, link with, or distribute
+the Library except as expressly provided under this License. Any
+attempt otherwise to copy, modify, sublicense, link with, or
+distribute the Library is void, and will automatically terminate your
+rights under this License. However, parties who have received copies,
+or rights, from you under this License will not have their licenses
+terminated so long as such parties remain in full compliance.
+
+ 9. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Library or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Library (or any work based on the
+Library), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Library or works based on it.
+
+ 10. Each time you redistribute the Library (or any work based on the
+Library), the recipient automatically receives a license from the
+original licensor to copy, distribute, link with or modify the Library
+subject to these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties with
+this License.
+^L
+ 11. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Library at all. For example, if a patent
+license would not permit royalty-free redistribution of the Library by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Library.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply, and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 12. If the distribution and/or use of the Library is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Library under this License
+may add an explicit geographical distribution limitation excluding those
+countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 13. The Free Software Foundation may publish revised and/or new
+versions of the Lesser General Public License from time to time.
+Such new versions will be similar in spirit to the present version,
+but may differ in detail to address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Library
+specifies a version number of this License which applies to it and
+"any later version", you have the option of following the terms and
+conditions either of that version or of any later version published by
+the Free Software Foundation. If the Library does not specify a
+license version number, you may choose any version ever published by
+the Free Software Foundation.
+^L
+ 14. If you wish to incorporate parts of the Library into other free
+programs whose distribution conditions are incompatible with these,
+write to the author to ask for permission. For software which is
+copyrighted by the Free Software Foundation, write to the Free
+Software Foundation; we sometimes make exceptions for this. Our
+decision will be guided by the two goals of preserving the free status
+of all derivatives of our free software and of promoting the sharing
+and reuse of software generally.
+
+ NO WARRANTY
+
+ 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
+LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+ 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+^L
+ How to Apply These Terms to Your New Libraries
+
+ If you develop a new library, and you want it to be of the greatest
+possible use to the public, we recommend making it free software that
+everyone can redistribute and change. You can do so by permitting
+redistribution under these terms (or, alternatively, under the terms
+of the ordinary General Public License).
+
+ To apply these terms, attach the following notices to the library.
+It is safest to attach them to the start of each source file to most
+effectively convey the exclusion of warranty; and each file should
+have at least the "copyright" line and a pointer to where the full
+notice is found.
+
+
+ <one line to give the library's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+Also add information on how to contact you by electronic and paper mail.
+
+You should also get your employer (if you work as a programmer) or
+your school, if any, to sign a "copyright disclaimer" for the library,
+if necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the
+ library `Frob' (a library for tweaking knobs) written by James
+ Random Hacker.
+
+ <signature of Ty Coon>, 1 April 1990
+ Ty Coon, President of Vice
+
+That's all there is to it!
+
+
diff --git a/Documentation/licenses/COPYING.libmount b/Documentation/licenses/COPYING.libmount
new file mode 100644
index 000000000..89d4489ce
--- /dev/null
+++ b/Documentation/licenses/COPYING.libmount
@@ -0,0 +1,508 @@
+
+ GNU LESSER GENERAL PUBLIC LICENSE
+ Version 2.1, February 1999
+
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
+ 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+[This is the first released version of the Lesser GPL. It also counts
+ as the successor of the GNU Library Public License, version 2, hence
+ the version number 2.1.]
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+Licenses are intended to guarantee your freedom to share and change
+free software--to make sure the software is free for all its users.
+
+ This license, the Lesser General Public License, applies to some
+specially designated software packages--typically libraries--of the
+Free Software Foundation and other authors who decide to use it. You
+can use it too, but we suggest you first think carefully about whether
+this license or the ordinary General Public License is the better
+strategy to use in any particular case, based on the explanations
+below.
+
+ When we speak of free software, we are referring to freedom of use,
+not price. Our General Public Licenses are designed to make sure that
+you have the freedom to distribute copies of free software (and charge
+for this service if you wish); that you receive source code or can get
+it if you want it; that you can change the software and use pieces of
+it in new free programs; and that you are informed that you can do
+these things.
+
+ To protect your rights, we need to make restrictions that forbid
+distributors to deny you these rights or to ask you to surrender these
+rights. These restrictions translate to certain responsibilities for
+you if you distribute copies of the library or if you modify it.
+
+ For example, if you distribute copies of the library, whether gratis
+or for a fee, you must give the recipients all the rights that we gave
+you. You must make sure that they, too, receive or can get the source
+code. If you link other code with the library, you must provide
+complete object files to the recipients, so that they can relink them
+with the library after making changes to the library and recompiling
+it. And you must show them these terms so they know their rights.
+
+ We protect your rights with a two-step method: (1) we copyright the
+library, and (2) we offer you this license, which gives you legal
+permission to copy, distribute and/or modify the library.
+
+ To protect each distributor, we want to make it very clear that
+there is no warranty for the free library. Also, if the library is
+modified by someone else and passed on, the recipients should know
+that what they have is not the original version, so that the original
+author's reputation will not be affected by problems that might be
+introduced by others.
+^L
+ Finally, software patents pose a constant threat to the existence of
+any free program. We wish to make sure that a company cannot
+effectively restrict the users of a free program by obtaining a
+restrictive license from a patent holder. Therefore, we insist that
+any patent license obtained for a version of the library must be
+consistent with the full freedom of use specified in this license.
+
+ Most GNU software, including some libraries, is covered by the
+ordinary GNU General Public License. This license, the GNU Lesser
+General Public License, applies to certain designated libraries, and
+is quite different from the ordinary General Public License. We use
+this license for certain libraries in order to permit linking those
+libraries into non-free programs.
+
+ When a program is linked with a library, whether statically or using
+a shared library, the combination of the two is legally speaking a
+combined work, a derivative of the original library. The ordinary
+General Public License therefore permits such linking only if the
+entire combination fits its criteria of freedom. The Lesser General
+Public License permits more lax criteria for linking other code with
+the library.
+
+ We call this license the "Lesser" General Public License because it
+does Less to protect the user's freedom than the ordinary General
+Public License. It also provides other free software developers Less
+of an advantage over competing non-free programs. These disadvantages
+are the reason we use the ordinary General Public License for many
+libraries. However, the Lesser license provides advantages in certain
+special circumstances.
+
+ For example, on rare occasions, there may be a special need to
+encourage the widest possible use of a certain library, so that it
+becomes a de-facto standard. To achieve this, non-free programs must
+be allowed to use the library. A more frequent case is that a free
+library does the same job as widely used non-free libraries. In this
+case, there is little to gain by limiting the free library to free
+software only, so we use the Lesser General Public License.
+
+ In other cases, permission to use a particular library in non-free
+programs enables a greater number of people to use a large body of
+free software. For example, permission to use the GNU C Library in
+non-free programs enables many more people to use the whole GNU
+operating system, as well as its variant, the GNU/Linux operating
+system.
+
+ Although the Lesser General Public License is Less protective of the
+users' freedom, it does ensure that the user of a program that is
+linked with the Library has the freedom and the wherewithal to run
+that program using a modified version of the Library.
+
+ The precise terms and conditions for copying, distribution and
+modification follow. Pay close attention to the difference between a
+"work based on the library" and a "work that uses the library". The
+former contains code derived from the library, whereas the latter must
+be combined with the library in order to run.
+^L
+ GNU LESSER GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License Agreement applies to any software library or other
+program which contains a notice placed by the copyright holder or
+other authorized party saying it may be distributed under the terms of
+this Lesser General Public License (also called "this License").
+Each licensee is addressed as "you".
+
+ A "library" means a collection of software functions and/or data
+prepared so as to be conveniently linked with application programs
+(which use some of those functions and data) to form executables.
+
+ The "Library", below, refers to any such software library or work
+which has been distributed under these terms. A "work based on the
+Library" means either the Library or any derivative work under
+copyright law: that is to say, a work containing the Library or a
+portion of it, either verbatim or with modifications and/or translated
+straightforwardly into another language. (Hereinafter, translation is
+included without limitation in the term "modification".)
+
+ "Source code" for a work means the preferred form of the work for
+making modifications to it. For a library, complete source code means
+all the source code for all modules it contains, plus any associated
+interface definition files, plus the scripts used to control
+compilation and installation of the library.
+
+ Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running a program using the Library is not restricted, and output from
+such a program is covered only if its contents constitute a work based
+on the Library (independent of the use of the Library in a tool for
+writing it). Whether that is true depends on what the Library does
+and what the program that uses the Library does.
+
+ 1. You may copy and distribute verbatim copies of the Library's
+complete source code as you receive it, in any medium, provided that
+you conspicuously and appropriately publish on each copy an
+appropriate copyright notice and disclaimer of warranty; keep intact
+all the notices that refer to this License and to the absence of any
+warranty; and distribute a copy of this License along with the
+Library.
+
+ You may charge a fee for the physical act of transferring a copy,
+and you may at your option offer warranty protection in exchange for a
+fee.
+
+ 2. You may modify your copy or copies of the Library or any portion
+of it, thus forming a work based on the Library, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) The modified work must itself be a software library.
+
+ b) You must cause the files modified to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ c) You must cause the whole of the work to be licensed at no
+ charge to all third parties under the terms of this License.
+
+ d) If a facility in the modified Library refers to a function or a
+ table of data to be supplied by an application program that uses
+ the facility, other than as an argument passed when the facility
+ is invoked, then you must make a good faith effort to ensure that,
+ in the event an application does not supply such function or
+ table, the facility still operates, and performs whatever part of
+ its purpose remains meaningful.
+
+ (For example, a function in a library to compute square roots has
+ a purpose that is entirely well-defined independent of the
+ application. Therefore, Subsection 2d requires that any
+ application-supplied function or table used by this function must
+ be optional: if the application does not supply it, the square
+ root function must still compute square roots.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Library,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Library, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote
+it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Library.
+
+In addition, mere aggregation of another work not based on the Library
+with the Library (or with a work based on the Library) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may opt to apply the terms of the ordinary GNU General Public
+License instead of this License to a given copy of the Library. To do
+this, you must alter all the notices that refer to this License, so
+that they refer to the ordinary GNU General Public License, version 2,
+instead of to this License. (If a newer version than version 2 of the
+ordinary GNU General Public License has appeared, then you can specify
+that version instead if you wish.) Do not make any other change in
+these notices.
+^L
+ Once this change is made in a given copy, it is irreversible for
+that copy, so the ordinary GNU General Public License applies to all
+subsequent copies and derivative works made from that copy.
+
+ This option is useful when you wish to copy part of the code of
+the Library into a program that is not a library.
+
+ 4. You may copy and distribute the Library (or a portion or
+derivative of it, under Section 2) in object code or executable form
+under the terms of Sections 1 and 2 above provided that you accompany
+it with the complete corresponding machine-readable source code, which
+must be distributed under the terms of Sections 1 and 2 above on a
+medium customarily used for software interchange.
+
+ If distribution of object code is made by offering access to copy
+from a designated place, then offering equivalent access to copy the
+source code from the same place satisfies the requirement to
+distribute the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 5. A program that contains no derivative of any portion of the
+Library, but is designed to work with the Library by being compiled or
+linked with it, is called a "work that uses the Library". Such a
+work, in isolation, is not a derivative work of the Library, and
+therefore falls outside the scope of this License.
+
+ However, linking a "work that uses the Library" with the Library
+creates an executable that is a derivative of the Library (because it
+contains portions of the Library), rather than a "work that uses the
+library". The executable is therefore covered by this License.
+Section 6 states terms for distribution of such executables.
+
+ When a "work that uses the Library" uses material from a header file
+that is part of the Library, the object code for the work may be a
+derivative work of the Library even though the source code is not.
+Whether this is true is especially significant if the work can be
+linked without the Library, or if the work is itself a library. The
+threshold for this to be true is not precisely defined by law.
+
+ If such an object file uses only numerical parameters, data
+structure layouts and accessors, and small macros and small inline
+functions (ten lines or less in length), then the use of the object
+file is unrestricted, regardless of whether it is legally a derivative
+work. (Executables containing this object code plus portions of the
+Library will still fall under Section 6.)
+
+ Otherwise, if the work is a derivative of the Library, you may
+distribute the object code for the work under the terms of Section 6.
+Any executables containing that work also fall under Section 6,
+whether or not they are linked directly with the Library itself.
+^L
+ 6. As an exception to the Sections above, you may also combine or
+link a "work that uses the Library" with the Library to produce a
+work containing portions of the Library, and distribute that work
+under terms of your choice, provided that the terms permit
+modification of the work for the customer's own use and reverse
+engineering for debugging such modifications.
+
+ You must give prominent notice with each copy of the work that the
+Library is used in it and that the Library and its use are covered by
+this License. You must supply a copy of this License. If the work
+during execution displays copyright notices, you must include the
+copyright notice for the Library among them, as well as a reference
+directing the user to the copy of this License. Also, you must do one
+of these things:
+
+ a) Accompany the work with the complete corresponding
+ machine-readable source code for the Library including whatever
+ changes were used in the work (which must be distributed under
+ Sections 1 and 2 above); and, if the work is an executable linked
+ with the Library, with the complete machine-readable "work that
+ uses the Library", as object code and/or source code, so that the
+ user can modify the Library and then relink to produce a modified
+ executable containing the modified Library. (It is understood
+ that the user who changes the contents of definitions files in the
+ Library will not necessarily be able to recompile the application
+ to use the modified definitions.)
+
+ b) Use a suitable shared library mechanism for linking with the
+ Library. A suitable mechanism is one that (1) uses at run time a
+ copy of the library already present on the user's computer system,
+ rather than copying library functions into the executable, and (2)
+ will operate properly with a modified version of the library, if
+ the user installs one, as long as the modified version is
+ interface-compatible with the version that the work was made with.
+
+ c) Accompany the work with a written offer, valid for at least
+ three years, to give the same user the materials specified in
+ Subsection 6a, above, for a charge no more than the cost of
+ performing this distribution.
+
+ d) If distribution of the work is made by offering access to copy
+ from a designated place, offer equivalent access to copy the above
+ specified materials from the same place.
+
+ e) Verify that the user has already received a copy of these
+ materials or that you have already sent this user a copy.
+
+ For an executable, the required form of the "work that uses the
+Library" must include any data and utility programs needed for
+reproducing the executable from it. However, as a special exception,
+the materials to be distributed need not include anything that is
+normally distributed (in either source or binary form) with the major
+components (compiler, kernel, and so on) of the operating system on
+which the executable runs, unless that component itself accompanies
+the executable.
+
+ It may happen that this requirement contradicts the license
+restrictions of other proprietary libraries that do not normally
+accompany the operating system. Such a contradiction means you cannot
+use both them and the Library together in an executable that you
+distribute.
+^L
+ 7. You may place library facilities that are a work based on the
+Library side-by-side in a single library together with other library
+facilities not covered by this License, and distribute such a combined
+library, provided that the separate distribution of the work based on
+the Library and of the other library facilities is otherwise
+permitted, and provided that you do these two things:
+
+ a) Accompany the combined library with a copy of the same work
+ based on the Library, uncombined with any other library
+ facilities. This must be distributed under the terms of the
+ Sections above.
+
+ b) Give prominent notice with the combined library of the fact
+ that part of it is a work based on the Library, and explaining
+ where to find the accompanying uncombined form of the same work.
+
+ 8. You may not copy, modify, sublicense, link with, or distribute
+the Library except as expressly provided under this License. Any
+attempt otherwise to copy, modify, sublicense, link with, or
+distribute the Library is void, and will automatically terminate your
+rights under this License. However, parties who have received copies,
+or rights, from you under this License will not have their licenses
+terminated so long as such parties remain in full compliance.
+
+ 9. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Library or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Library (or any work based on the
+Library), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Library or works based on it.
+
+ 10. Each time you redistribute the Library (or any work based on the
+Library), the recipient automatically receives a license from the
+original licensor to copy, distribute, link with or modify the Library
+subject to these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties with
+this License.
+^L
+ 11. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Library at all. For example, if a patent
+license would not permit royalty-free redistribution of the Library by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Library.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply, and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 12. If the distribution and/or use of the Library is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Library under this License
+may add an explicit geographical distribution limitation excluding those
+countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 13. The Free Software Foundation may publish revised and/or new
+versions of the Lesser General Public License from time to time.
+Such new versions will be similar in spirit to the present version,
+but may differ in detail to address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Library
+specifies a version number of this License which applies to it and
+"any later version", you have the option of following the terms and
+conditions either of that version or of any later version published by
+the Free Software Foundation. If the Library does not specify a
+license version number, you may choose any version ever published by
+the Free Software Foundation.
+^L
+ 14. If you wish to incorporate parts of the Library into other free
+programs whose distribution conditions are incompatible with these,
+write to the author to ask for permission. For software which is
+copyrighted by the Free Software Foundation, write to the Free
+Software Foundation; we sometimes make exceptions for this. Our
+decision will be guided by the two goals of preserving the free status
+of all derivatives of our free software and of promoting the sharing
+and reuse of software generally.
+
+ NO WARRANTY
+
+ 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
+LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+ 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+^L
+ How to Apply These Terms to Your New Libraries
+
+ If you develop a new library, and you want it to be of the greatest
+possible use to the public, we recommend making it free software that
+everyone can redistribute and change. You can do so by permitting
+redistribution under these terms (or, alternatively, under the terms
+of the ordinary General Public License).
+
+ To apply these terms, attach the following notices to the library.
+It is safest to attach them to the start of each source file to most
+effectively convey the exclusion of warranty; and each file should
+have at least the "copyright" line and a pointer to where the full
+notice is found.
+
+
+ <one line to give the library's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+Also add information on how to contact you by electronic and paper mail.
+
+You should also get your employer (if you work as a programmer) or
+your school, if any, to sign a "copyright disclaimer" for the library,
+if necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the
+ library `Frob' (a library for tweaking knobs) written by James
+ Random Hacker.
+
+ <signature of Ty Coon>, 1 April 1990
+ Ty Coon, President of Vice
+
+That's all there is to it!
diff --git a/Documentation/licenses/COPYING.libuuid b/Documentation/licenses/COPYING.libuuid
new file mode 100644
index 000000000..2f1706836
--- /dev/null
+++ b/Documentation/licenses/COPYING.libuuid
@@ -0,0 +1,25 @@
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+1. Redistributions of source code must retain the above copyright
+ notice, and the entire permission notice in its entirety,
+ including the disclaimer of warranties.
+2. Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+3. The name of the author may not be used to endorse or promote
+ products derived from this software without specific prior
+ written permission.
+
+THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED
+WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, ALL OF
+WHICH ARE HEREBY DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE
+LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
+OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
+USE OF THIS SOFTWARE, EVEN IF NOT ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGE.
diff --git a/Documentation/licenses/LICENSE.pg b/Documentation/licenses/LICENSE.pg
new file mode 100644
index 000000000..e805a3158
--- /dev/null
+++ b/Documentation/licenses/LICENSE.pg
@@ -0,0 +1,28 @@
+/*
+ * Copyright (c) 2000-2001 Gunnar Ritter. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. [deleted]
+ * 4. Neither the name of Gunnar Ritter nor the names of his contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY GUNNAR RITTER AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL GUNNAR RITTER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
diff --git a/Documentation/modems-with-agetty.txt b/Documentation/modems-with-agetty.txt
new file mode 100644
index 000000000..44a611e2a
--- /dev/null
+++ b/Documentation/modems-with-agetty.txt
@@ -0,0 +1,76 @@
+25/10/95 Peter Orbaek <poe@daimi.aau.dk>
+
+Some notes for using agetty with modems
+
+Using a comms program to initialize the modem
+---------------------------------------------
+
+* Use kermit or minicom to initialize the modem to
+
+ - be entirely quiet.
+ - don't do local echo in command mode.
+ - turn on DCD (carrier detect) only when there is a connection going.
+ - enable auto-answer.
+ - keep a constant computer/modem bitrate at all times.
+ - optionally save this setup as the modem startup configuration.
+
+* Run agetty on the appropriate ttySn port with the arguments:
+ * -w to wait for a CR or LF before writing the /etc/issue message
+ * computer/modem bitrate
+ * the tty name.
+
+Example from my modem setup, an old 2400 bps SupraModem using Hayes standard
+AT commands.
+
+Initialize modem using kermit with the commands
+
+ AT E0 Q1 &D2 &C1 S0=1 &W0
+
+to
+ - turn off local echo from modem when in command mode (E0).
+ - disable all result codes from modem (Q1).
+ - make an on/off transition on the DTR line make the modem
+ disconnect and go into command mode (&D2).
+ - make the computer/modem DCD line track the modem/modem
+ carrier detect signal, i.e. no connection means no
+ carrier detect signal to the computer (&C1).
+ - enable auto-answer after the first ring (S0=1).
+ - store the configuration as the start configuration (&W0).
+
+The commands on your modem to achieve the same setup may vary, especially
+the &D2 and &C1 commands may not be entirely standard.
+
+Exit kermit/minicom.
+
+Put the command
+
+ /sbin/agetty -w 2400 ttyS1
+
+in the command field of the appropriate line in /etc/inittab to start
+agetty on /dev/ttyS1 with a 2400 bps speed between modem and computer.
+
+Initializing the modem with agetty
+----------------------------------
+
+Use the agetty -I command line option to specify a modem init string, like
+for the same setup as above, use the following agetty command in your
+/etc/inittab.
+
+ /sbin/agetty -w -I 'ATE0Q1&D2&C1S0=1\015' 2400 ttyS1
+
+The final \015 is an octal coding of the carriage return character
+ending the command string.
+
+If you're using simpleinit (part of this package) instead of the SYSV
+compatible init (you're most likely using the SYSV one!) then you must
+remove the single quotes from the command line above.
+
+Note that the &W0 command was not used here since the modem will be
+initialized each time agetty starts.
+
+With a V.34 (28.8 kbps) modem try starting with a command like:
+
+ /sbin/agetty -w -I 'ATE0Q1&D2&C1S0=1\015' 115200 ttyS1
+
+Note that agetty supports the higher (>9600 bps) serial speeds
+directly, there's no need to use setserial to use the higher speeds.
diff --git a/Documentation/mount.txt b/Documentation/mount.txt
new file mode 100644
index 000000000..f75a6e25a
--- /dev/null
+++ b/Documentation/mount.txt
@@ -0,0 +1,17 @@
+mount/umount for Linux 0.97.3 and later.
+Authors:
+Doug Quale <quale@saavik.cs.wisc.edu>,
+H.J. Lu <hlu@eecs.wsu.edu>,
+Rick Sladkey <jrs@world.std.com>,
+Stephen Tweedie <sct@dcs.ed.ac.uk>.
+Andries Brouwer <aeb@cwi.nl>
+Adrian Bunk <bunk@stusta.de>
+
+Presently in util-linux maintained by Karel Zak <kzak@redhat.com>.
+
+== Notes to developers ==
+
+ The final solution will be libmount/mount.c as the
+ mount(8) command implementation. So, let's keep the
+ current mount/* code in maintenance mode and don't try to
+ rewrite it :-)
diff --git a/Documentation/pg.txt b/Documentation/pg.txt
new file mode 100644
index 000000000..df92b85fd
--- /dev/null
+++ b/Documentation/pg.txt
@@ -0,0 +1,23 @@
+README for the "pg" utility for Linux.
+
+The "pg" utility is the historic System V equivalent to BSD's "more". This
+is a free clone of it, and it is intended to conform to the SVID 4 as well
+as the SUSv2 specification of this command.
+
+Contrasting to the System V implementation, this one filters backspace
+formatting sequences while searching, so you can comfortably search in nroff
+output like manual pages.
+
+This code uses routines as defined by SUSv2, so a glibc version of 2.1 or
+higher is required on Linux. A curses implementation (like ncurses) must
+be present as well.
+
+If large files > 2GB are supported by the kernel and the C library, pg is
+able to handle them.
+
+Please send comments, bug-reports and especially bug-fixes to
+<g-r@bigfoot.de> .
+
+Gunnar Ritter
+Freiburg i. Br.
+Germany
diff --git a/Documentation/poeigl.txt b/Documentation/poeigl.txt
new file mode 100644
index 000000000..5d30ec581
--- /dev/null
+++ b/Documentation/poeigl.txt
@@ -0,0 +1,583 @@
+README for init/getty/login, by poe@daimi.aau.dk
+
+This package contains simpleinit, agetty, and login programs for Linux.
+Additional utilities included are: hostname, who, write, wall, users
+domainname, hostid, cage and mesg.
+
+Most of this software has been contributed by others, I basically just
+ported the things to Linux.
+
+About installation: See the bottom of this file. Check the Makefile!
+Be sure you know what you are doing! You may well be able to lock
+yourself out from your machine. Especially: The init provided here
+(simpleinit) is NOT a SYSV compatible init and the inittab format
+is different.
+
+If you are uncertain whether you got the latest version, check out
+
+ ftp://ftp.daimi.aau.dk/pub/linux/poe/
+
+Version 1.49 (20-Jun-97)
+ Small patches for new util-linux distribution and glibc compat.
+ PAM support in login.c by Erik Troan.
+
+Version 1.48 (6-Jun-97)
+ Now changes mode and owner of /dev/vcs devices for console logins.
+ After idea by Andries Brouwer.
+
+Version 1.47 (2-Apr-97)
+ Got new version of hostid.c and hostid.1 from
+ Sander van Malssen <svm@kozmix.ow.nl>.
+ Removed premature endutent() call in login.c, simpleinit.c and
+ agetty.c to be compatible with the changed semantics of gnu libc2.
+ Fix by Jesse Thilo <Jesse.Thilo@pobox.com>.
+
+Version 1.46 (28-Jan-97)
+ Several security fixes for login by David Holland (buffer overruns)
+ <dholland@hcs.harvard.edu>
+ Fixed write.c, to handle a terminating period correctly.
+ Re-indented login.c, it was getting too messy.
+
+Version 1.45a (16-Dec-96)
+ Better support in login for shadow passwords. Compile with
+ -DSHADOW_PWD if you have <shadow.h>. This is on by default.
+ By Marek Michalkiewicz <marekm@i17linuxb.ists.pwr.wroc.pl>.
+ Changed the wtmp locking scheme in login.c,agetty.c,simpleinit.c
+ to flock() /etc/wtmplock instead of the wtmp file directly.
+ This avoids a denial of service attack.
+ Some support for the RB-1 Cryptocard token for challenge/response
+ authentication. This needs a DES library, either Eric Young's
+ libdes, or the Koontz implementation, see cryptocard.c.
+ Initial support patch by Randolph Bentson,
+ <bentson@grieg.seaslug.org>
+ Changed getpass() to use fputs() instead of fprintf().
+
+Version 1.44 (13-Nov-96):
+ Made isapty() in checktty.c more resilient to 2.0 systems
+ that haven't re-MAKEDEV'ed their pty devices.
+
+Version 1.43 (8-Nov-96):
+ Fix to checktty.c: PTY's are numbered differently after 1.3,
+ blush! Fix by Gerhard Schneider <gs@ilfb.tuwien.ac.at>
+
+Version 1.42c (6-Nov-96):
+ Small fix by Gabriel M. Schuyler <schuyler@easiest.com>, to get
+ better syslog messages (1 LOGIN FAILURE instead of 2 LOGIN FAILURES).
+ Patch butchered by me.
+
+Version 1.42b (30-Sep-96):
+ Got patch for checktty.c from Christoph Lameter
+ <clameter@miriam.fuller.edu> so it doesn't traverse the groupfile
+ "manually" but uses the getgroups() call, this is more efficient
+ with large groupfiles and NIS/YP.
+
+Version 1.42a (24-Sep-96):
+ Added extra syslog() call to login.c to log all good logins.
+ Patch from Steve Philp.
+
+Version 1.41 (20-Jul-96):
+ Added security fix to checktty.c by JDS to clear certain lists.
+ Patches butchered and ANSI'fied by me.
+ Added -n option to agetty to avoid the login prompt.
+
+Version 1.40a (29-Dec-95):
+ Added -f <issue_file> option to agetty. Patches from Eric Rasmussen
+ <ear@usfirst.org>, but somewhat butchered by me.
+
+Version 1.39 (25-Oct-95):
+ Lots of testing and bugfixes in agetty. Now the modem init stuff
+ should finally work (for me). Also wrote modem.agetty as an example
+ on how to use agetty with a modem.
+ Agetty now also supports baud rates of 38400, 57600, 115200 and
+ 230400 bps.
+
+Version 1.37 (15-Sep-95):
+ Added -I <initstring> and -w options to agetty.c for those that
+ use agetty with modems.
+
+Version 1.36 (25-Aug-95):
+ Enhanced /etc/usertty features with group support. Moved this part
+ of login.c to checktty.c. One can now define classes of hosts and
+ ttys and do access checking based on unix-group membership. See
+ login.1. Also time ranges for logins can be specified, for example
+ writing the line
+
+ joe [mon:tue:wed:thu:fri:8-16]@barracuda [mon:tue:wed:thu:fri:0-7:17-23]@joes.pc.at.home [sat:sun:0-23]@joes.pc.at.home
+
+ says that during working hours, Joe may rlogin from the host
+ barracuda, whereas outside working hours and in weekends Joe may
+ rlogin from his networked PC at home.
+
+ login.c: failures was not properly initialized, it now is. Also
+ made sure ALL failures are really logged to syslog.
+
+Version 1.35 (7-Aug-95):
+ login.c: Much improved features for the usertty file, allows
+ access control based on both hostnames/addresses and line. See the
+ about.usertty file and the man-page.
+
+ Fixed agetty so it doesn't fiddle with the ut_id field in the
+ utmp record, this should prevent growing utmps on systems with
+ more than 10 login lines. Fix suggested and checked by Alan Wendt
+ <alan@ezlink.com> in his agetty.1.9.1a.
+
+ Agetty now installs as agetty again, not as getty.
+ Updated man-page for login(1) to document /etc/usertty changes.
+
+ This has been tested on Linux 1.2.5 with GCC 2.5.8 and libc 4.5.26.
+
+Version 1.33a (20-Jun-95):
+ rchatfie@cavern.nmsu.edu ("rc.") suggested that I should remove
+ the #ifndef linux around the special logging of dial-up
+ logins. This is now done, so each login via a serial port
+ generates a separate DIALUP syslog entry.
+
+Version 1.33 (5-Jun-95):
+ Patch by Ron Sommeling <sommel@sci.kun.nl> and
+ jlaiho@ichaos.nullnet.fi (Juha Laiho) for agetty.c, used
+ to return a pointer to an automatic variable in get_logname().
+ Many patches from or via Rickard Faith <faith@cs.unc.edu>, fixing
+ man-pages etc, now defaults to using /var/log/wtmp and /var/run/utmp
+ according to the new FSSTND.
+
+ Fix in login.c for CPU eating bug when a remote telnet client dies
+ while logging in.
+
+ This is for Linux 1.2, GCC 2.6.2 or later.
+
+Version 1.32b (12-Mar-95):
+ Login now sets the tty group to "tty" instead of "other". Depending
+ on compile-time define USE_TTY_GROUP the tty mode is set to 0620 or
+ 0600 instead of 0622. All as per suggestion by Rik Faith and the
+ linux-security list.
+ Write/wall now strips control chars except BEL (\007). Again after
+ suggestion by Rik Faith.
+
+Version 1.32a
+ Urgent security patch from Alvaro M. Echevarria incorporated into
+ login.c. This is really needed on machines running YP until
+ the libraries are fixed.
+
+Version 1.32
+ Login now logs the ip-address of the connecting host to utmp as it
+ should.
+
+Version 1.31b (2-Feb-95):
+ Daniel Quinlan <quinlan@yggdrasil.com> and Ross Biro
+ <biro@yggdrasil.com> suggested a patch to login.c that allows for
+ shell scripts in the shell field of /etc/passwd, so one can now
+ have (as a line in /etc/passwd):
+ bye::1000:1000:Outlogger:/bin:echo Bye
+ Logging in as "bye" with no password simply echoes Bye on the screen.
+ This has applications for pppd/slip.
+
+Version 1.31a (28-Oct-94):
+ Scott Telford provided a patch for simpleinit, so executing reboot
+ from singleuser mode won't partially execute /etc/rc before
+ the reboot.
+
+Version 1.30 (17-Sep-94):
+ tobias@server.et-inf.fho-emden.de (Peter Tobias) has made a more
+ advanced hostname command that understands some options such as
+ -f for FQDN etc. I'll not duplicate his work. Use his hostname
+ package if you wish.
+
+ svm@kozmix.xs4all.nl (Sander van Malssen) provided more features
+ for the /etc/issue file in agetty. \U and \u now expand to the
+ number of current users.
+
+ It is now possible to state the value of TERM on the agetty command
+ line. This was also provided by Sander.
+
+ This has been built under Linux 1.1.42 with gcc 2.5.8 and libc 4.5.26.
+
+Version 1.29 (18-Aug-94):
+ Finally got around to making a real version after the numerous
+ alpha versions of 1.28. Scott Telford <st@epcc.ed.ac.uk> provided
+ a patch for write(1) to make it look more like BSD write.
+
+ Fixed login so that the .hushlogin feature works even with real
+ protective users mounted via NFS (ie. where root can't access
+ the user's .hushlogin file).
+
+ Cleaned up the code to make -Wall bearable.
+
+Version 1.28c (21-Jul-94):
+ Rik Faith reminded me that agetty should use the syslog
+ facility. It now does.
+
+Version 1.28b (30-May-94):
+ On suggestion from Jeremy Fitzhardinge <jeremy@suite.sw.oz.au>
+ I added -- as option delimiter on args passed from agetty to
+ login. Fixes -froot hole for other login programs. The login
+ program in this package never had that hole.
+
+Version 1.28a (16-May-94):
+ bill@goshawk.lanl.gov provided a couple of patches, one fixing
+ terminal setup in agetty, and reboot is now supposed to be
+ in /sbin according to FSSTND.
+
+Version 1.27 (10-May-94):
+ Changed login.c, so all bad login attempts are logged, and added
+ usertty security feature. See about.usertty for an explanation.
+ There's no longer a limit of 20 chars in the TERM environment
+ variable. Suggested by Nicolai Langfeldt <janl@math.uio.no>
+
+ Added #ifdef HAVE_QUOTA around quota checks. Enable them if
+ you have quota stuff in your libraries and kernel.
+ Also re-enabled set/getpriority() calls as we now have them,
+ and have had for a long time...
+
+ Now wtmp is locked and unlocked around writes to avoid mangling.
+ Due to Jaakko Hyv{tti <HYVATTI@cc.helsinki.fi>.
+
+ Wrt. agetty: A \o in /etc/issue now inserts the domainname, as
+ set by domainname(1). Sander van Malssen provided this.
+ This is being used under Linux 1.1.9
+
+ Beefed up the agetty.8 man-page to describe the /etc/issue
+ options. Added man-pages for wall, cage, who.
+
+Version 1.26 alpha (25-Apr-94):
+ Added patch from Bill Reynolds <bill@goshawk.lanl.gov> to
+ simpleinit, so it will drop into single user if /etc/rc
+ fails, eg. from fsck.
+
+Version 1.25 (9-Feb-94):
+ Agetty should now work with the Linux 0.99pl15a kernel.
+ ECHOCTL and ECHOPRT are no longer set in the termios struct.
+ Also made agetty accept both "tty baudrate" and "baudrate tty"
+ arguments.
+
+Version 1.24 (23-Jan-94): changes since 1.22
+ Christian von Roques <roques@juliet.ka.sub.org> provided a patch
+ that cleans up the handling of the -L option on agetty.
+ Rik Faith <faith@cs.unc.edu> enhanced several man-pages...
+
+Version 1.23 (11-Dec-93): changes since 1.21
+ Mitchum DSouza provided the hostid(1) code. It needs libc 4.4.4 or
+ later and a Linux 0.99.14 kernel or later. It can set and print
+ the world unique hostid of the machine. This may be used in
+ connection with commercial software licenses. God forbid!
+ I added the -v option, and munged the code a bit, so don't blame
+ Mitch if you don't like it.
+
+ I made the "cage" program. Using this as a shell in the passwd
+ file, enables one to let users log into a chroot'ed environment.
+ For those that have modem logins and are concerned about security.
+ Read the source for further info.
+
+ "who am i" now works.
+
+ The login program works with Yellow Pages (aka NIS) simply by
+ linking with an appropriate library containing a proper version
+ of getpwnam() and friends.
+
+Version 1.21 (30-Oct-93): changes since 1.20
+ In simpleinit.c: The boottime wtmp record is now written *after*
+ /etc/rc is run, to put a correct timestamp on it.
+ Daniel Thumim <dthumim@mit.edu> suggested this fix.
+
+ The source and Makefile is prepared for optional installation of
+ binaries in /sbin instead of /etc, and logfiles in /usr/adm instead
+ of /etc. See and change the Makefile to suit your preferences.
+ Rik Faith and Stephen Tweedie inspired this change.
+
+Version 1.20 (30-Jul-93): changes since 1.17:
+ Versions 1.18 and 1.19 were never made publically available.
+ Agetty now supports a -L switch that makes it force the CLOCAL flag.
+ This is useful if you have a local terminal attached with a partly
+ wired serial cable that does not pass on the Carrier Detect signal.
+
+ There's a domainname program like the hostname program; contributed
+ by Lars Wirzenius.
+
+ Simpleinit will now write a REBOOT record to wtmp on boot up. Time-
+ zone support is now optional in simpleinit. Both of these patches
+ were made by Scott Telford <st@epcc.ed.ac.uk>.
+
+ This is for Linux 0.99.11 or later.
+
+Version 1.17 (19-May-93): changes since 1.16:
+ Login, simpleinit and write should now work with shadow passwords
+ too. See the Makefile. Thanks to Anders Buch who let me have an
+ account on his SLS based Linux box on the Internet, so I could test
+ this. I should also thank jmorriso@rflab.ee.ubc.ca (John Paul Morrison)
+ who sent me the shadow patch to login.c
+
+Version 1.16 (24-Apr-93): changes since 1.15a:
+ Simpleinit now clears the utmp entry associated with the pid's that
+ it reaps if there is one. A few are still using simpleinit and this
+ was a popular demand. It also appends an entry to wtmp
+
+Version 1.15a (15-Mar-93): changes since 1.13a:
+ junio@shadow.twinsun.com (Jun Hamano) sent me a one-line fix
+ for occasional mangled issue-output from agetty.
+
+Version 1.13a (2-Mar-93): changes since 1.12a:
+ With the new LILO (0.9), there are more than one possible arg
+ to init, so Werner Almesberger <almesber@bernina.ethz.ch>
+ suggested that a loop over argv[] was made in boot_single() in
+ simpleinit.c
+
+Version 1.12a (24-Feb-93): changes since 1.11:
+ This is for Linux 0.99.6 or later. Built with gcc 2.3.3 and libc4.2
+ jrs@world.std.com (Rick Sladkey) told me that the setenv("TZ",..)
+ in login.c did more harm than good, so I commented it out.
+
+Version 1.11a (16-Feb-93): changes since 1.9a:
+ This is for Linux 0.99.5 or later.
+ Anthony Rumble <arumble@extro.ucc.su.OZ.AU> made me avare that
+ the patches for vhangup() from Steven S. Dick didn't quite work,
+ so I changed it.
+
+ Linus Torvalds provided another patch relating to vhangup, since
+ in newer Linuxen vhangup() doesn't really close all files, so we
+ can't just open the tty's again.
+
+Version 1.9a (18-Jan-93): changes since 1.8a:
+ Rick Faith sent me man-pages for most of the untilities in this
+ package. They are now included.
+
+ Steven S. Dick <ssd@nevets.oau.org> sent me a patch for login.c
+ so DTR won't drop during vhangup() on a modemline.
+
+ This is completely untested!! I haven't even had the time to
+ compile it yet.
+
+Version 1.8a (13-Dec-92): changes since 1.7:
+ This is for Linux 0.98.6 or later. Compiles with gcc2.2.2d7 and libc4.1
+
+ Bettered write/wall after fix from I forget who. Now wall can have
+ commandline args.
+
+ Fixed bug in who.c
+
+ Patched simpleinit.c with patch from Ed Carp, so it sets the timezone
+ from /etc/TZ. Should probably by be /etc/timezone.
+
+ Sander Van Malssen <sander@kozmix.hacktic.nl> provided a patch
+ for getty, so it can understand certain escapecodes in /etc/issue.
+
+ I hacked up a very simple substitute for a syslog() call, to try out
+ the logging. If you have a real syslog() and syslogd then use that!
+
+ The special vhangup.c file is out, it's in the official libc by now.
+ (and even in the libc that I have :-)
+
+ who, and write are now deprecated, get the better ones from one of
+ the GNU packages, shellutils I think.
+
+ Some people think that the simple init provided in this package is too
+ spartan, if you think the same, then get the SYSV compatible init
+ from Miquel van Smoorenburg <miquels@maestro.htsa.aha.nl>
+ Simpleinit will probably be deprecated in the future.
+
+Version 1.7: 26-Oct-92 changes since 1.6:
+ This is for Linux 0.97PL4 or later.
+
+ Thanks to Werner Almesberger, init now has support for a
+ singleuser mode.
+
+ Login now supports the -h <hostname> option, used in connection
+ with TCP/IP. (rlogin/telnet)
+
+ Getty writes an entry to /etc/wtmp when started, so last won't report
+ "still logged in" for tty's that have not been logged into since
+ the last user of that tty logged out. This patch was inspired by
+ Mitchum DSouza. To gain the full benefit of this, get the newest
+ last from the admutils-1.4.tar.Z package or later.
+
+Version 1.6 (29-Aug-92): changes since 1.5:
+ This is for Linux 0.97P1+ or later.
+
+ Login now uses the newly implemented vhangup() sys-call, to prevent
+ snooping on the tty.
+ An alternative getpass() function is now provided with login, because
+ I was told that the old one in libc didn't work with telnet and
+ or rlogin. I don't have a network or a kernel with TCP/IP so I haven't
+ tested the new one with telnet, but it is derived from BSD sources
+ that are supposed to work with networking.
+
+Version 1.5 (12-Aug-92): changes since 1.4
+ This is for Linux 0.97 or later, and has been built with gcc2.2.2
+
+ This release just puts in a few bugfixes in login.c and simpleinit.c
+
+Version 1.4 (4-Jul-92): changes since 1.3:
+ This is for Linux 0.96b, and has been built and tested with gcc 2.2.2.
+
+ Init now handles the SIGINT signal. When init gets a SIGINT it will
+ call /usr/bin/reboot and thereby gently reboot the machine. This
+ makes sense because after Linux 0.96B-PL1 the key-combination
+ Ctrl-Alt-Del may send a SIGINT to init instead of booting the
+ machine the hard way without syncing or anything.
+
+ You may want to get the admutils-1.1 package which includes a program
+ that will instruct the kernel to use the "gentle-reboot" procedure.
+
+Version 1.3 (14-Jun-92): changes since 1.2:
+ This is for Linux 0.96A.
+
+ The ioctl(TIOCSWINSZ) has been removed from login.c because it now
+ works :-).
+
+ login.c now supports a lastlog database.
+
+ Several programs and pieces of source that were included in the 1.2
+ package has been *removed* as they are incorporated into the new
+ libc. Other omitted parts such as last(1) has been replaced by
+ better versions, and can be found in the admutils package.
+
+ Agetty is now called getty and will be placed in /etc.
+
+ A few changes has been made to make it possible to compile the
+ stuff with GCC 2.x.
+
+Version 1.2 (28-Feb-92): changes since 1.1:
+ This is for Linux 0.12.
+
+ A couple of problems with simpleinit.c has been solved, thanks to
+ Humberto Zuazaga. So now init groks comments in /etc/inittab, and
+ handles the HUP and TSTP signals properly.
+
+ I added two small scripts to the distribution: users and mesg.
+
+ TERM is now carried through from /etc/inittab all the way to the
+ shell. Console tty's are special-cased, so the termcap entry in
+ /etc/inittab is overridden by the setting given at boot-time.
+ This requires a different patch to the kernel than that distributed
+ with version 1.1
+
+ Login no more sends superfluous chars from a password to the
+ shell. It also properly prints a NL after the password.
+
+ Agetty didn't set the erase character properly, it does now.
+
+ A few extra defines has been added to utmp.h
+
+ Several netters helped discover the bugs in 1.1. Thanks to them
+ all.
+
+Version 1.1 (released 19-Feb-92): Changes since 1.0:
+ A bug in simpleinit.c has been fixed, thanks to Pietro Castelli.
+ The definition of the ut_line field has been changed to track the
+ USG standard more closely, we now strip "/dev/" off the front.
+ Thanks to: Douglas E. Quale and Stephen Gallimore.
+
+ I have added a getlogin.c library routine, and a write(1) command.
+ I removed the qpl-init stuff. If people want to use it, they should
+ get it from the source. I don't want to hack on it anymore.
+
+ A couple of people reported problems with getty having problems
+ with serial terminals. That was correct. I borrowed a null-modem
+ from Tommy Thorn, and now the problems should be fixed. It seems
+ that there is kept a lot of garbage in the serial buffers, flush
+ them and it works like a charm. Getty does an ioctl(0, TCFLSH, 2)
+ for this.
+
+ The write.c code now doubles as code for a wall(1) program.
+
+Description of the various files:
+
+login.c The login program. This is a portation of BSD login, first
+ to HP-UX 8.0 by Michael Glad (glad@daimi.aau.dk), and
+ to Linux (initially to 0.12) by me.
+
+who.c A simple who(1) util. to list utmp. Done by me.
+ You may prefer the GNU who util. with more options
+ and features.
+
+hostname.c A hostname(1) command to get and set the hostname. I did
+ this too.
+
+domainname.c Like hostname, only reads out or sets the domainname.
+
+agetty.c The getty program. From comp.sources.misc, by W.Z. Venema.
+ Hacked a bit by me.
+
+simpleinit.c A simple init program, written by me. Uses /etc/inittab
+
+ A "kill -HUP" to init makes it re-read /etc/inittab.
+ A "kill -TSTP" to init makes it stop spawning gettys on the
+ ttys. A second "kill -TSTP" starts it again.
+ A kill -INT to init makes it attempt a reboot of the machine.
+ this works in connection with kernel support for softboot
+ when Ctrl-Alt-Del is pressed.
+
+ Init will start up in singleuser mode if /etc/singleboot
+ exists at boottime, or if it is given an argument of "single"
+ via eg. LILO. If /etc/securesingle exists it will ask for the
+ root password before starting single user.
+
+write.c A write(1) command, used to pass messages between users
+ at different terminals. This code doubles as code for
+ a wall(1) command. Make a symlink: /usr/bin/wall ->
+ /usr/bin/write for this.
+
+mesg A tiny shellscript, so you can avoid that other people write
+ to your shell.
+
+users Another script that uses awk(1) and tr(1) to process the
+ output from who(1) into a one-liner.
+ If you don't have awk, but have Perl, this does the same:
+
+ who | perl -ane 'print "$F[0] "'; echo ""
+
+pathnames.h:
+ Header.
+
+param.h
+ Header, extended with getdtablesize() macro, should go
+ in /usr/include/sys
+
+Building.
+---------
+A "make all" should do. At least it does for me.
+
+Installation:
+-------------
+
+login should go in /bin, if you don't like this change
+ pathnames.h and recompile at least agetty.
+
+getty, init Put them in SBINDIR
+
+who, hostname, write, wall, mesg, users:
+ /usr/bin
+
+securetty login needs this in /etc, defines which ttys that root
+ can login on. This should *never* include ttys{1,2}
+
+inittab the simpleinit code needs this in /etc. Note that the syntax
+ of /etc/inittab has little to do with the syntax of a real
+ SysV inittab. Edit this one for your local setup.
+
+shells The chsh program will use this if it's placed in /etc. It
+ defines the valid shell-programs. Have one abs. path on
+ each line.
+
+You can also do a "make install" as root, but don't just do it because I
+say so, check the Makefile first.
+
+"Make install" will install only the new binaries, and not motd, inittab,
+securetty and issue. To install these configuration files, do a
+"make Install".
+
+Getty requires a /dev/console to write errors to. I just made it a symlink
+to /dev/tty1. Because of a bug in the tty driver this errorlogging may
+cause the shell on tty1 to logout.
+
+Getty will print the contents of /etc/issue if it's present before asking
+for username. Login will print the contents of /etc/motd after successful
+login. Login doesn't print /etc/motd, and doesn't check for mail if
+~/.hushlogin is present and world readable.
+
+If /etc/nologin is present then login will print its contents and disallow
+any logins except root.
+It might be a good idea to have a "rm -f /etc/nologin" line in one's
+/etc/rc file.
+
+If /etc/securetty is present it defines which tty's that root can login on.
+
+ - Peter (poe@daimi.aau.dk)
diff --git a/Documentation/releases/v2.13-ReleaseNotes b/Documentation/releases/v2.13-ReleaseNotes
new file mode 100644
index 000000000..efd5d6854
--- /dev/null
+++ b/Documentation/releases/v2.13-ReleaseNotes
@@ -0,0 +1,460 @@
+
+Util-linux-ng 2.13 Release Notes (28-Aug-2007)
+===============================================
+
+Release highlights:
+------------------
+
+ mount(8) doesn't include NFS client code anymore. Don't forget to
+ install nfs-utils 1.1.0 or newer with /sbin/[u]mount.{nfs,nfs4}.
+
+ mount(8) doesn't include filesystem detection code anymore. You
+ have to compile --with-fsprobe={blkid,volume_id}, and libblkid
+ (e2fsprogs) or libvolume_id (udev >= v110) is required.
+
+ mount(8) supports new relatime, context, fscontext, and defcontext
+ mount options.
+
+ losetup(8) supports command line option "-a" to list all used loop
+ devices, '-s' to print a device name if "-f" and a file argument
+ are present, and "-r" to create a read-only loop device.
+
+ fdisk(8) Sun label support has been improved. fdisk(8) is also able
+ to warn about detected GPT (fdisk doesn't support GPT).
+
+ taskset(1) is independent on hardcoded NR_CPUS. chrt(1) supports
+ SCHED_BATCH scheduling policy.
+
+ The package build system is now based on autotools. The build system
+ supports separate CFLAGS and LDFLAGS for suid programs (SUID_CFLAGS,
+ SUID_LDFLAGS). For more details see the README file
+
+ hwclock(8) supports command line option --rtc=<path> and /dev/rtc0
+ device. --systohc functionality has been improved, and it doesn't cause
+ a 500ms inaccuracy each time it is used.
+
+ Audit system support (--with-audit) has been added to hwclock(8) and
+ login(1).
+
+ SELinux support (--with-selinux) has been added to mkswap(8) and
+ mount(8).
+
+ setarch(8) upstream has been merged with util-linux-ng.
+
+ rtcwake(8) command has been added to util-linux-ng.
+
+ arch(1) is deprecated in favor of "uname -m" or arch(1) from coreutils
+ (>= 6.9+). The util-linux-ng package doesn't build arch by default,
+ you have to use the option --enable-arch.
+
+
+Fixed security issues:
+---------------------
+
+ CVE-2007-0822 - mount(8) allows local users to trigger a NULL
+ dereference and an application crash
+ CVE-2006-7108 - login(1) omits PAM account validation when auth is
+ skipped
+
+
+Changelog:
+---------
+
+ For more details see ChangeLog files at:
+ ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.13/
+
+
+agetty:
+ - 8 bit characters on the Linux console lead to input corruption [Samuel Thibault]
+ - add 'O' escape code to display domain name [Karel Zak]
+ - check gethostname() return value [Karel Zak]
+ - fix short malloc in initstring handling [LaMont Jones]
+blockdev:
+ - add BLKFRAGET/BLKFRASET ioctls [Karel Zak]
+ - cleanup usage() and update man page [Karel Zak]
+ - fix "blockdev --getsz" for large devices [Karel Zak]
+ - use LU and LLU for BLKGETSIZE and BLKGETSIZE64 [Karel Zak]
+build-sys:
+ - add ${AC,AP,AM,AH}_OPTS to autogen.sh [Karel Zak]
+ - add AC_GNU_SOURCE [Karel Zak]
+ - add Automake option dist-bzip2 [Stepan Kasal]
+ - add --disable-makeinstall-chown [Karel Zak]
+ - add missing files [Karel Zak]
+ - add SUID_CFLAGS [Karel Zak]
+ - add SUID_LDFLAGS [Stepan Kasal]
+ - add support for audit [Karel Zak]
+ - add warning when libuuid is not found [Karel Zak]
+ - amend .gitignore [Stepan Kasal]
+ - call automake after autoconf [Stepan Kasal]
+ - cleanup architecture conditionals [Karel Zak]
+ - cleanup sys-utils/ rdev symlinks [Karel Zak]
+ - configure.am selinux support cleanup [Karel Zak]
+ - declare SUID_CFLAGS and SUID_LDFLAGS as precious [Stepan Kasal]
+ - do not build convenience libraries in lib/ [Stepan Kasal]
+ - do not kick off AM_CFLAGS by SUID_CFLAGS [Stepan Kasal]
+ - do not play with DEFS, use AM_CPPFLAGS [Stepan Kasal]
+ - do not set with_foo twice [Stepan Kasal]
+ - do not use internal Autoconf variables [Stepan Kasal]
+ - do not use wildcards in EXTRA_DIST [Stepan Kasal]
+ - factor out common parts from mount/Makefile.am [Stepan Kasal]
+ - fix directories in EXTRA_DIST [Karel Zak]
+ - fix HAVE_NCURSES [Karel Zak]
+ - fix ifdef ENABLE_WIDECHAR usage [Karel Zak]
+ - fix linking when ncurses is built with --with-termlib=tinfo [Arkadiusz Miskiewicz]
+ - fix README filenames and add missing files to EXTRA_DISTs [Karel Zak]
+ - fix the example configure call in README [Stepan Kasal]
+ - fix the final message of autogen.sh [Stepan Kasal]
+ - in configure.ac, change "po" -> "$srcdir/po" [Stepan Kasal]
+ - in the clean targets use "find ... | xargs rm -f" [Stepan Kasal]
+ - let configure instantiate the misc-utils/*.pl scripts [Stepan Kasal]
+ - make the getopt example directory relative to datadir [Stepan Kasal]
+ - merge adjacent AC_CONFIG_HEADERS and AC_CONFIG_FUNCS calls [Stepan Kasal]
+ - minor fixes in configure.in [Karel Zak]
+ - missing header when NLS is disabled [Gabriel Barazer]
+ - mount/Makefile.am tiny cleanup II [Stepan Kasal]
+ - mount/Makefile.am tiny cleanup [Stepan Kasal]
+ - move -D flags to *_CPPFLAGS [Stepan Kasal]
+ - move the optimization flags to AM_CFLAGS [Stepan Kasal]
+ - --prefix defaults to /usr [Stepan Kasal]
+ - release++ [Karel Zak]
+ - remove aclocal.m4 from SCM [Karel Zak]
+ - remove AC_PROG_RANLIB [Stepan Kasal]
+ - remove asm/page.h test [Karel Zak]
+ - remove config.h.in from VCS [Stepan Kasal]
+ - remove config/include-Makefile.am from EXTRA_DIST [Stepan Kasal]
+ - remove DEFAULT_INCLUDES workaround [Karel Zak]
+ - remove -fomit-frame-pointer [Karel Zak]
+ - remove generated autotools stuff from git [Karel Zak]
+ - remove libtool [Karel Zak]
+ - remove "make mrproper", git-clean is good enough [Karel Zak]
+ - remove po/Makevars.template from EXTRA_DIST [Stepan Kasal]
+ - remove swapargs.h, move the tests to main configure.ac [Stepan Kasal]
+ - rename to -ng, change maintainer name [Karel Zak]
+ - replace AC_TRY_* by AC_*_IFELSE [Stepan Kasal]
+ - s/AC_HELP_STRING/AS_HELP_STRING/ [Stepan Kasal]
+ - set DISTCHECK_CONFIGURE_FLAGS in top-level makefile [Stepan Kasal]
+ - simplify "clean" in tests/Makefile.am [Stepan Kasal]
+ - update po/POTFILES.in [Stepan Kasal]
+ - use dist_example_DATA [Stepan Kasal]
+ - use dist_noinst_DATA to work around the bug with dist_man_MANS [Stepan Kasal]
+ - use dist_noinst_HEADERS in include/Makefile.am [Stepan Kasal]
+ - use dist_usrbinexec_SCRIPTS in misc-utils/Makefile.am [Stepan Kasal]
+cal:
+ - add test code [Karel Zak]
+ - fix a segfault and -3m highlighting [Karel Zak]
+ - ifdef cleanup, non-curses/tempcap code fixes [Karel Zak]
+ - widechar code cleanup [Karel Zak]
+cfdisk:
+ - build-sys defines HAVE_RPMATCH, not HAVE_rpmatch [Karel Zak]
+ - fix stupid typo in GPT checker call [Karel Zak]
+chsh:
+ - don't use empty shell field in /etc/passwd [Karel Zak]
+ - remove tailing wihit-spaces and use PATH_BSHELL [Karel Zak]
+col:
+ - getwchar() errors shouldn't be hidden [Karel Zak]
+cytune:
+ - make the oneliner more specific the cyclades hw in question [Justin B Rye]
+ - remove linux/tty.h inclusion [Karel Zak]
+ddate:
+ - fix compiler warnings [Karel Zak]
+disk-utils:
+ - fix libuuid usage in mkswap [Matthias Koenig]
+ - let mkfs tools open with O_EXCL [Matthias Koenig]
+docs:
+ - add DEPRECATED to EXTRA_DIST [Karel Zak]
+ - add note about http //translationproject.org [Karel Zak]
+ - add rdev(8) between deprecated utils [Karel Zak]
+ - add README.licensing [Karel Zak]
+ - add release notes [Karel Zak]
+ - add the DEPRECATED file [Karel Zak]
+ - clean up TODO file and add a new resuest for 2.14 [Karel Zak]
+ - fix authorship of 8-bit cleanup agetty patch [Karel Zak]
+ - fix BSD licence name in README.licensing [Karel Zak]
+ - fix info about devel/master branchs [Karel Zak]
+ - fix URL and typos in README.devel [Karel Zak]
+ - remove deprecated section from README [Karel Zak]
+ - update release notes [Karel Zak]
+fdisk:
+ - Makefile.am refactoring [Karel Zak]
+ - add GPT detection code [Karel Zak]
+ - add MAC label detection [Karel Zak]
+ - add support for udev persistent device names [Matthias Koenig]
+ - check returns in fdisk from partition changes [Mike Frysinger]
+ - cleanup full disk detection code [Karel Zak]
+ - cleanup partname.c [Karel Zak]
+ - do not complain about regular files [H. Peter Anvin]
+ - fix "differ in signedness" compiler warnings [Karel Zak]
+ - fix "type qualifiers ignored on function return type" [Karel Zak]
+ - many significant improvements and fixes to Sun label handling [David Miller]
+ - move duplicate stuff from fdisk*label.h to fdisk.h [Karel Zak]
+ - use unsigned long long instead int for sectors [Karel Zak]
+ - when generating a DOS disk label, give it an ID [H. Peter Anvin]
+getopt:
+ - remove old unused files [Karel Zak]
+hexdump:
+ - don't use memset with zero lenght [Karel Zak]
+hwclock:
+ - add --rtc=<path> option and support for /dev/rtc0 [Karel Zak]
+ - add support for audit system [Karel Zak]
+ - fix --systohc sets clock 0.5 seconds slow [Karel Zak]
+ - make ggc happy and check return values from fgets, read and write [Karel Zak]
+ - remove tailing white-spaces and clean up clock.h [Karel Zak]
+ionice:
+ - clean up error handling [Matthias Koenig]
+ - cleanup usage for idle class [Matthias Koenig]
+ - fix ionice build on sparc [David Miller]
+ - prefer SYS_ioprio_{set,get} from glibc to hardcoded version [Karel Zak]
+ipcs:
+ - add new tests for ipcs limits [Karel Zak]
+ - add regression test for output headers [Karel Zak]
+ - fix typo in Semaphore headers [Karel Zak]
+ - max total shared memory in kbytes instead pages [Karel Zak]
+logger:
+ - use snprintf instead of sprintf in logger.c [LaMont Jones]
+login:
+ - add audit support [Karel Zak]
+ - add IPv6 support [Karel Zak]
+ - add regression test for IP address checking code [Karel Zak]
+ - attempt to run if it has no read/write access to its terminal [Jason Vas Dias]
+ - close PAM session after failed pam_setcred [Steve Grubb]
+ - improve work with signals [Karel Zak]
+ - keep syslog useful for end of PAM session. [Karel Zak]
+ - login's timeout can fail [Jason Vas Dias]
+ - omits PAM account validation when auth is skipped (CVE-2006-7108) [Karel Zak]
+ - remove triiling white-spaces [Karel Zak]
+ - replace /usr/spool/mail with /var/spool/main in man page [Karel Zak]
+ - update 32bit utmp correctly on 64bit system [Karel Zak]
+lomount.c:
+ - don't use mlockall if CRYPT_NONE [Masatake YAMATO]
+look:
+ - fix problem with !isalnum() words [Karel Zak]
+ - man page clarification [Pádraig Brady]
+ - remove tailing white-spaces [Karel Zak]
+losetup:
+ - add -a option to list all used loop devices [Karel Zak]
+ - add a new option -s [Karel Zak]
+ - add long options and fix man page [Karel Zak]
+ - add support read-only loops [Karel Zak]
+ - add to man page info about deprecated cryptoloop [Karel Zak]
+man pages:
+ - add "AVAILABILITY" section [Karel Zak]
+ - cleanup of chrt.1 and taskset.1 [LaMont Jones]
+mcookie:
+ - remove non-linux code [Karel Zak]
+misc-util:
+ - new rtcwake command [Bernhard Walle]
+misc-utils:
+ - add scriptreplay manpage [Matthias Koenig]
+ - remove old cal test [Karel Zak]
+mkfs:
+ - remove nonsense from man page [Karel Zak]
+mkfs.cramfs:
+ - cleanup HAVE_ macros usage [Karel Zak]
+ - fix a way how mkfs works with empty files [Karel Zak]
+ - remove hardcoded limit for directories [Karel Zak]
+mkswap:
+ - add regression test [Karel Zak]
+ - automatically add selinux label to swapfile [Karel Zak]
+ - avoid mkswap usage on already mounted device [Karel Zak]
+ - default to V1 in any case [Matthias Koenig]
+ - fix signedness problems and remove obsolete code [Karel Zak]
+ - gcc happy unsigned long usage [Karel Zak]
+more:
+ - fix file descriptor leak [Steve Grubb]
+ - fix underlining for multibyte chars [Karel Zak]
+mount:
+ - add acl option documentation for ext3 and reiserfs [Matthias Koenig]
+ - add note about /etc/mtab unreliability to mount.8 [Karel Zak]
+ - add note about fcntl/ioctl unreliability on NFS to mount.8 [Karel Zak]
+ - add -s and -f and note to man page for external mount helpers [Karel Zak]
+ - add simple (printf-like) debug routine and --debug option [Karel Zak]
+ - add support for context, fscontext and defcontext selinux mount options [Karel Zak]
+ - add support for mixed usage of SPECes [Karel Zak]
+ - add support for mtab "uhelper" option [Karel Zak]
+ - avoid duplicate entries in mtab when mount -f [Karel Zak]
+ - avoid duplicates for root fs in mtab [Matthias Koenig]
+ - call /sbin/mount.<type> also when mounting without "-t" [Karel Zak]
+ - clean up getfs* (fstab.c) interface [Karel Zak]
+ - clean up info about NFS in mount.8 [Karel Zak]
+ - doesn't rpc_pipefs and nfsd on umount -a [Karel Zak]
+ - do not treat arm/sparc specially. [Mike Frysinger]
+ - don't umount sysfs when running umount -a [Mike Frysinger]
+ - fix -f -o remount [Karel Zak]
+ - fix -fv so that it doesn't incorrectly spit out an error that nothing was done. [Mike Frysinger]
+ - fix has_* functions (CVE-2007-0822) [Karel Zak]
+ - fix incorrect behavior when more than one fs type is specified [Attila Áfra]
+ - fix list logic in update_mtab [Karel Zak]
+ - fix memory usage in update_mtab [Mike Frysinger]
+ - fix mtab_lock [Karel Zak]
+ - fix typo in error message [Karel Zak]
+ - free loop device on failure [Sascha Sommer]
+ - fsprobe add libvolume_id support [Karel Zak]
+ - fsprobe add libvolume_id support to configure.ac [Karel Zak]
+ - fsprobe make fsprobe_get_devname functions more generic [Karel Zak]
+ - fsprobe remove mount_guess_fstype.{c,h} [Karel Zak]
+ - fsprobe remove non-blkid code [Karel Zak]
+ - fsprobe rename files to fsprobe_* [Karel Zak]
+ - fsprobe rename the rest of API routines to fsprobe_* [Karel Zak]
+ - fsprobe use blkid cache only when really necessary [Karel Zak]
+ - getfs_* (fstab) interface has to work with canonicalize() [Karel Zak]
+ - kill mount_guess_rootdev [Stepan Kasal]
+ - loop device race condition [Matthias Koenig]
+ - mention hfsplus in mount manpage [LaMont Jones]
+ - needs to handle special mountprog even on guessed file systems. [Karel Zak]
+ - parse SPEC before search in fstab [Karel Zak]
+ - relative atime support [Valerie Henson]
+ - remove all NFS code [Karel Zak]
+ - remove nfsmount() from sundries.h [Karel Zak]
+ - rewrite getfs_by_specdir() without mem leaks [Karel Zak]
+ - shared-subtree support [Karel Zak]
+ - should set proper permissions on locktime [Flávio Leitner]
+ - update mtab correctly when mount --move [Karel Zak]
+ - update xfs mount options [Matthias Koenig]
+ - use encoded labels for volume_id [Kay Sievers]
+ - use growable string for options [Karel Zak]
+ - use loop= option when mounting by /sbin/mount.<type> [Karel Zak]
+ - use realloc for xstrconcat functions [Karel Zak]
+ - use verbose mode instead debug mode [Karel Zak]
+namei:
+ - fix logic and infinite loop of symlinks [Karel Zak]
+ - new regression test [Karel Zak]
+newgrp:
+ - add support for /etc/gshadow [Karel Zak]
+ - check result from getgrnam() more carefully [Karel Zak]
+partx:
+ - add man pages for addpart, delpart and partx [Karel Zak]
+po:
+ - gettextizing some overlooked messages. [Benno Schulenberg]
+ - rename mount/mntent.c to mount/mount_mntent.c [Karel Zak]
+ - typo in french translation of mount error. [Mike Frysinger]
+ - update cs.po (from translationproject.org) [Petr Pisar]
+ - update de.po (from translationproject.org) [Michael Piefel]
+ - update nl.po (from translationproject.org) [Benno Schulenberg]
+ - update sv.po (from translationproject.org) [Daniel Nylander]
+ - update vi.po (from translationproject.org) [Phan Vinh Thinh]
+ - vipw doesn't use rpmatch, all translations have to use y/n [Karel Zak]
+raw:
+ - add file with udev rule example [Karel Zak]
+ - don't accept raw0 as a target name [Karel Zak]
+ - move the raw command to /sbin [Karel Zak]
+ - update man page (about dd and O_DIRECT) [Karel Zak]
+rdev:
+ - should be delivered on amd64 as well as i386. [LaMont Jones]
+readprofile:
+ - fix on ppc64 [Matthias Koenig]
+schedutils:
+ - add support for SCHED_BATCH [Karel Zak]
+ - define SCHED_BATCH when compile with old glibc [Karel Zak]
+ - fix chrt docs and pid=0 usage [Matthias Koenig]
+ - remove extra hyptens from man pages [Karel Zak]
+script:
+ - fix race conditions [Karel Zak]
+ - improve quiet mode [Karel Zak]
+setarch:
+ - add NLS support [Karel Zak]
+ - add --3gb option fot compatibility with Debian linux{32,64} command [Karel Zak, LaMont Jones]
+ - add __alpha__ support [Balint Cristian]
+ - add parisc/parisc64 support [LaMont Jones]
+ - add sparc32bash alias to keep compatibility with sparc32 [Dennis Gilmore]
+ - cleanup licensing note [Karel Zak]
+ - finish adding parisc support [Karel Zak, LaMont Jones]
+sfdisk:
+ - fix "differ in signedness" compiler warnings [Karel Zak]
+ - fix "may be used uninitialized" compiler warnings [Karel Zak]
+ - setting default geometry values [Luciano Chavez]
+swapoff:
+ - correctly handle UUID= and LABEL= identifiers [LaMont Jones]
+swapon:
+ - cleanup PATH_ macros and tailing white-spaces [Karel Zak]
+ - cleanup fsprobe_*() usage [Karel Zak]
+ - does not correctly deal with symlinks [Marco d'Itri]
+ - fix swapon headers and syscalls [Mike Frysinger]
+ - simplify an #if [Stepan Kasal]
+sys-utils:
+ - add arch(1) back to the official tree [Karel Zak]
+ - add note about obsolete ramsize option to rdev.8 [Karel Zak]
+ - added setarch command [Karel Zak]
+ - fix man page headers [Karel Zak]
+ - move some man pages from category 8 to 1 [Karel Zak]
+taskset:
+ - check for existence of sched_getaffinity [Mike Frysinger]
+ - independent of hardcoded NR_CPUS max. [Cliff Wickman]
+tests:
+ - add basic infrastructure for regression tests [Karel Zak]
+ - add cal -1 test [Karel Zak]
+ - add cal -3 test [Karel Zak]
+ - add cal -y test [Karel Zak]
+ - add expected outputs for cramfs [Karel Zak]
+ - add functions for label, uuid and fstype detection [Karel Zak]
+ - add hwclock systohc test [Karel Zak]
+ - add library for LD_PRELOAD to manipulate with time() in tests [Karel Zak]
+ - add license notices, change from gplv2-only to gplv2-or-later [Karel Zak]
+ - add lock_mtab() performance and reliability test [Karel Zak]
+ - add look test for words with separator [Karel Zak]
+ - add missing header [Matthias Koenig]
+ - add mkfs.cramfs tests [Karel Zak]
+ - add more variants to {mount,fstab}-by-{label,uuid,devname} [Karel Zak]
+ - add mount by devname from fstab [Karel Zak]
+ - add mount by devname test [Karel Zak]
+ - add mount by devname with label in fstab [Karel Zak]
+ - add mount by devname with uuid in fstab [Karel Zak]
+ - add mount by label from fstab test [Karel Zak]
+ - add mount by LABEL test [Karel Zak]
+ - add mount by label with devname in fstab [Karel Zak]
+ - add mount by label with uuid in fstab [Karel Zak]
+ - add mount by UUID from fstab test [Karel Zak]
+ - add mount by UUID test [Karel Zak]
+ - add mount by uuid with devname in fstab [Karel Zak]
+ - add mount by uuid with label in fstab [Karel Zak]
+ - add mount /dev/symlink test [Karel Zak]
+ - add mount --move test [Karel Zak]
+ - add mount -o remount test [Karel Zak]
+ - add return code [Karel Zak]
+ - add script(1) race condition test [Karel Zak]
+ - add simple helper that returns info about system [Karel Zak]
+ - add support for fstab modification [Karel Zak]
+ - add support for suid programs [Karel Zak]
+ - add swapon by devname test [Karel Zak]
+ - add swapon by UUID test [Karel Zak]
+ - add test for /sbin/mount.<type> call [Karel Zak]
+ - add ts_log and --verbose support [Karel Zak]
+ - add ts_ok and ts_failed [Karel Zak]
+ - cleanup blkid cache after test device deinitialization [Karel Zak]
+ - code refactoring -- new ts_device_init function [Karel Zak]
+ - code refactoring -- new ts_skip_nonroot function [Karel Zak]
+ - code refactoring -- new ts_udev_loop_support function [Karel Zak]
+ - enable mtablock test when uid=0 only [Karel Zak]
+ - fix argv[] usage in mnt_test_sysinfo.c [Karel Zak]
+ - fix dependence on blkid [Karel Zak]
+ - fix Makefile.am (add missing tests) [Karel Zak]
+ - fix ts_fstab_add function [Karel Zak]
+ - fix ULONG_MAX usage on 32bit machines [Karel Zak]
+ - "if [...]" clean up [Karel Zak]
+ - make clean need to remove diffs and outputs [Karel Zak]
+ - pass all arguments to ts_init, add ts_has_option function [Karel Zak]
+ - refresh mtablock output in expected/ directory [Karel Zak]
+ - remove dependence on helpers/libpreload-time.so [Karel Zak]
+ - simplify devices usage [Karel Zak]
+ - use $AWK based on configure results [Karel Zak]
+ - use relative paths when sourcing files [Mike Frysinger]
+text-utils:
+ - fix the more command compilation against termcap [Karel Zak]
+tools:
+ - add codecheck-config that checks for {HAVE,ENABLE}_ orphans [Karel Zak]
+vipw:
+ - fix permissions (600->400) for edited /etc/[g]shodow files [Karel Zak]
+wall:
+ - fix O_NONBLOCK usage [Alan Curry]
+ - remove deprecated sigsetmask() from wall [Karel Zak]
+ - remove unwanted newlines from wall [Karel Zak]
+whereis:
+ - add lib64 paths [Karel Zak]
+
+- Clean up pagesize/PAGE_SIZE usage. [Karel Zak]
+- also search for __stext in readprofile [Mike Frysinger]
+- check exit status of autotools [Mike Frysinger]
+- clean up realpath.[ch] includes and macros [Karel Zak]
+- execl() should be use NULL not 0 [Karel Zak]
+- manpage typos [LaMont Jones]
+- remove hardcoded package name from some utils [Karel Zak]
+
diff --git a/Documentation/releases/v2.14-ReleaseNotes b/Documentation/releases/v2.14-ReleaseNotes
new file mode 100644
index 000000000..1c92a82b5
--- /dev/null
+++ b/Documentation/releases/v2.14-ReleaseNotes
@@ -0,0 +1,418 @@
+
+Util-linux-ng 2.14 Release Notes (09-Jun-2008)
+==============================================
+
+Release highlights
+------------------
+
+ mount(8) supports new "nofail" mount option.
+
+ mount(8) supports auto-destruction of loop devices.
+
+ losetup(8) supports new command line option "-j" to show status of all
+ loop devices associated with given file.
+
+ losetup(8) supports unlimited number of loop devices.
+
+ losetup(8) supports new command line option "--sizelimit" to set data end.
+
+ ldattach(8) command has been added to util-linux-ng. The ldattach
+ daemon opens the specified device file and attaches the line discipline
+ to it for processing of the sent and/or received data.
+
+ setterm(8) supports new command line option "-blank [force|poke]" for
+ TIOCL_{BLANKED,BLANK}SCREEN.
+
+ tailf(8) has been reimplemented to use inotify.
+
+ tailf(8) supports new command line option "-n" to specifying output lines.
+
+ mkswap(8) supports new command line option "-U" to set UUID explicitly.
+
+ fdisk(8) has been fixed to calculate partition size in 2^N.
+
+ cal(8) supports highlighting an arbitrary date.
+
+ agetty(8) makes username-in-uppercase feature optional (off by default).
+ Users who use uppercase-only terminals need to use the option "-U" now.
+
+ losetup(8), mount(8), umount(8), fdisk(8) and sfdisk(8) support static
+ linking when compiled with --enable-static-programs.
+
+ hwclock(8) supports new command line option "adjfile" to override
+ the default /etc/adjtime.
+
+ scriptreplay(1) command has been re-written from Perl to C.
+
+
+Deprecated
+----------
+
+ The losetup(8) '-s' option (introduced by util-linux-ng-2.13) is deprecated
+ now. This short form of the option '--show' could be in collision with
+ Loop-AES losetup implementation where the same option is used for the loop
+ sizelimit.
+
+
+Fixed security issues
+---------------------
+
+ CVE-2008-1926 - audit log injection via login
+
+ The problem was originally reported for OpenSSH few months
+ ago (CVE-2007-3102). The login(1) is affected by the same
+ bug when built with the option "--with-audit".
+
+
+Stable maintenance releases between v2.13 and v2.14
+---------------------------------------------------
+
+util-linux-ng 2.13.1.1 [22-Apr-2008]
+
+ * ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.13/v2.13.1.1-ReleaseNotes
+ ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.13/v2.13.1.1-ChangeLog
+
+util-linux-ng 2.13.1 [16-Jan-2008]
+
+ * ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.13/v2.13.1-ReleaseNotes
+ ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.13/v2.13.1-ChangeLog
+
+
+ChangeLog between v2.13 and v2.14
+---------------------------------
+
+ For more details see ChangeLog files at:
+ ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.14/
+
+agetty:
+ - cleanup MAXHOSTNAMELEN [Karel Zak]
+ - make username-in-uppercase feature optional (off by default.) [Hamish Coleman]
+ - non-linux support (use pathnames.h) [Karel Zak]
+ - replace termio with termios interface [Samuel Thibault]
+ - ungettextize several debugging messages. [Benno Schulenberg]
+blockdev:
+ - add --getsz to blockdev.8 [Karel Zak]
+ - add missing description about option --report in manpage [Li Zefan]
+ - fix opened file leaving unclosed [lizf]
+ - use lib/blkdev.c, fix --report [Karel Zak]
+build-sys:
+ - add --enable-static-programs [Stepan Kasal, Karel Zak]
+ - add AC_CANONICAL_HOST [Miklos Szeredi]
+ - add VARSUFFIX to UTIL_CHECK_LIB [Karel Zak]
+ - add err.h check [Karel Zak]
+ - add support ionice for Super-H architecture [Karel Zak]
+ - add v2.14 to NEWS [Karel Zak]
+ - autogen.sh reports versions of autotools now [Karel Zak]
+ - build arch(1) during distcheck [Stepan Kasal]
+ - cleanup "x$foo" usage [Karel Zak]
+ - cleanup disk-utils/Makefile.am (use $utils_common) [Karel Zak]
+ - cleanup usage of linux/major.h [Samuel Thibault]
+ - disable syscall fallbacks for non-linux systems [Karel Zak]
+ - do not add -luuid to BLKID_LIBS [Stepan Kasal]
+ - fix missing deps for swapon [Matthias Koenig]
+ - ignore a bunch of generated files, mostly binaries [James Youngman]
+ - nls/locale handling in util-linux-ng general [Mike Frysinger]
+ - non-linux support [Samuel Thibault]
+ - release++ [Karel Zak]
+ - remove errs.h [Karel Zak]
+ - remove files that are no longer delivered from git [LaMont Jones]
+ - remove hardcoded _GNU_SOURCE [Karel Zak]
+ - remove unnecessary check-local target from login-utils/ [Karel Zak]
+ - set AC_PREREQ to 2.60, increment version to 2.14 [Karel Zak]
+ - simplify code around RDEV_LINKS and SETARCH_LINKS [Stepan Kasal]
+ - unify method for checking system calls and fallback handling [Mike Frysinger, Stepan Kasal]
+ - update .gitignore files [Karel Zak]
+ - use dist_man_MANS instead of man_MANS [Stepan Kasal]
+ - use ncursesw (wide version) when possibe [Karel Zak, Mike Frysinger]
+ - use pkg-config to find the libs for static build [Stepan Kasal]
+ - use portable $(VAR =) instead of gmake-specific $(addsuffix) [Stepan Kasal]
+cal:
+ - add description about option -V to manpage [Li Zefan]
+ - add support for highlighting an arbitrary date [Pádraig Brady]
+ - avoid -Wformat warnings [Jim Meyering]
+ - fix weekday alignment for certain locales [Pádraig Brady]
+ - replace errs.h with libc err.h [Karel Zak]
+ - use HAVE_LIB{NCURSES,NCURSESW} instead HAVE_NCURSES [Karel Zak]
+cfdisk:
+ - define portable {DEFAULT,ALTERNATE}_DEVICE [Samuel Thibault]
+ - display cylinders beyond 1024 [Peter Breitenlohner]
+ - slightly increase the size of menu buttons [Benno Schulenberg]
+ - translate partition-type names when they are printed. [Benno Schulenberg]
+chfn:
+ - add pam_end() call and cleanup PAM code [Karel Zak]
+ - fix compiler warnings in selinux stuff [Karel Zak]
+chfn, chsh, login:
+ - collapsing three similar messages into a single one [Benno Schulenberg]
+chsh:
+ - should use pam_end function to terminate the PAM transaction [Yu Zhiguo, Karel Zak]
+column:
+ - replace errs.h with libc err.h [Karel Zak]
+ddate:
+ - 11th, 12th and 13th of month [Volker Schatz]
+docs:
+ - add a note about minix v3 to TODO file [Karel Zak]
+ - add info about .bugfix releases and branches [Karel Zak]
+ - add note about incorrect tag 2.13.1 [Karel Zak]
+ - add note about losetup --sizelimit to ReleaseNotes [Karel Zak]
+ - add note about static linking [Karel Zak]
+ - add v2.14 ReleaseNotes [Karel Zak]
+ - cleanup DEPRECATED file [Karel Zak]
+ - cleanup README.devel, add note about coding style and Signed-off-by [Karel Zak]
+ - fix ChangeLog URL [Pascal Terjan]
+ - fix stable branche name in README.devel [Karel Zak]
+ - mark vipw(1) is deprecated in favor of vipw from shadow-utils [Karel Zak]
+ - refresh TODO list [Karel Zak]
+ - remove date from ReleasNotes [Karel Zak]
+ - tweak a few messages for clarity [Benno Schulenberg]
+ - update AUTHORS file [Karel Zak]
+ - update TODO file [Karel Zak]
+ - update v2.14 ReleaseNotes [Karel Zak]
+ - we already rewrote the scriptreplay script; remove that TODO entry [James Youngman]
+elvtune:
+ - use get_linux_version() [Karel Zak]
+fdformat:
+ - install to /usr/sbin instead to /usr/bin [Karel Zak]
+fdisk:
+ - better fallback for get_random_id() [H. Peter Anvin]
+ - calculate +size{K,M,G} in 2^N [Karel Zak]
+ - cleanup BLK* ioctls usage [Karel Zak]
+ - doesn't recognize the VMware ESX partitions [Karel Zak]
+ - doing useless ioctl when editing an image [Pascal Terjan]
+ - fix building for AVR32 and CRIS [Imre Kaloz]
+ - fix typo [Karel Zak]
+ - message tweak [Karel Zak]
+ - non-linux support (MAXPATHLEN) [Karel Zak]
+ - non-linux support (use standard uintxy_t instead __uxy) [Samuel Thibault]
+ - use more readable "GPT" name rather than "EFI GPT" [Robert Millan]
+ - use swab macros from bitops.h [Karel Zak]
+flock:
+ - typo in man page [A. Costa]
+fsck.cramfs:
+ - clean up gcc warnings [Randy Dunlap]
+fsck.minix:
+ - correct the error message given when we can't open the device [James Youngman]
+ - reset the terminal state if we are killed by a fatal signal [James Youngman]
+getopt:
+ - fix path to examples in getopt.1 [Karel Zak]
+ - install example scripts as SCRIPTS, not DATA [Peter Breitenlohner]
+hwclock:
+ - add --adjfile=path option [Karel Zak]
+ - check for ENODEV [David Woodhouse]
+ - do not create a zero adjfile [Alain Guibert]
+ - fix --rtc option [Matthias Koenig, Karel Zak]
+include:
+ - <stdint.h> provides everything [Samuel Thibault]
+ - add bitops.h with swab{16,32,64} macros [Karel Zak]
+ - add mount paths to pathnames.h [Karel Zak]
+ - cleanup pathnames.h [Karel Zak]
+ionice:
+ - add a note about permissions to ionice.1 [Karel Zak]
+ - update man page to reflect IDLE class change in 2.6.25 [Karel Zak]
+ipcs:
+ - add information about POSIX compatibility to ipcs.1 [Karel Zak]
+kill:
+ - man page is missing a description of "kill -0" [Karel Zak]
+ldattach:
+ - add NLS support [Karel Zak]
+ - new command [Tilman Schmidt]
+ - use glibc termios [Karel Zak]
+lib:
+ - add blkdev.{c,h} [Stefan Krah, Karel Zak]
+ - add linux_version.{c,h} [Stefan Krah]
+login:
+ - audit log injection attack via login [Steve Grubb]
+ - fix a small memory leak and remove unnecessary zeroing [Karel Zak]
+ - login segfaults on EOF (rh#298461) [Karel Zak]
+ - replace termio with termios interface [Samuel Thibault]
+ - rewrite is_local() to remove limits on line length [James Youngman]
+login-utils:
+ - cleanup strlen() and fgets() usage [James Youngman]
+losetup:
+ - add --associated option [Karel Zak]
+ - add --sizelimit option [Shachar Shemesh]
+ - canonicalize loopfile name [Karel Zak, Matthias Koenig]
+ - clean up gcc warnings [Randy Dunlap]
+ - fix errno usage [Karel Zak]
+ - fix typo in losetup.8 [Karel Zak]
+ - mark the option -s as deprecated [Karel Zak]
+ - remove duplicate xstrdup() and error() [Karel Zak]
+ - split help message into two smaller parts [Benno Schulenberg]
+ - support unlimited number of loops [Karel Zak]
+ - use standard uintxy_t types (struct loop_info64) [Samuel Thibault]
+mesg:
+ - replace errs.h with libc err.h [Karel Zak]
+mkfs.cramfs:
+ - clean up gcc warnings [Randy Dunlap, Karel Zak]
+ - remove unused header file [lizf]
+ - switch on localization. [Benno Schulenberg]
+mkfs.minix:
+ - add sectorsize check [Matthias Koenig]
+ - clean up gcc warnings [Karel Zak]
+ - clean up gcc warnings [Randy Dunlap]
+ - device size cleanup [Matthias Koenig]
+mkswap:
+ - BLKGETSIZE cleanup [Karel Zak]
+ - cleanup kB vs. KiB usage in error messages [Karel Zak]
+ - fix compiler warnings [Karel Zak]
+ - linux_version() code consolidation [Karel Zak]
+ - possible to crash with SELinux relabeling support [KaiGai Kohei]
+ - set UUID for swap space (add -U option) [Martin Schulze]
+ - set errno=0 in write_all() [Karel Zak]
+ - when writing the signature page, handle EINTR returns [Karel Zak]
+more:
+ - cleanup gcc warnings [Randy Dunlap]
+ - non-linux support [Samuel Thibault]
+ - replace CBAUD with cfgetispeed() [Samuel Thibault]
+ - use HAVE_WIDECHAR instead ENABLE_WIDECHAR [Karel Zak]
+mount:
+ - "can't create lock file" message sometimes means failure, sometimes not [Mark McLoughlin]
+ - "nofail" mount option [Matthias Koenig, Karel Zak]
+ - -L|-U segfault when label or uuid doesn't exist [Karel Zak]
+ - add more details to the --version output [Karel Zak]
+ - add support for sizelimit= mount option (for loop mounts) [Shachar Shemesh]
+ - allow auto-destruction of loop devices [Bernardo Innocenti]
+ - chain of symlinks to fstab causes use of pointer after free [Norbert Buchmuller]
+ - clean up gcc warnings (mount_mntent.c) [Randy Dunlap]
+ - clean up global variables [Karel Zak]
+ - cleanup "none" fstype usage [Karel Zak]
+ - cleanup KERNEL_VERSION, remove my_dev_t.h [Karel Zak]
+ - cleanup canonicalize() usage [Karel Zak]
+ - cleanup error() and die() [Karel Zak]
+ - cleanup usage of _PATH_* [Karel Zak]
+ - doesn't drop privileges properly when calling helpers [Ludwig Nussel]
+ - don't call canonicalize(SPEC) for cifs, smbfs and nfs [Karel Zak]
+ - don't canonicalize LABEL= or UUID= spec [Karel Zak]
+ - drop the part always true from a while condition [Pascal Terjan]
+ - fix a small typo in mount.8 [Christophe Blaess]
+ - fix fd leak [Matthias Koenig]
+ - fix typo in mount.8 [Karel Zak]
+ - hint about helper program if device doesn't exist [Karel Zak]
+ - improve chmod & chown usage and clean up gcc warnings (fstab.c) [Karel Zak]
+ - improve error message when helper program not present [LaMont Jones]
+ - prevent loop mounting the same file twice [Karel Zak, Matthias Koenig]
+ - remount doesn't care about loop= [Karel Zak]
+ - remove MS_{REPLACE,AFTER,BEFORE,OVER} [Karel Zak]
+ - remove built-in support for background mounts [Karel Zak]
+ - remove redundant fflush [Karel Zak]
+ - remove set_proc_name() [Karel Zak]
+ - remove useless if-before-my_free, define my_free as a macro [Karel Zak]
+ - use MNTTYPE_SWAP (from mntent.h) [Karel Zak]
+ - use atexit() rather than (*at_die)() [Karel Zak]
+ - use blkdev_get_size() [Karel Zak]
+ - use canonicalize in getfs_by_devname [Karel Zak]
+namei:
+ - add to identify FIFO (named pipe) and update manpage [Li Zefan]
+ - cleanup tailing white-spaces [Karel Zak]
+ - non-linux support (get_current_dir_name() and PATH_MAX) [Karel Zak, Samuel Thibault]
+partx:
+ - fix compiler warnings [Karel Zak]
+ - use swab macros from bitops.h [Karel Zak]
+pg:
+ - fix segfault on search [Rajeev V. Pillai]
+po:
+ - add eu.po (from translationproject.org) [Mikel Olasagasti]
+ - add pl.po (from translationproject.org) [Andrzej Krzysztofowicz]
+ - fix typo in de.po [Karel Zak]
+ - merge changes [Karel Zak]
+ - update POTFILES.in [Karel Zak]
+ - update ca.po (from translationproject.org) [Josep Puigdemont]
+ - update cs.po (from translationproject.org) [Petr Pisar]
+ - update da.po (from translationproject.org) [Claus Hindsgaul]
+ - update de.po (from translationproject.org) [Michael Piefel]
+ - update es.po (from translationproject.org) [Santiago Vila Doncel]
+ - update et.po (from translationproject.org) [Meelis Roos]
+ - update fi.po (from translationproject.org) [Lauri Nurmi]
+ - update fr.po (from translationproject.org) [Michel Robitaille]
+ - update hu.po (from translationproject.org) [Gabor Kelemen]
+ - update id.po (from translationproject.org) [Arif E. Nugroho]
+ - update it.po (from translationproject.org) [Marco Colombo]
+ - update ja.po (from translationproject.org) [Daisuke Yamashita]
+ - update nl.po (from translationproject.org) [Benno Schulenberg]
+ - update po files [Karel Zak]
+ - update pt_BR.po (from translationproject.org) [Rodrigo Stulzer Lopes]
+ - update ru.po (from translationproject.org) [Pavel Maryanov]
+ - update sl.po (from translationproject.org) [Simon Mihevc]
+ - update sv.po (from translationproject.org) [Daniel Nylander]
+ - update tr.po (from translationproject.org) [Nilgün Belma Bugüner]
+ - update uk.po (from translationproject.org) [Maxim V. Dziumanenko]
+ - update vi.po (from translationproject.org) [Clytie Siddall]
+rename:
+ - add description about option -V to manpage [Li Zefan]
+ - remove useless variable [Li Zefan]
+renice:
+ - detect errors in arguments, add -v, -h and long options [LaMont Jones, Karel Zak]
+rev:
+ - use warn() in errs.h [Li Zefan]
+rtcwake:
+ - fix UTC time usage [David Brownell]
+ - fix the default mode to "standby" [Paulius Zaleckas]
+ - fix typo [Karel Zak]
+ - fix typo SATE -> STATE [Mike Frysinger]
+ - fix verbose message [Karel Zak]
+ - include libgen.h for basename prototype [Mike Frysinger]
+ - misc cleanups [David Brownell]
+script:
+ - cleanup gcc warnings [Randy Dunlap]
+ - cleanup includes [Samuel Thibault]
+ - dies on SIGWINCH [Karel Zak]
+ - read returns a size_t [James Youngman]
+scriptreplay:
+ - gettextize a forgotten messages [Karel Zak]
+ - rewrite in C [Karel Zak, James Youngman]
+setarch:
+ - add fallback for linux/personality [Karel Zak]
+ - add long options to setarch and update manpage [Karel Zak, Li Zefan]
+ - add missing alpha subarchs [Oliver Falk]
+ - adding groff symlinks to setarch manual page [Arkadiusz Miskiewicz]
+ - fix compiler warning [LaMont Jones]
+ - generate groff links in a better way [Karel Zak]
+ - provide backwards compatibility [Dmitry V. Levin]
+ - tweak the help text, and gettextize a forgotten message [Benno Schulenberg]
+setterm:
+ - add -blan [force|poke] options for TIOCL_{BLANKED,BLANK}SCREEN [Samuel Thibault, Karel Zak]
+ - dump by TIOCLINUX is deprecated since linux 1.1.92. [Karel Zak]
+ - opened file leaving unclosed [Karel Zak, lizf]
+ - remove unnecessaty ifndef TCGETS [Samuel Thibault]
+sfdisk:
+ - allow partitioning drives of over 2^31 sectors. [Kunihiko IMAI]
+ - cleanup 83 gcc warnings [Randy Dunlap]
+ - opened files leaving unclosed [Karel Zak, Li Zefan]
+ - remove unnecessary linux/unistd.h [Samuel Thibault]
+ - use get_linux_version() [Karel Zak]
+shutdown:
+ - use _PATH_MOUNTED instead of _PATH_MTAB [Stepan Kasal]
+swapon:
+ - Reinitialize software suspend areas to avoid future corruption. [Kees Cook, Karel Zak]
+ - add sundries.h [Karel Zak]
+ - clean up gcc warnings [Randy Dunlap]
+ - cleanup usage output [Karel Zak]
+ - cleanup usage() [Karel Zak]
+ - fix swsuspend detection [Karel Zak]
+ - fix typo in usage() [Karel Zak]
+ - readjust the usage summaries [Benno Schulenberg]
+ - remove unnecessary myrealpath() call [Karel Zak]
+sys-utils:
+ - correct setarch.8 manpage link creation [Frédéric Bothamy]
+tailf:
+ - add option -n to specifying output lines [Li Zefan]
+ - clean up gcc warnings & fix use of errno [Karel Zak]
+ - inotify based reimplementation [Karel Zak]
+ - non-linux support [Samuel Thibault]
+ - opened file leaving unclosed [lizf]
+ - replace errs.h with libc err.h [Karel Zak]
+tests:
+ - add "sort" to cramfs test [Karel Zak]
+ - add test for include/pathnames.h [Karel Zak]
+ - add ts-mount-noncanonical [Karel Zak]
+ - exactly define a time format in ls -l output [Karel Zak]
+ - fix blkid cache usage [Karel Zak]
+ - move test_bkdev to lib/ [Karel Zak]
+ - redirect libblkid cache to BLKID_FILE [Karel Zak]
+ - rename test_sysinfo, remove tailing white-spaces [Karel Zak]
+ - use losetup -s [Karel Zak]
+umount:
+ - add hint about lsof & fuser [Karel Zak]
+ - don't print duplicate error messages [Karel Zak]
+ - use atexit() rather than (*at_die)() [Karel Zak]
+wall:
+ - cleanup MAXHOSTNAMELEN [Karel Zak]
diff --git a/Documentation/releases/v2.15-ReleaseNotes b/Documentation/releases/v2.15-ReleaseNotes
new file mode 100644
index 000000000..56b10b654
--- /dev/null
+++ b/Documentation/releases/v2.15-ReleaseNotes
@@ -0,0 +1,675 @@
+
+Util-linux-ng 2.15 Release Notes (05-May-2009)
+==============================================
+
+Release highlights
+------------------
+
+mkswap(8):
+ - mkswap like many others mkfs-like utils ERASES THE FIRST BLOCKS on
+ the device to remove old on-disk filesystems. mkswap refuses to
+ erase the first block on a device with a disk label (SUN, BSD, ...)
+ or on whole disk (e.g. /dev/sda).
+
+ - DOES NOT SUPPORT v0 SWAP SPACE any more. The kernel has not
+ supported v0 swap space format since 2.5.22. The new version v1 is
+ supported since 2.1.117.
+
+swapon(8):
+ - supports new command line option "-f/--fixpg" to reinitialize the
+ swap space with a wrong pagesize. As swap format depends on the pagesize
+ being used, it may happen that the pagesize of the swap space and the
+ current pagesize differ.
+
+login(1):
+ - requires /etc/pam.d/remote when compiled with PAM support and
+ executed with "-h <hostname>" option. The "-h" option is used by other
+ servers (i.e., telnetd(8)) to pass the name of the remote host to login.
+
+cal(1):
+ - determines the first day of week from the locale.
+
+libblkid, blkid(8) and findfs(8):
+ The libblkid library has been moved from e2fsprogs to util-linux-ng. The
+ library has been extended and now includes:
+
+ - low-level probing API that is useful for example for udev rules
+ (cmdline: blkid -p -o udev <device>)
+
+ - very high-level API that provides portable interface for LABELs and
+ UUIDs evaluation on 2.4, 2.6 and udev-based system. It's recommended
+ to use "blkid -L|-U" in your scripts rather than directly read
+ /dev/disk/by-* symlinks.
+
+ - the old ABI and API is backwardly compatible with the current version
+ from e2fsprogs.
+
+ All utils (mount, swapon, fsck, ...) in the package is possible to link
+ against this new library, or the old version from e2fsprogs, or
+ libvolume_id from udev package.
+
+ The default is still libblkid from e2fsprogs. The new library could be
+ enabled by "--with-fsprobe=builtin" configure option.
+
+ The libvolume_id from udev and vol_id command is deprecated now.
+
+fsck(8):
+ - has been moved to from e2fsprogs to util-linux-ng.
+
+dmesg(1)
+ - supports new command line option "-r" to print the raw message buffer
+ (i.e. don’t strip the log level prefixes).
+
+flock(1):
+ - allows lock directory
+
+fsck.cramfs:
+ - automatically detects the image endianness, and can work on images of
+ either endianness.
+
+mkfs.cramfs:
+ - now accepts a new optional parameter (-N) that allows creating
+ the cramfs image in either endianness.
+
+renice(1):
+ - supports new command line option "-n" for compatibility with POSIX
+
+hwclock(8)
+ - supports new command line option "--systz" to reset the System Time
+ based on the current timezone. Since the system clock time is already
+ set from the hardware clock by the kernel (when compiled with
+ CONFIG_RTC_HCTOSYS), there's no particular need to read the hardware
+ clock again.
+
+ionice(1):
+ - supports new command line option "-t" option to ignore failure to set
+ requested priority. This might be of use in case something (selinux,
+ old kernel, etc.) does not allow the requested scheduling priority
+ to be set.
+
+ - the command line option "-p" handles multiple PIDs now.
+
+losetup(8):
+ - detaches more devices by "-d <loop> [<loop> ..]"
+
+ipcmk(1):
+ - this NEW COMMAND allows to create ad-hoc IPC resources.
+
+lscpu(1):
+ - this NEW COMMAND gathers CPU architecture information like number
+ of CPUs, threads, cores, sock, NUMA nodes, information about CPU
+ caches, information about hypervisor and virtualization support,
+ ..etc. and prints it in human-readable or parse-able format.
+
+namei(1):
+ - supports new command line options --owners, --long and --vertical
+ to print ls(1)-like output.
+
+
+Stable maintenance releases between v2.14 and v2.15
+---------------------------------------------------
+
+util-linux-ng 2.14.1 [10-Aug-2008]
+
+ * ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.14/v2.14.1-ReleaseNotes
+ ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.14/v2.14.1-ChangeLog
+
+util-linux-ng 2.14.2 [09-Feb-2009]
+
+ * ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.14/v2.14.2-ReleaseNotes
+ ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.14/v2.14.2-ChangeLog
+
+
+ChangeLog between v2.14 and v2.15
+---------------------------------
+
+ For more details see ChangeLog files at:
+ ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.15/
+
+addpart:
+ - 512-byte sectors in code, bytes in man-page [Karel Zak]
+agetty:
+ - IUCLC and OLCUC are Linux extensions [Aurelien Jarno]
+ - check for termios.c_line struct member by autoconf [Karel Zak]
+ - sys/types.h and time.h are included more than once [Karel Zak]
+blkid:
+ - Give a priority bonus to "leaf" devicemapper devices [Theodore Ts'o]
+ - LSI MegaRAID [Karel Zak]
+ - NVIDIA raid [Karel Zak]
+ - Optimize devicemapper support [Theodore Ts'o]
+ - Promise raid [Karel Zak]
+ - Refuse to create a device structure for a non-existent device [Theodore Ts'o]
+ - Unexport the private symbol blkid_devdirs [Theodore Ts'o]
+ - add to reiser [Karel Zak]
+ - add -L -U options (evaluation API) [root]
+ - add -p and low-probe mode to blkid binary [Karel Zak]
+ - add Christoph's note about libdisk to TODO [Karel Zak]
+ - add DDF raid [Karel Zak]
+ - add DEBUG_LOWPROBE, cleanup a little debug stuff [Karel Zak]
+ - add GFS and GFS2 [Karel Zak]
+ - add GFS2 UUID support [Karel Zak]
+ - add GFS2 reg. test [Karel Zak]
+ - add HFS and HFS+ [Karel Zak]
+ - add HPFS [Karel Zak]
+ - add HTFS [Karel Zak]
+ - add ISW raid [Karel Zak]
+ - add JMicron RAID [Karel Zak]
+ - add LUKS support [Karel Zak]
+ - add LVM2 support and a fix _sprintf_uuid() bug [Karel Zak]
+ - add Linux RAID [Karel Zak]
+ - add Silicon Image Medlay RAID [Karel Zak]
+ - add TODO file [Karel Zak]
+ - add TODO hint about DM devnames in sysfs [Karel Zak]
+ - add TODO hint about blkid_parse_tag_string() [Karel Zak]
+ - add TODO note about blkid_evaluate_spec_to_buffer() [Karel Zak]
+ - add UDF support [Karel Zak]
+ - add UFS [Karel Zak]
+ - add VFAT support [Karel Zak]
+ - add VIA RAID [Karel Zak]
+ - add ZSF support [Andreas Dilger]
+ - add ZSF test [Karel Zak]
+ - add __attribute__ ((format)) [Karel Zak]
+ - add a note to TODO list [Karel Zak]
+ - add adaptec raid [Karel Zak]
+ - add basic configure.ac stuff and blkid.pc [Karel Zak]
+ - add blkid_do_safeprobe() [Karel Zak]
+ - add blkid_evaluate_spec() [Karel Zak]
+ - add blkid_probe_get_sb() macro [Karel Zak]
+ - add btrfs support [Karel Zak]
+ - add cmdline interface for blkid_probe_filter_usage() [Karel Zak]
+ - add ddf raid regression test [Karel Zak]
+ - add ext{2,3,4,4devel} support [Karel Zak]
+ - add fallback to ext4 for 2.6.29+ kernels if ext2 is not present [Theodore Ts'o]
+ - add findfs(8) [Karel Zak]
+ - add highpoint{37x,45x} RAIDs [Karel Zak]
+ - add hpfs regression test [Karel Zak]
+ - add iso9600 [Karel Zak]
+ - add jfs [Karel Zak]
+ - add low level probing API [Karel Zak]
+ - add lvm1 [Karel Zak]
+ - add lvm2 reg.test [Karel Zak]
+ - add minix [Karel Zak]
+ - add missing blkidP.h to Makefile.am [Karel Zak]
+ - add missing hfs.c [Karel Zak]
+ - add netware (NSS) [Karel Zak]
+ - add netware regression test [Karel Zak]
+ - add new options to blkid.8 and help output [Karel Zak]
+ - add new requirements to TODO list [Karel Zak]
+ - add ocfs and oracleasm [Karel Zak]
+ - add ocfs2 version [Karel Zak]
+ - add proper copying info [Karel Zak]
+ - add reg.tests for HFS and HFS+ [Karel Zak]
+ - add romfs [Karel Zak]
+ - add squashfs [Karel Zak]
+ - add support for /etc/blkid.conf file [Karel Zak]
+ - add sysv and xenix [Karel Zak]
+ - add tst_types.c to Makefile.am [Karel Zak]
+ - add udev ID_FS_* output to blkid binary [Karel Zak]
+ - add udev string encoding routines [Karel Zak]
+ - add uuid and version support to gfs2 [Karel Zak]
+ - add version and probe FSInfo [Karel Zak]
+ - add version support to LVM2 [Karel Zak]
+ - add vol_id call to blkid regression test [Karel Zak]
+ - add vxfs [Karel Zak]
+ - add xfs [Karel Zak]
+ - blkdev size fallback [Karel Zak]
+ - blkid.static make target [Karel Zak]
+ - blkid_evaluate_spec() shouldn't ignore $BLKID_FILE [Karel Zak]
+ - check calloc() return value [Karel Zak]
+ - check idinfo[] index [Karel Zak]
+ - clean up man pages [Karel Zak]
+ - cleanup _LOGPROBE debug messages [Karel Zak]
+ - cleanup starts of probing files [Karel Zak]
+ - compile TEST_PROGRAMs [Karel Zak]
+ - correctly initialize magics[] arrays [Karel Zak]
+ - create basic directories [Karel Zak]
+ - don't dereference NULL upon slashless module dependency line [Jim Meyering]
+ - fix ..._strncpy_uuid [Karel Zak]
+ - fix a syntax nit [Karel Zak]
+ - fix blkid_do_probe() [Karel Zak]
+ - fix blkid_probe_sprintf_version() usage [Karel Zak]
+ - fix blkid_safe_string() [Karel Zak]
+ - fix exit codes in blkid(8) [Scott James Remnant]
+ - fix ext2 SEC_TYPE [Karel Zak]
+ - fix file descriptor leak when checking for a module [Karel Zak]
+ - fix gcc warning in blkid_get_cache_filename() [Karel Zak]
+ - fix hedeader in ntfs.c [Karel Zak]
+ - fix highpoint37x offset [Karel Zak]
+ - fix low-probe mode return codes [Karel Zak]
+ - fix non-udev low-probe mode output [Karel Zak]
+ - fix ocfs2 detection [Karel Zak]
+ - fix typo (syntax error) [Karel Zak]
+ - fix udev output [Karel Zak]
+ - fix xfs label [Karel Zak]
+ - hfs - do not set UUID for emtpy finder info [Kay Sievers]
+ - hfs - use proper native UUID format [Kay Sievers]
+ - improve ddf detection [Karel Zak]
+ - linux_raid - fix logic for volumes with size == 0 [Karel Zak]
+ - merge libblkid code from e2fsprogs/lib/blkid [Karel Zak]
+ - minor changes to library build system [Karel Zak]
+ - netware SB has to be packed [Karel Zak]
+ - optimize for string UUIDs [Karel Zak]
+ - re-order list of filesystems [Karel Zak]
+ - recognize ext3 with test_fs set as ext3 [Eric Sandeen]
+ - recognize ext4(dev) without journal [Eric Sandeen]
+ - refresh TODO file [Karel Zak]
+ - remove blkid_types.h [Karel Zak]
+ - remove unnecessary debug message [Karel Zak]
+ - remove unnecessary ifdef __cplusplus [Karel Zak]
+ - remove unused stuff from Makefile [Karel Zak]
+ - remove useless if-before-free tests [Jim Meyering]
+ - remove whole-disk entries from cache when partitions are found [Eric Sandeen]
+ - rename blkid_debug_init to blkid_init_debug [Karel Zak]
+ - rename blkid_evaluate_spec to blkid_evaluate_tag [Karel Zak]
+ - set size for non-blkdevs, add blkid_probe_strcpy_uuid() [Karel Zak]
+ - split SONAME and LIBBLKID_VERSION [Karel Zak]
+ - start to use ABI versioning [Karel Zak]
+ - support detection of multiple signatures [Karel Zak]
+ - support via raid version 2 [Sven Jost]
+ - update TODO [Karel Zak]
+ - update gitignore [Karel Zak]
+ - use "char **" rather than "unsigned char **" [Karel Zak]
+ - use /dev/mapper/<name> rather than /dev/dm-<N> [Karel Zak]
+ - use /sys/block/dm-<N>/dm/name [Karel Zak]
+ - use Requires.private and fix the include directory [Karel Zak]
+ - use blkid_probe_strcpy_uuid() for luks [Karel Zak]
+ - use posix uint32_t in ocfs superblock [Karel Zak]
+ - use posix uintXX_t in lvm code [Karel Zak]
+ - use sizeof() for hfs uuid [Karel Zak]
+ - vfat - fix declaration [Kay Sievers]
+blkis:
+ - fix detection of ext4dev as ext4 [Eric Sandeen]
+blockdev:
+ - add note that the StartSec is in 512-byte sectors [Karel Zak]
+ - fix possible buffer overflow [Karel Zak]
+build-sys:
+ - add $usrlibexecdir and fix paths for [/usr]/lib64 [Karel Zak]
+ - add --disable-mount [Alon Bar-Lev]
+ - add --with=fsprobe=builtin [Karel Zak]
+ - add -luuid to BLKID_LIBS [Karel Zak]
+ - add fsck binary to .gitignore [Karel Zak]
+ - add missing AC_C_BIGENDIAN [Karel Zak]
+ - add missing files to include/Makefile.am [Karel Zak]
+ - add temporary libtool *.m4 stuff [Karel Zak]
+ - cleanup --with-fsprobe help string [Karel Zak]
+ - cleanup sys-utils/Makefile.am [Karel Zak]
+ - define libdir [Karel Zak]
+ - fix bugs detected by "make distcheck" [Karel Zak]
+ - libtoolize by libtool-2 [Karel Zak]
+ - libtoolize mount/Makefile.am [Karel Zak]
+ - move pivot_root(8) to sys-utils [Karel Zak]
+ - refresh generated libtool-2 stuff [Karel Zak]
+ - release++ (v2.15-rc1) [Karel Zak]
+ - release++ (v2.15-rc2) [Karel Zak]
+ - remove use of devmapper library [Karel Zak]
+ - tgets is not in ncurses but in tinfo [Arkadiusz Miskiewicz]
+ - use pkg-config for blkid and volume_id [Karel Zak]
+cal:
+ - determine the first day of week from the locale [Pádraig Brady]
+ - remove gcc-ism from nl_langinfo() call [Karel Zak]
+cfdisk:
+ - accept yes/no as fallback [Matthias Koenig]
+ - fix "cannot seek on disk drive" bug [Karel Zak]
+chfn:
+ - several strings without gettext calls [Karel Zak]
+chrt:
+ - add NLS support, clean error messages and return codes [Karel Zak]
+ - add a comment about non POSIX 1003.1b attributes in chrt.1 [Aurelien Jarno]
+ - output buglet when reporting scheduling class [Karel Zak]
+ - support CFS SCHED_IDLE priority and document it [Martin Steigerwald]
+disk-utils:
+ - clean up code, use blkdev_* functions [Samuel Thibault]
+ - include fcntl.h directly (mkfs.cramfs, raw) [maximilian attems]
+ - s/MOUNTED/_PATH_MOUNTED/ [maximilian attems]
+dmesg:
+ - Add -r (raw) option. [Adam Jackson]
+ - nuke old glibc 5 support [maximilian attems]
+docs:
+ - TODO: add request to use nl_langinfo() [Karel Zak]
+ - TODO update [Karel Zak]
+ - add a note about /proc/sys/kernel/random/uuid [Karel Zak]
+ - add a note about kpartx to TODO [Karel Zak]
+ - add entry about /proc/partitions parsing [Karel Zak]
+ - add feature-requests from RH bugzilla to TODO list [Karel Zak]
+ - add suggestion about TZ=UTC to TODO file [Karel Zak]
+ - fix typo, cal(8) --> cal(1) [Karel Zak]
+ - update AUTHORS file [Karel Zak]
+ - update TODO list [Karel Zak]
+ - update v2.15 ReleaseNotes [Karel Zak]
+elvtune:
+ - add NLS support [Pedro Ribeiro]
+fdisk:
+ - (and partx) remove BLKGETLASTSECT [Karel Zak]
+ - add 0xaf HFS / HFS partition type [Karel Zak]
+ - add some missing includes [Matthias Koenig]
+ - cannot create partition with starting beyond 1 TB [Karel Zak]
+ - cleanup _PATH_DEV_* macros [Karel Zak]
+ - doesn't handle large (4KiB) sectors properly [Eric Sandeen]
+ - don't check for GPT when asked for disk size only [Karel Zak]
+ - don't use get_linux_version() for non-linux [Samuel Thibault]
+ - exit(3) needs stdlib.h include [maximilian attems]
+ - fix man page typo [Karel Zak]
+ - fix max. ptname [Karel Zak]
+ - non-linux support (BLK* and HDIO_*) [Samuel Thibault]
+ - read /proc/partitions in more robust way [Karel Zak]
+ - remove obsolete information from man page [Karel Zak]
+ - remove unnecessary gettext call [Karel Zak]
+ - rename ENABLE_CMDTAGQ macro [Karel Zak]
+ - round reported sizes rather than truncate [Karel Zak]
+ - several strings without gettext calls [Pedro Ribeiro]
+ - suggest partprobe(8) and kpartx(8) when BLKRRPART failed [Vincent Deffontaines, Karel Zak]
+ - support "-b 4096" option [Karel Zak]
+ - support +cylinder notation [Karel Zak]
+ - use real sector size in verify() and warn_cylinders() [Karel Zak]
+ - warn users about 2.2TB dos partition limit [Karel Zak]
+flock:
+ - Allow lock directory [Alexey Gladkov]
+ - add NLS support, remove tailing white-spaces [Karel Zak]
+ - fix printf format error in usage() [Karel Zak]
+ - segfaults when file name is not given [Karel Zak]
+fsck:
+ - cosmetic changes (NLS, paths, ...) [Karel Zak]
+ - link with generic fsprobe wrapper [Karel Zak]
+ - move fsck from e2fsprogs to util-linux-ng [Karel Zak]
+ - remove  from warning message [Karel Zak]
+ - remove useless if-before-free tests [Karel Zak]
+fsck.cramfs:
+ - add NLS support [Pedro Ribeiro]
+ - fix compiler warning [Karel Zak]
+ - segfault with INCLUDE_FS_TESTS and no -x option [Karel Zak]
+fsck.minix:
+ - add regression test [Karel Zak]
+getopt:
+ - remove unnecessary ifdefs [Karel Zak]
+ - remove useless if-before-free tests [Karel Zak]
+hwclock:
+ - add --systz option to set system clock from itself [Scott James Remnant]
+ - always reads hardware clock [Karel Zak]
+ - cleanup help output and man page [Karel Zak]
+ - clock.h is included more than once [Karel Zak]
+ - delay loop in set_hardware_clock_exact [Kalev Soikonen]
+ - don't open /dev/rtc repeatedly [Karel Zak]
+ - omit warning about drift if --noadjfile given [Matthias Koenig]
+ - read_hardware_clock_rtc() need to return error codes [Karel Zak]
+ - remove "cli" and "sti" from i386 CMOS code [Karel Zak]
+ - remove x86_64-specific bogon [David Brownell]
+ - several strings without gettext calls [Pedro Ribeiro]
+ - unshadow a diagnostic printf [Kalev Soikonen]
+ - use carefully synchronize_to_clock_tick() return codes [Karel Zak]
+ - use time limit for synchronization busy wait [Karel Zak]
+include:
+ - add missing files to Makefile.am [Karel Zak]
+ - bitops - explicitly include endian.h [Karel Zak]
+ - move swapheader.h to include [Matthias Koenig]
+ - swapheader.h is missing in Makefile.am [Karel Zak]
+ - use __BYTE_ORDER rather than AC specific WORDS_BIGENDIAN [Karel Zak]
+ionice:
+ - Extend the man page to explain the "none" class and cpu-nice inheritance [Jakob Unterwurzacher]
+ - a little cleanup of "none" description [Karel Zak]
+ - add -t option [Lubomir Kundrak]
+ - add strtol() checks, cleanup usage text and man page [Karel Zak]
+ - change Jens Axboe's email [Karel Zak]
+ - cleanup error messages, add NLS support [Karel Zak]
+ - cleanup man page [Karel Zak]
+ - fix typo in manpage [Karel Zak]
+ - let -p handle multiple PIDs [Stephan Maka]
+ipcmk:
+ - add NLS support [Karel Zak]
+ - fix error codes and error messages [Karel Zak]
+ - new command [Hayden James]
+ipcs:
+ - adjust some field positions and widths for correct alignment [Benno Schulenberg]
+ - fix exit codes, remove tailing white-spaces [Karel Zak]
+ - ungettextize the spacing of the table headers [Benno Schulenberg]
+ldattach:
+ - don't compile for non-linux systems [Samuel Thibault]
+lib:
+ - add __BYTE_ORDER to md5.c [Karel Zak]
+ - add is_whole_disk() from fdisk code [Karel Zak]
+ - add pttype.c for PT types detection [Karel Zak]
+ - add test_ismounted for regression test [Karel Zak]
+ - blkdev.c clean up, non-linux support [Samuel Thibault]
+ - do not include <linux/fd.h> in ismounted.c [Aurelien Jarno]
+ - fix fsprobe wrapper (const char * is nonsense) [Karel Zak]
+ - fsprobe - fix gcc warning [Karel Zak]
+ - gcc warning in fix fsprobe [Karel Zak]
+ - make open_device() optional in fsprobe.c [Karel Zak]
+ - pttype add BSD subpartitions support [Karel Zak]
+ - pttype fix DOS detection [Karel Zak]
+ - pttype - extend the API to work with file descriptors [Karel Zak]
+ - wholedisk - extend API, add test program [Karel Zak]
+ - pttype - fix typo [Karel Zak]
+logger:
+ - several strings without gettext calls [Pedro Ribeiro]
+login:
+ - cleanup includes [Karel Zak]
+ - fix compiler warning (int32 time() arg) [Karel Zak]
+ - fix warning "dereferencing type-punned pointer will break strict-aliasing rules" [Karel Zak]
+ - remove "switching users" nonsense from man page [Karel Zak]
+ - use "remote" as a PAM service name for "login -h" [Karel Zak]
+ - use open(2) rather then access(2) for $HOME/.hushlogin [Karel Zak]
+login-utils:
+ - several strings without gettext calls [Pedro Ribeiro]
+losetup:
+ - add warning about read-only mode [Karel Zak]
+ - clean up code around LO_FLAGS_AUTOCLEAR [Karel Zak]
+ - cleanup man page [Karel Zak]
+ - detach more devices by "-d <loop> [<loop> ..]" [Karel Zak]
+ - looplist_* refactoring, remove scandir() [Karel Zak]
+ - missing EBUSY error hint message [Karel Zak]
+ - mount endless loop hang [Karel Zak]
+ - remove dependence on minor numbers [Karel Zak]
+ - several strings without gettext strings [Pedro Ribeiro]
+ - try to set up loop readonly if EACCES [Matthias Koenig]
+lscpu:
+ - --sysroot option and stable cache output [Cai Qian]
+ - add Hypervisor detection [Karel Zak, Ky Srinivasan]
+ - new command [Cai Qian, Karel Zak]
+ - regression tests [Cai Qian]
+ - return EXIT_SUCCESS at the end [Matthias Koenig]
+misc-utils:
+ - write include signal.h directly [maximilian attems]
+mkfs.cramfs:
+ - add endianness support to cramfs tools [Roy Peled]
+ - lower memory requirements for layouts with duplicate files [Roy Peled]
+ - several strings without gettext calls [Pedro Ribeiro]
+mkfs.minix:
+ - (and fsck) rename bitops.h [Karel Zak]
+ - add regression test [Karel Zak]
+ - fix size detection [Matthias Koenig]
+ - remove local implementation of {set,clr}bit [Karel Zak]
+mkswap:
+ - clean up man page [Karel Zak]
+ - handle 2^32 pages [Hugh Dickins]
+ - non-linux support [Samuel Thibault]
+ - remove v0 swap space support [Karel Zak]
+ - zap bootbits [Karel Zak]
+more:
+ - dont use a.out.h [Mike Frysinger]
+ - minor fixes to magic() [James Youngman]
+mount:
+ - Add strictatime support [Matthew Garrett]
+ - add docs about utf8=0 for vfat [Karel Zak]
+ - add i_version support [Karel Zak]
+ - add info about /proc/mounts to mount.1 [Karel Zak]
+ - add info about semantics of read-only mount to mount.8 [Karel Zak]
+ - add info about tz=UTC option for FAT to mount.8 [Karel Zak]
+ - add norealtime to mount.8 [Karel Zak]
+ - add rootcontext= SELinux mount option [Karel Zak]
+ - add shortoptions for bind, move and rbind [maximilian attems]
+ - clean up SPEC canonicalization [Karel Zak]
+ - cleans up mount(8) troff markup [Sam Varshavchik]
+ - create separate section for fs-independent options in mount.8 [Karel Zak]
+ - document newinstance and ptmxmode options to devpts [Sukadev Bhattiprolu]
+ - finalize support of quoted LABELs/UUIDs [Karel Zak]
+ - fix gcc warning (variable used uninitialized) [Karel Zak]
+ - fix mount_static_LDADD [Karel Zak]
+ - fix typo [Guan Xin]
+ - fix typo [Karel Zak]
+ - fix typo in volume_id code [Karel Zak]
+ - generic blkid/volume_id wrapper, use blkid_evaluate_* [Karel Zak]
+ - inform about UID and eUID when verbose > 2 [Karel Zak]
+ - make file_t SELinux warning optional and shorter [Karel Zak]
+ - move realpath.c code to lib/ [Karel Zak]
+ - mtab created multiple times with -a option [Karel Zak]
+ - non-setuid (POSIX file capabilities) support [Karel Zak]
+ - remove link to namesys.com [Karel Zak]
+ - remove spurious newline from mount.8 [Mike Frysinger]
+ - remove useless if-before-free tests [Karel Zak]
+ - reorder list of options in mount.8 [Karel Zak]
+ - retry on ENOMEDIUM [Matthias Koenig]
+ - s/MOUNTED/_PATH_MOUNTED/ [maximilian attems]
+ - suggest to use blockdev --setro rather than losetup [Karel Zak]
+ - sundries.h add klibc support [maximilian attems]
+ - sync FAT info in mount.8 with Documentation/filesystems/vfat.txt [Karel Zak]
+ - sync tmpfs info in mount.8 with Documentation/filesystems/tmpfs.txt [Karel Zak]
+ - use subsections in mount.8 DESCRIPTION [Karel Zak]
+ - warn on "file_t" selinux context [Karel Zak]
+namei:
+ - add --owners and --long options [Karel Zak]
+ - add --vertical option [Karel Zak]
+ - add missing options to namei.1 [Karel Zak]
+ - don't duplicate '/' directory [Karel Zak]
+ - fix buffer overflow [Karel Zak]
+ - new re-written version [Karel Zak]
+partx:
+ - convert hard sector size to 512-byte sectors [Karel Zak]
+ - don't duplicate lib/blkdev.c code [Karel Zak]
+ - don't redeclare daddr_t [maximilian attems]
+ - use ioctls from lib/blkdev.c [Karel Zak]
+pg:
+ - add gettext call for the help string [Karel Zak]
+ - several strings without gettext calls [Pedro Ribeiro]
+pivot_root:
+ - clean up [Karel Zak]
+po:
+ - add zh_CN.po (from translationproject.org) [Ray Wang]
+ - merge changes [Karel Zak]
+ - rewrite update-potfiles script [Karel Zak]
+ - update POTFILES.in [Karel Zak]
+ - update cs.po (from translationproject.org) [Petr Pisar]
+ - update fi.po (from translationproject.org) [Lauri Nurmi]
+ - update fr.po (from translationproject.org) [Nicolas Provost]
+ - update id.po (from translationproject.org) [Arif E. Nugroho]
+ - update ja.po (from translationproject.org) [Makoto Kato]
+ - update list of .c files [Karel Zak]
+ - update nl.po (from translationproject.org) [Benno Schulenberg]
+ - update vi.po (from translationproject.org) [Clytie Siddall]
+raw:
+ - add NLS support [Pedro Ribeiro]
+ - default to /dev/raw/rawctl [Karel Zak]
+rdev:
+ - cleanup includes [Karel Zak]
+readprofile:
+ - several strings without gettext calls [Pedro Ribeiro]
+renice:
+ - add -n option for compatibility with POSIX [Karel Zak]
+rtcwake:
+ - add mising .RE to the man page [Karel Zak]
+ - cleanup return codes [Karel Zak]
+ - explain supported modes in rtcwake.8 [Karel Zak]
+ - prefer RTC_WKALM_SET over RTC_ALM_SET [Gabriel Burt]
+ - support not suspending [Marco d'Itri]
+script:
+ - don't flush input when starting script [Andrew McGill]
+scriptreplay:
+ - new implementation is out-of-sync [Karel Zak]
+selinux:
+ - is_selinux_enabled() returns 0, 1 and -1 [Karel Zak]
+setterm:
+ - fix -blank man page [Karel Zak]
+sfdisk:
+ - fix Compilation Error [CAI Qian]
+ - fix possible buffer overflow [Karel Zak]
+ - print version should end with a newline [Denis ChengRq]
+simmpleinit:
+ - fix gcc warning (buffer size in read()) [Karel Zak]
+simpleinit:
+ - cleanup gettext calls, use snprintf() [Karel Zak]
+swapon:
+ - -a has to complain, fix leaks [Karel Zak]
+ - add -f/--fixpgsz option [Karel Zak]
+ - add error messages for lseek and write [Karel Zak]
+ - add generic swap_get_header() [Karel Zak]
+ - add swap format detection and pagesize check [Matthias Koenig, Olaf Hering]
+ - cleanup man page [Karel Zak]
+ - do_swapon() refactoring (move stat() checks) [Karel Zak]
+ - do_swapon() refactoring (split into two functions) [Karel Zak]
+ - fix typo s/warn/warnx/ [Karel Zak]
+ - fix wording in man page [Karel Zak]
+ - rewrite SWSUSPEND signature rather than exec mkswap [Karel Zak]
+ - simplify spec to devname conversion [Karel Zak]
+ - use err.h stuff [Karel Zak]
+tailf:
+ - unistd.h is included more than once [Karel Zak]
+tests:
+ - add "byte-order" to helpers/test_sysinfo [Karel Zak]
+ - add ./run.sh <component> [Karel Zak]
+ - add MD5 regression test [Karel Zak]
+ - add fsck ismounted reg.test [Karel Zak]
+ - add libblkid regression tests (images from e2fsprogs) [Karel Zak]
+ - add lscpu(1) test for fullvirt. Xen x86_64 [Karel Zak]
+ - add lscpu(1) test for paravirt. Xen i386 [Karel Zak]
+ - add md5 regression test [Karel Zak]
+ - add mk-lscpu-input.sh [Karel Zak]
+ - add support for subdirs to basic test functions [Karel Zak]
+ - add support for subtests [Karel Zak]
+ - add swabN() regression test [Karel Zak]
+ - check also for /dev/loop/X [Karel Zak]
+ - chmod -x ts/lscpu/mk-input.sh [Karel Zak]
+ - clean up the testing scripts [Américo Wang]
+ - cleanup lscpu reg.tests [Karel Zak]
+ - cleanup ts/bitops [Karel Zak]
+ - cleanup ts/cal scripts [Karel Zak]
+ - cleanup ts/col scripts [Karel Zak]
+ - cleanup ts/cramfs/fsck-endianness [Karel Zak]
+ - cleanup ts/cramfs/mkfs-endianness [Karel Zak]
+ - cleanup ts/hwclock [Karel Zak]
+ - cleanup ts/ipcs [Karel Zak]
+ - cleanup ts/login [Karel Zak]
+ - cleanup ts/look [Karel Zak]
+ - cleanup ts/md5 [Karel Zak]
+ - cleanup ts/minix [Karel Zak]
+ - cleanup ts/mount [Karel Zak]
+ - cleanup ts/namei [Karel Zak]
+ - cleanup ts/paths [Karel Zak]
+ - cleanup ts/script [Karel Zak]
+ - cleanup ts/swapon [Karel Zak]
+ - create expected/$(component)/$(testname) [Karel Zak]
+ - create subdirs for test scripts [Karel Zak]
+ - detect libvolume_id when mount(8) is compiled [Karel Zak]
+ - disable blkid tests when blkid(8) is not compiled [Karel Zak]
+ - disable suid mount test [Karel Zak]
+ - fix -regex in run.sh [Karel Zak]
+ - fix TS_* paths [Karel Zak]
+ - fix file name is too long (max 99) - gtar [Karel Zak]
+ - fix output string [Karel Zak]
+ - fix the final message for subtests [Karel Zak]
+ - fix typo in low-probe test [Karel Zak]
+ - fix typo in lscpu test [Karel Zak]
+ - move some generic stuff from ts_init() to a new ts_init_env() [Karel Zak]
+ - refresh Makefile.am (add missing lscpu tests) [Karel Zak]
+ - refresh and cleanup cramfs/mkfs [root]
+ - refresh cal(1) expected outputs [Karel Zak]
+ - refresh expected mount(8) outputs [Karel Zak]
+ - refresh ipcs expected outputs [Karel Zak]
+ - remove input directory [Karel Zak]
+ - remove obsolete stuff from Makefile.am [Karel Zak]
+ - remove unexpected exit from *_subtest functions [Karel Zak]
+ - remove useless return value checks in testing scripts [Américo Wang]
+ - update namei reg.test [Karel Zak]
+ - we needn't blkid.sh [Karel Zak]
+tools:
+ - add checkconfig to top-level Makefile [Karel Zak]
+ - add checkincludes.pl (from linux kernel) [Karel Zak]
+ - rename codecheck-config to checkconfig.sh [Karel Zak]
+umount:
+ - check for overlaid mounts [Guan Xin]
+ - cleanup gefs_by_specdir() [Karel Zak]
+ - improve "-d" option for autoclear loops [Karel Zak]
+ - no checking mount point removal [Guan Xin]
+whereis:
+ - include dirent.h instead sys/dir.h [maximilian attems]
+write:
+ - doesn't check for tty group [Karel Zak]
+
diff --git a/Documentation/releases/v2.16-ReleaseNotes b/Documentation/releases/v2.16-ReleaseNotes
new file mode 100644
index 000000000..b204c643a
--- /dev/null
+++ b/Documentation/releases/v2.16-ReleaseNotes
@@ -0,0 +1,182 @@
+
+Util-linux-ng 2.16 Release Notes (15-Jul-2009)
+==============================================
+
+Release highlights
+------------------
+
+libuuid, uuidgen(1) and uuidd(8):
+ - the libuuid library has been moved from e2fsprogs to util-linux-ng
+
+switch_root:
+ - this NEW COMMAND allows to switch to another filesystem as the root
+ of the mount tree.
+
+mount, umount, fsck:
+ - DOES NOT SUPPORT linking against obsolete libvolume_id (from udev)
+
+libblkid:
+ - development files (.so, .a, ...) have been moved from /lib to /usr/lib.
+
+
+Stable maintenance releases between v2.15 and v2.16
+---------------------------------------------------
+
+util-linux-ng 2.15.1 [10-Jun-2009]
+
+ * ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.15/v2.15.1-ReleaseNotes
+ ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.15/v2.15.1-ChangeLog
+
+
+ChangeLog between v2.15 and v2.16
+---------------------------------
+
+ For more details see ChangeLog files at:
+ ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.16/
+
+
+build-sys:
+ - add --disable-libblkid, remove volume_id support [Karel Zak]
+ - add --disable-switch_root [Karel Zak]
+ - add --disable-tls [Karel Zak]
+ - add --disable-uuidd [Karel Zak]
+ - add UTIL_{SET,RESTORE}_FLAGS [Karel Zak]
+ - check for openat() and linux for switch_root [Karel Zak]
+ - cleanup libuuid stuff [Karel Zak]
+ - complete /libs to /shlibs rename [Karel Zak]
+ - enable fsck by default [Karel Zak]
+ - fix "make -C" bug [Karel Zak]
+ - fix --disable-uuidd [Karel Zak]
+ - fix blkid.h include for old e2fsprogs [Karel Zak]
+ - fix exec/data install hooks [Karel Zak]
+ - fix headers in mkswap and libblkid [Karel Zak]
+ - fix libuuid Makefile.am [Karel Zak]
+ - fix libuuid and libblkid version-info [Karel Zak]
+ - fix typo from 30688dde55f637c9b984809c685b61378b82805f [Robert Förster]
+ - improve $libdirname definition [Karel Zak]
+ - improve symlinks creation in shlibs/ [Karel Zak]
+ - release++ (v2.16-rc1) [Karel Zak]
+ - release++ (v2.16-rc2) [Karel Zak]
+ - rename /libs to /shlibs [Karel Zak]
+ - rename to _execdir [Karel Zak]
+ - reverse shlibs installation [Kay Sievers]
+buildsys:
+ - move $usr{bin,sbin,lib}execdir definition to ./configure [Karel Zak]
+cal:
+ - Highlight today even when month or year specified [Rajeev V. Pillai]
+ - uClibc has langinfo.h but not _NL_TIME_WEEK_1STDAY. [Tom Prince]
+chrt:
+ - don't assume SCHED_BATCH and SCHED_IDLE exist [Aurelien Jarno]
+docs:
+ - add missing commands/projects to AUTHORS file [Karel Zak]
+ - add v2.16 ReleaseNotes [Karel Zak]
+ - refresh TODO list [Karel Zak]
+ - remove example.files/rc[.local] [Karel Zak]
+ - remove obsolete information from fstab example [Karel Zak]
+ - update AUTHORS file [Karel Zak]
+ - update v2.16 ReleaseNotes [Karel Zak]
+ - update v2.16-ReleaseNotes [Karel Zak]
+fdisk:
+ - (and cfdisk) fix to be consistent about maximum heads [Chris Webb]
+ - add simple test for doslabel stuff [Zdenek Behan]
+hwclock:
+ - fix mismatched popen/fclose. [John Keeping]
+include:
+ - clean up _PATH_DEV_* macros [Karel Zak]
+ - fix _PATH_DEV [Karel Zak]
+ionice:
+ - Allow setting the none class [Jakob Unterwurzacher]
+ldattach:
+ - add N_PPS support [Tilman Schmidt]
+libblkid:
+ - add device-mapper snapshot cow device probe [Milan Broz]
+ - add install-hook for libuuid.[a,so] devel files [Karel Zak]
+ - add stdarg.h to blkidP.h [Karel Zak]
+ - blkid_do_safeprobe() has to be tolerant to RAIDs [Karel Zak]
+ - cleanup debug messages and return codes in blkid_do_probe() [Karel Zak]
+ - don't require udev symlinks verification for non-root users [Karel Zak]
+ - fix "hangs forever with partition type mdraid" [Karel Zak]
+ - fix #ifdefs readability [Karel Zak]
+ - fix $libdir in blkid.pc [Karel Zak]
+ - fix LVM1 probe [Milan Broz]
+ - fix reiserfs name [Karel Zak]
+ - make libuuid optional [Karel Zak]
+ - move to misc-utils/ directory [Karel Zak]
+ - update man page [Karel Zak]
+libuuid:
+ - add --disable-libuuid and LIBUUID_VERSION [Karel Zak]
+ - add .gitignore [Karel Zak]
+ - add info about u-l-ng to man pages [Karel Zak]
+ - add install-hook for libuuid.[a,so] devel files [Karel Zak]
+ - Don't run uuidd if it would fail due to permission problems [Theodore Ts'o]
+ - fix $libdir in uuid.pc [Karel Zak]
+ - fix parallel building [Karel Zak]
+ - generate uuid_generate_{random,time}.3 man page links [Karel Zak]
+ - import UUID library from e2fsprogs [Karel Zak]
+ - Make sure fd's 0, 1, and 2 are valid before exec'ing uuidd [Theodore Ts'o]
+ - move clock state file from /var/lib to /var/run [Karel Zak]
+libuuid, uuidd:
+ - Avoid infinite loop while reading from the socket fd [Theodore Ts'o]
+losetup:
+ - add --set-capacity [Karel Zak]
+ - fix return codes of functions arounf is_associated() [Karel Zak]
+ - handle symlinks in /dev/loop/ [Mike Frysinger]
+ - suggest to use modprobe rather than insmod in losetup.8 [Karel Zak]
+lscpu:
+ - fix cpuid code on x86/PIC [Mike Frysinger]
+mount:
+ - (and fsck) remove libvolume_id support [Karel Zak]
+ - a little clean up info about loopdevs in man page [Karel Zak]
+ - add ext4 to mount.8 [Karel Zak]
+ - add ext4 to the list of filesystems in mount.8 [Karel Zak]
+ - add info about obsolete vfat options to mount.8 [Karel Zak]
+ - allow loop suid umount [Kay Sievers]
+ - cleanup notes about -l option in mount.8 [Karel Zak]
+ - fix undefined reference to `security_get_initial_context' [Karel Zak]
+ - move MS_{PROPAGATION,BIND,MOVE} detection [Karel Zak]
+ - use "none" fstype for MS_PROPAGATION mounts [Karel Zak]
+ - use TAG parsing function from libblkid [Karel Zak]
+ - when a remount to rw fails, quit and return an error [Valerie Aurora]
+po:
+ - fix typo in French translation [Olivier Blin]
+ - merge changes [Karel Zak]
+ - refresh POTFILES.in [Karel Zak]
+ - update cs.po (from translationproject.org) [Petr Pisar]
+ - update fi.po (from translationproject.org) [Lauri Nurmi]
+ - update fr.po (from translationproject.org) [Nicolas Provost]
+ - update vi.po (from translationproject.org) [Clytie Siddall]
+raw:
+ - Use the RAW_SETBIND ioctl without stat'ing the raw# file [Jeff Mahoney]
+ - undeprecate raw [Karel Zak]
+switch_root:
+ - add man page [Karel Zak]
+ - add subroot support [Daniel Drake]
+ - clean up argv[] usage, add -h and -V [Karel Zak]
+ - do recursiveRemove after our root is moved to avoid races. [Peter Jones]
+ - fix coding style [Karel Zak]
+ - fork before cleaning up the filesystem. [Peter Jones]
+ - new command [Karel Zak]
+ - rewrite to use fstatat() and unlinkat() [Karel Zak]
+ - use err.h, clean up return codes [Karel Zak]
+ - use file descriptor instead of path for recursiveRemove() [Peter Jones]
+ - use snprintf() rather tan str{cpy,cat}() [Karel Zak]
+tests:
+ - add functions for work withdisk images [Karel Zak]
+ - add mdraid libblkid test [Karel Zak]
+ - don't run some mount tests for non-root users [Karel Zak]
+ - fix 'delete extended partition' checksum [Karel Zak]
+ - fix reiserfs test [Karel Zak]
+ - fix script that creates lscpu dumps [Karel Zak]
+ - move lscpu /proc and /sys dumps to tarballs [Karel Zak]
+ - remove broken Xen dumps for lscpu [Karel Zak]
+umount:
+ - clean up help output [Karel Zak]
+uuidd:
+ - Avoid closing the server socket when calling create_daemon() [Theodore Ts'o]
+ - fix $PIDFILE in uuidd.rc [Karel Zak]
+ - init /var/run/uuidd, add option for on-demand mode to .rc file [Karel Zak]
+ - move uuidd files from /var/lib/libuuid to /var/run/uuidd [Karel Zak]
+ - move uuidd.rc to misc-utils directory [Karel Zak]
+ - new command (UUID daemon from e2fsprogs) [Karel Zak]
+uuidgen:
+ - new command (from e2fsprogs) [Karel Zak]
diff --git a/Documentation/releases/v2.17-ReleaseNotes b/Documentation/releases/v2.17-ReleaseNotes
new file mode 100644
index 000000000..874622b88
--- /dev/null
+++ b/Documentation/releases/v2.17-ReleaseNotes
@@ -0,0 +1,526 @@
+Util-linux-ng 2.17 Release Notes (08-Jan-2010)
+==============================================
+
+Release highlights
+------------------
+
+fallocate:
+ - this NEW COMMAND is a command line interface to fallocate
+ Linux syscall and allows to preallocate blocks to a file.
+
+unshare
+ - this NEW COMMAND is a command line interface to unshare Linux syscall
+ and allows to run program with some namespaces unshared from parent.
+
+wipefs
+ - this NEW COMMAND is based on libblkid and allows to remove filesystem
+ or RAID signatures from a device.
+
+libblkid:
+ - libblkid allows to gather information about block device topology,
+ currently supported methods are:
+
+ * ioctl - supported since kernel 2.6.32
+ * sysfs - supported since kernel 2.6.31
+ * fallback for DM, MD, LVM and EVMS on old kernels (base on code
+ from xfsprogs/libdisk)
+
+ The topology support is mostly designed for mkfs programs or partitioning
+ tools (already used in mkfs.xfs, mkex2fs, libparted and fdisk)
+
+ - libblkid supports partition tables parsing (currently supported are
+ aix, bsd, dos, mac, gpt, minix, sgi, solaris, sun and unixware). This
+ functionality is designed for mkfs programs, DeviceKits, [k]partx or so.
+
+ - libblkid API documentation is available at
+ http://ftp.kernel.org/pub/linux/utils/util-linux-ng/libblkid-docs/
+
+blockdev:
+ - supports all new topology ioctls
+
+fdisk:
+ - the fdisk command aligns newly created partitions to minimum_io_size
+ boundary ("minimum_io_size" is physical sector size or stripe chunk
+ size on RAIDs).
+
+ - the fdisk command supports disks with alignment_offset now.
+
+
+Stable maintenance releases between v2.16 and v2.17
+---------------------------------------------------
+
+util-linux-ng 2.16.1 [07-Sep-2009]
+
+ * ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.16/v2.16.1-ReleaseNotes
+ ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.16/v2.16.1-ChangeLog
+
+util-linux-ng 2.16.2 [30-Nov-2009]
+
+ * ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.16/v2.16.2-ReleaseNotes
+ ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.16/v2.16.2-ChangeLog
+
+
+ChangeLog between v2.16 and v2.17
+---------------------------------
+
+ For more details see ChangeLog files at:
+ ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.17/
+
+addpart:
+ - addpart.8 formatting [Peter Breitenlohner]
+blkid:
+ - add ID_FS_AMBIVALENT for udev output [Karel Zak]
+ - add pretty output, document -L incompatibility with e2fsprogs [Karel Zak]
+ - allow to use -s <TAG> for low-level probing (-p mode) [Karel Zak]
+blockdev:
+ - add support for uint and ushort ioctls [Karel Zak]
+ - add topology ioctls support [Karel Zak]
+ - blockdev.8 formatting [Peter Breitenlohner]
+ - fix topology ioctls [Karel Zak]
+ - refactoring (better commands definition) [Karel Zak]
+ - use c.h [Karel Zak]
+build-sys:
+ - add --disable-makeinstall-setuid [Karel Zak]
+ - add HAVE_LIBBLKID_INTERNAL [Karel Zak]
+ - check for pkg-config before gtk-doc [Karel Zak]
+ - check for union semun instead of using _SEM_SEMUN_UNDEFINED [Guillem Jover]
+ - clean up gtk-doc stuff [Karel Zak]
+ - clean up gtk-doc usage [Karel Zak]
+ - cleanup --disable-{fallocate,pivot_root,unshare} [Karel Zak]
+ - cleanup AM_CFLAGS usage [Karel Zak]
+ - cleanup static building [Karel Zak]
+ - detect if const is available [Guillem Jover]
+ - detect if volatile is available [Guillem Jover]
+ - don't distribute generated *.pc files [Karel Zak]
+ - don't distribute generated blkid.h [Karel Zak]
+ - enable silent rules if automake >= 1.11 [Guillem Jover]
+ - fix (official) gtk-doc.make [Karel Zak]
+ - fix BUILD_PIVOT_ROOT condition [Karel Zak]
+ - fix blkid CFLAGS in fdisk/Makefile.am [Karel Zak]
+ - fix out-of-source build [Karel Zak]
+ - release++ (v2.17-rc1) [Karel Zak]
+ - release++ (v2.17-rc2) [Karel Zak]
+ - release++ (v2.17-rc3) [Karel Zak]
+ - remove LT_STATIC_LDFLAGS [Karel Zak]
+ - remove gtkdocize from autogen.sh [Karel Zak]
+ - remove obsolete --with-fsprobe from distcheck flags [Karel Zak]
+ - rewrite TLS detection [Karel Zak]
+cal:
+ - cal.1 formatting [Peter Breitenlohner]
+ - fix (harmless) typo [Peter Breitenlohner]
+ - fix broken computation for Sep 1752 [Peter Breitenlohner]
+ - remove obsolete <localeinfo.h> include [Guillem Jover]
+ - use c.h [Karel Zak]
+cfdisk:
+ - cfdisk.8 formatting [Peter Breitenlohner]
+ - more key alternatives [Jan Sarenik]
+chfn:
+ - chfn.1 formatting [Peter Breitenlohner]
+chrt:
+ - use c.h [Karel Zak]
+chsh:
+ - chsh.1 formatting [Peter Breitenlohner]
+ctrlaltdel:
+ - ctrlaltdel.8 formatting [Peter Breitenlohner]
+cytune:
+ - cytune.8 missing description of `-S', formatting [Peter Breitenlohner]
+ddate:
+ - ddate.1 formatting [Peter Breitenlohner]
+delpart:
+ - delpart.8 formatting [Peter Breitenlohner]
+dmesg:
+ - add -r to help output [Karel Zak]
+ - dmesg.1 formatting [Peter Breitenlohner]
+ - fix typo in man page [Ken Kopin]
+docs:
+ - README width and language correction [Jan Sarenik]
+ - add 'unshare' and 'wipefs' to AUTHORS [Karel Zak]
+ - add LGPLv2+ to list of licenses [Karel Zak]
+ - add ngettext() into TODO file [Karel Zak]
+ - add v2.17 ReleaseNotes [Karel Zak]
+ - update "The Perfect Patch" URL [Karel Zak]
+ - update AUTHORS file [Karel Zak]
+ - update TODO [Karel Zak]
+ - update TODO file [Karel Zak]
+ - update TODO list [Karel Zak]
+ - update v2.17 ReleaseNotes [Karel Zak]
+elvtune:
+ - elvtune.8 formatting [Peter Breitenlohner]
+fallocate:
+ - check for ERANGE errors [Karel Zak]
+ - new command [Karel Zak, Eric Sandeen]
+fdformat:
+ - fdformat.8 formatting [Peter Breitenlohner]
+ - fix memory leak in verify_disk() [Cristian Rodríguez]
+fdisk:
+ - add basic routines for LBA alignment [Karel Zak]
+ - add regression test listing empty/nonsense images [Zdenek Behan]
+ - align end of partition when defined by +size{K,M,G} [Karel Zak]
+ - check for partition boundary [Karel Zak]
+ - fdisk.8 formatting [Peter Breitenlohner]
+ - fix strict-aliasing bugs [Karel Zak]
+ - offer aligned first sector [Karel Zak]
+ - print info and recommendations about alignment [Karel Zak]
+ - read topology info from libblkid [Karel Zak]
+ - sgi label - remove duplicate swab16swab[16,32]() definitions [Karel Zak]
+ - sleep-after-sync and fsync usage [Karel Zak]
+ - use c.h [Karel Zak]
+ - use minimal_io_size for the first partition [Karel Zak]
+findfs:
+ - fix typo in findfs.8 [Karel Zak]
+flock:
+ - fix hang when parent ignores SIGCHLD [Mike Frysinger]
+fsck:
+ - document fsck behavior wrt nofail option and fstype 'auto' [Ludwig Nussel]
+ - fsck.8 formatting [Peter Breitenlohner]
+ - honor nofail option in fsck [Ludwig Nussel]
+fsck.minix:
+ - fix broken zone checking [Karel Zak]
+ - fix strict-aliasing bugs [Karel Zak]
+ - fsck.minix.8 formatting [Peter Breitenlohner]
+fstab:
+ - fstab.5 formatting [Peter Breitenlohner]
+getopt:
+ - getopt.1 formatting [Peter Breitenlohner]
+hexdump:
+ - bug in hexdump when offset == file length [Américo Wang]
+ - hexdump.1 erroneous .Nm "" [Peter Breitenlohner]
+hwclock:
+ - do not access hardware clock when using --systz [Scott James Remnant]
+ - hwclock.8 formatting [Peter Breitenlohner]
+ - set kernel timezone with --systz --utc [Scott James Remnant]
+ - use c.h [Karel Zak]
+ - use time limit for KDGHWCLK busy wait [Karel Zak]
+include:
+ - add c.h with fundamental C definitions [Karel Zak]
+ - use c.h in canonicalize.h [Karel Zak]
+initctl:
+ - fix strict-aliasing bugs [Karel Zak]
+ - initctl.8 formatting [Peter Breitenlohner]
+ionice:
+ - add a note about none class and CFQ [Karel Zak]
+ - ionice.1 formatting [Peter Breitenlohner]
+ipcmk:
+ - ipcmk.1 formatting [Peter Breitenlohner]
+ipcrm:
+ - ipcrm.1 formatting [Peter Breitenlohner]
+ipcs:
+ - ipcs.1 formatting [Peter Breitenlohner]
+ - use __GLIBC__ instead of obsolete __GNU_LIBRARY__ [Guillem Jover]
+isosize:
+ - isosize.8 formatting [Peter Breitenlohner]
+kill:
+ - kill.1 formatting [Peter Breitenlohner]
+ - use c.h [Karel Zak]
+last:
+ - fix utmp.ut_time usage [Karel Zak]
+ - last.1 formatting [Peter Breitenlohner]
+ldattach:
+ - ldattach.8 formatting [Peter Breitenlohner]
+ - use c.h [Karel Zak]
+lib:
+ - add a generic crc32() [Karel Zak]
+ - bug (typo) in function MD5Final() [Karel Zak]
+ - fix file descriptor leak in is_mounted() [Theodore Ts'o]
+ - fix lib/Makefile.am (remove pttype.c) [Karel Zak]
+ - import whole ismounted.c code from e2fsprogs [Karel Zak]
+ - remove pttype.c [Karel Zak]
+libblkid:
+ - DRBD support for blkid [Bastian Friedrich]
+ - add *.ko.gz support to modules.dep parser [Karel Zak]
+ - add AIX partitions support [Karel Zak]
+ - add BLKID_SUBLKS_* flags [Karel Zak]
+ - add BLKID_{VERSION,DATE} to blkid.h [Karel Zak]
+ - add BSD partitions support [Karel Zak]
+ - add DM topology support (for old kernels) [Karel Zak]
+ - add EFI GPT partitions support [Karel Zak]
+ - add EVMS topology support (for old kernels) [Karel Zak]
+ - add LVM topology support (for old kernels) [Karel Zak]
+ - add MAC partitions support [Karel Zak]
+ - add MD topology support (for old kernels) [Karel Zak]
+ - add MINIX partitions support [Karel Zak]
+ - add MS-DOS partitions support [Karel Zak]
+ - add SGI partitions support [Karel Zak]
+ - add SOLARIS-X86 partitions support [Karel Zak]
+ - add SUN partitions support [Karel Zak]
+ - add UBI volume support [Corentin Chary]
+ - add UBIFS support [Corentin Chary]
+ - add UNIXWARE partitions support [Karel Zak]
+ - add a probe for bfs [Christoph Hellwig]
+ - add blkid_devno_to_wholedisk() [Karel Zak]
+ - add blkid_driver_has_major() [Karel Zak]
+ - add blkid_new_probe_from_filename() [Karel Zak]
+ - add blkid_partition_get_type_string() [Karel Zak]
+ - add blkid_probe_get_{size,sectorsize,devno} [Karel Zak]
+ - add blkit_[un]ref() to TODO [Karel Zak]
+ - add chain structs [Karel Zak]
+ - add functions for chain tags [Karel Zak]
+ - add generic filter functions [Karel Zak]
+ - add generic function for binary data [Karel Zak]
+ - add missing comments [Karel Zak]
+ - add missing comments to probe.c [Karel Zak]
+ - add missing packed attributes [Karel Zak]
+ - add mkfs sample [Karel Zak]
+ - add note about UUID_SUB, increment number of superblock values [Karel Zak]
+ - add partitions filter routines [Karel Zak]
+ - add partitions parsing support [Karel Zak]
+ - add partitions sample [Karel Zak]
+ - add private blkid_topology_set_*() functions [Karel Zak]
+ - add samples/topology.c [Karel Zak]
+ - add sector size funcs to blkid.h.in [Karel Zak]
+ - add superblocks chain [Karel Zak]
+ - add superblocks filter functions [Karel Zak]
+ - add superblocks.c sample [Karel Zak]
+ - add support for SBMAGIC and SBMAGIC_OFFSET [Karel Zak]
+ - add support for VMFS (VMware File System) [Mike Hommey]
+ - add support for topology ioctls [Karel Zak]
+ - add test cases for VMFS [Mike Hommey]
+ - add topology support [Karel Zak]
+ - allow linking with uClibc [Daniel Mierswa]
+ - allow to change dimension of probing area [Karel Zak]
+ - allow to read in sectors [Karel Zak]
+ - allows more probing methods for topology chain [Karel Zak]
+ - announce Joliet extension [Maxim Levitsky]
+ - cleanup blkid_probe_set_device() [Karel Zak]
+ - cleanup topology fallback [Karel Zak]
+ - convert GPT partition LBA to 512-byte sectors [Karel Zak]
+ - cosmetic change in topology sample [Karel Zak]
+ - create a generic blkid_encode_to_utf8() [Karel Zak]
+ - create a generic blkid_unparse_uuid() [Karel Zak]
+ - does not return useless binary data [Karel Zak]
+ - don't return empty LABELs [Karel Zak]
+ - don't scan private /dev/.udev directory [Karel Zak]
+ - fix Adaptec RAID detection [Karel Zak]
+ - fix FALSE definition [Karel Zak]
+ - fix FAT super block definition [Lawrence Rust]
+ - fix NTFS non-ASCII labels [Karel Zak]
+ - fix UFS detection [Karel Zak]
+ - fix blkid_devno_to_wholedisk() [Karel Zak]
+ - fix blkid_do_probe() to work properly with chains [Karel Zak]
+ - fix blkid_fstatat() code [Karel Zak]
+ - fix blkid_probe_set_utf8label() call for Joliet [Karel Zak]
+ - fix buffer overflow in blkid_encode_string() [Florian Zumbiehl]
+ - fix cache->probe memory leak [Karel Zak]
+ - fix ext2 detection on systems with ext4 only [Karel Zak]
+ - fix gcc warning (warn_unused_result) [Karel Zak]
+ - fix highpoint37x detection [Karel Zak]
+ - fix non-magic FAT detection [Karel Zak]
+ - fix probing for binary interface [Karel Zak]
+ - fix segfault in blkid_do_probe() [Karel Zak]
+ - fix the default cache file path [Karel Zak]
+ - fix topology information values [Eric Sandeen]
+ - fix typo (swsupend -> swsuspend) [Karel Zak]
+ - fix typo s/Hihg/High/ [Jim Meyering]
+ - fix warning message in mkfs sample [Karel Zak]
+ - gtkdocize (API docs generated by gtk-docs) [Karel Zak]
+ - minor changes to dm topology code [Karel Zak]
+ - minor changes to samples [Karel Zak]
+ - minor fix in topology sample [Karel Zak]
+ - move FS/raid stuff to superblocks directory [Karel Zak]
+ - move blkid_known_fstype() to superblocks.c [Karel Zak]
+ - move filter macros to header file [Karel Zak]
+ - prefer ISO9660 PVD Label to Joliet Label [Karel Zak]
+ - properly reset position in probing chains [Karel Zak]
+ - refresh blkid.{h,sym} [Karel Zak]
+ - remove duplicate debug message [Karel Zak]
+ - remove superblock functions from probe.c [Karel Zak]
+ - rename highpoint RAIDs to hpt{37,45}x_raid_member [Karel Zak]
+ - return first detected crypto device [Scott James Remnant]
+ - topology - add logical and physical sector size [Karel Zak]
+ - topology - ignore non-blockdevs [Karel Zak]
+ - trim tailing whitespace from unicode LABELs [Karel Zak]
+ - update docs/.gitignore [Karel Zak]
+ - use BLKSSZGET for GPT sectors [Karel Zak]
+ - use blkid_new_probe_from_filename() in docs [Karel Zak]
+ - use c.h [Karel Zak]
+ - use c.h in samples [Karel Zak]
+ - use chains in blkid_do_{safe,full,}_probe() [Karel Zak]
+ - use chains in prober (de)initialization [Karel Zak]
+ - use fstatat(), improve readdir() usage [Karel Zak]
+ - use private {lookup,get}_value functions [Karel Zak]
+ - use superblock filter functions [Karel Zak]
+ - use superblocks.h [Karel Zak]
+ - use the new API in whole u-l-ng [Karel Zak]
+libuuid:
+ - remove .UE macro from libuuid man pages. [Milan Broz]
+line:
+ - remove deprecated #ident directive [Karel Zak]
+losetup:
+ - losetup.8 formatting [Peter Breitenlohner]
+ - remove unused macro [Karel Zak]
+lscpu:
+ - add {32,64}-bit CPU modes detection [Karel Zak]
+ - lscpu.1 formatting [Peter Breitenlohner]
+mcookie:
+ - mcookie.1 formatting [Peter Breitenlohner]
+mesg:
+ - mesg.1 formatting [Peter Breitenlohner]
+mkfs:
+ - mkfs.8 incomplete sentence and formatting [Peter Breitenlohner]
+mkfs.bfs:
+ - mkfs.bfs.8 formatting [Peter Breitenlohner]
+mkfs.cramfs:
+ - fix gcc warning (incompatible pointer type) [Karel Zak]
+mkfs.minix:
+ - fix strict-aliasing bugs [Karel Zak]
+ - mkfs.minix.8 formatting [Peter Breitenlohner]
+mkswap:
+ - fix memory leaks, cleanup check_blocks() [Karel Zak]
+ - mkswap.8 formatting [Peter Breitenlohner]
+ - restore device argument in mkswap.8 synopsis [Peter Breitenlohner]
+ - unbreak -c ("check") option. [Peter De Wachter]
+ - use libblkid to detect PT [Karel Zak]
+more:
+ - limited line buffer length results in corrupted UTF-8 text [Karel Zak]
+ - more.1 formatting [Peter Breitenlohner]
+mount:
+ - add --no-canonicalize option [Karel Zak]
+ - add a note about /dev/disk/by-* to mount.8 [Karel Zak]
+ - add a note about bind-dir remounts [Karel Zak]
+ - add info about ext{3,4} barriers to mount.8 [Karel Zak]
+ - add long options to mount.8 [Karel Zak]
+ - add squashfs to mount.8 [Karel Zak]
+ - add ubifs to the mount.8 man page [Sebastian Andrzej Siewior]
+ - and libblkid covert /dev/dm-N to /dev/mapper/<name> [Karel Zak]
+ - better --move description [Karel Zak]
+ - check for unsuccessful read-only bind mounts [Karel Zak]
+ - disable --no-canonicalize for non-root users [Karel Zak]
+ - document changed semantics of tmpfs size option in mount.8 [kevin.granade@gmail.com]
+ - fix mount.8, xfs attr2 is enabled by default [Karel Zak]
+ - fix reference to samba-client in mount.8 [Karel Zak]
+ - fix typo in mount.8 [Karel Zak]
+ - mention mtab for single mount point mount in mount.8 [Peter Volkov]
+ - more explicitly explain 'strictatime' in mount.8 [Karel Zak]
+ - more verbose "mount only root can do that" message [Karel Zak]
+ - mount.8 formatting [Peter Breitenlohner]
+ - move info about devices to the top of mount.8 [Karel Zak]
+ - update list of pseudo filesystems [Karel Zak]
+namei:
+ - better mount points detection [Karel Zak]
+ - fix alone symlink evaluation [Karel Zak]
+ - gater information about / (root) [Karel Zak]
+ - namei.1 formatting [Peter Breitenlohner]
+ - use c.h [Karel Zak]
+newgrp:
+ - newgrp.1 formatting [Peter Breitenlohner]
+ - use c.h, remove tailing whitespace [Karel Zak]
+partx:
+ - partx.8 formatting [Peter Breitenlohner]
+ - use c.h [Karel Zak]
+ - work properly with 512 sectors (dos PT) [Karel Zak]
+pg:
+ - command enters infinite loop [Mike Frysinger]
+ - compiler warning with NLS disabled [Peter Breitenlohner]
+ - pg.1 formatting [Peter Breitenlohner]
+pivot_root:
+ - pivot_root.8 formatting [Peter Breitenlohner]
+po:
+ - fix grammar glitch in german translation [Hendrik Lönngren]
+ - fix msgid bugs [Karel Zak]
+ - merge changes [Karel Zak]
+ - update POTFILES.in [Karel Zak]
+ - update cs.po (from translationproject.org) [Petr Pisar]
+ - update eu.po (from translationproject.org) [Mikel Olasagasti Uranga]
+ - update eu.po (from translationproject.org) [Mikel Olasagasti]
+ - update fi.po (from translationproject.org) [Lauri Nurmi]
+ - update fr.po (from translationproject.org) [Nicolas Provost]
+ - update id.po (from translationproject.org) [Arif E. Nugroho]
+ - update ja.po (from translationproject.org) [Makoto Kato]
+ - update pl.po (from translationproject.org) [Jakub Bogusz]
+ - update po/POTFILES.in [Karel Zak]
+ - update vi.po (from translationproject.org) [Clytie Siddall]
+ - update zh_CN.po (from translationproject.org) [Ray Wang]
+rdev:
+ - rdev.8 formatting [Peter Breitenlohner]
+readprofile:
+ - readprofile.1 formatting [Peter Breitenlohner]
+rename:
+ - rename.1 formatting [Peter Breitenlohner]
+renice:
+ - renice.1 formatting [Peter Breitenlohner]
+reset:
+ - reset.1 formatting [Peter Breitenlohner]
+rtcwake:
+ - add S5 support [Karel Zak]
+ - ignore the tm_isdst field returned from the RTC [Paul Fox]
+ - rtcwake.8 formatting [Peter Breitenlohner]
+scriptreplay:
+ - fix typo in error message [Karel Zak]
+ - scriptreplay.1 formatting [Peter Breitenlohner]
+setarch:
+ - setarch.8 formatting [Peter Breitenlohner]
+setsid:
+ - setsid.1 formatting [Peter Breitenlohner]
+setterm:
+ - setterm.1 formatting [Peter Breitenlohner]
+ - use c.h, remove tailing whitespace [Karel Zak]
+sfdisk:
+ - confused about disk size [Karel Zak]
+ - dump has to be $LANG insensitive [Karel Zak]
+ - sfdisk.8 formatting [Peter Breitenlohner]
+ - use c.h, remove obsolete #ifdefs [Karel Zak]
+shutdown:
+ - shutdown.8 formatting [Peter Breitenlohner]
+simpleinit:
+ - simpleinit.8 formatting [Peter Breitenlohner]
+swapon:
+ - fix typo on swapon.8 manpage [Florentin Duneau]
+ - handle <=linux-2.6.19 bug in /proc/swaps [Mike Frysinger]
+ - more robust progname probing [Karel Zak]
+ - swapon.8 formatting [Peter Breitenlohner]
+switch_root:
+ - add note about subroots to switch_root.8 [Karel Zak]
+ - remove TIOCSCTTY and setsid() [Karel Zak]
+ - switch_root.8 formatting [Peter Breitenlohner]
+tailf:
+ - fix printf format [Mike Frysinger]
+ - report inotify_add_watch() problems [Karel Zak]
+tests:
+ - add BFS libblkid regression test [Karel Zak]
+ - add NTFS blkid test [Karel Zak]
+ - add UBIFS test image to blkid test suite [Corentin Chary]
+ - add UFS test image for libblkid [Karel Zak]
+ - add VIA RAID test image for libblkid [Karel Zak]
+ - add adaptec RAID test [Karel Zak]
+ - add blkid regression tests for ISO9660 [Karel Zak]
+ - add hpt37x RAID test [Karel Zak]
+ - add hpt45x RAID test [Karel Zak]
+ - add isw RAID test [Karel Zak]
+ - add jmicron RAID test [Karel Zak]
+ - add lsi RAID test [Karel Zak]
+ - add nvidia RAID test [Karel Zak]
+ - add partitions probing test [Karel Zak]
+ - add promise RAID test [Karel Zak]
+ - add silicon RAID test [Karel Zak]
+ - fdisk doslabel test also checks changing partition type [Zdenek Behan]
+ - fdisk doslabel test also checks setting partition active [Zdenek Behan]
+ - refresh GPT regression test [Karel Zak]
+ - refresh lscpu tests [Karel Zak]
+ - remove vol_id from tests [Karel Zak]
+ - rename blkid/images to blkid/images-fs [Karel Zak]
+ - swapon workaround for libtool wrapper [Karel Zak]
+ - test for basic functionality of sun labels [Zdenek Behan]
+ - update fsck.ismounted test [Karel Zak]
+tunelp:
+ - tunelp.8 formatting [Peter Breitenlohner]
+ul:
+ - ul.1 erroneous .SH instead of .Sh [Peter Breitenlohner]
+umount:
+ - add --no-canonicalize [Karel Zak]
+ - umount.8 command line for umount helpers, formatting [Peter Breitenlohner]
+unshare:
+ - new command [Mikhail Gusarov]
+uuidd:
+ - uuidd.8 formatting [Peter Breitenlohner]
+uuidgen:
+ - uuidgen.1 formatting [Peter Breitenlohner]
+vipw:
+ - vipw.8 remove erroneous empty line, formatting [Peter Breitenlohner]
+whereis:
+ - whereis.1 formatting [Peter Breitenlohner]
+wipefs:
+ - fix coding style [Karel Zak]
+ - new command [Karel Zak]
+ - remove obsolete comment [Karel Zak]
+write:
+ - write.1 formatting [Peter Breitenlohner]
diff --git a/Documentation/releases/v2.18-ReleaseNotes b/Documentation/releases/v2.18-ReleaseNotes
new file mode 100644
index 000000000..47f590ee5
--- /dev/null
+++ b/Documentation/releases/v2.18-ReleaseNotes
@@ -0,0 +1,468 @@
+Util-linux-ng 2.18 Release Notes
+================================
+
+The util-linux-ng package does not contain rdev(8), ramsize(8),
+vidmode(8) and rootflags(8) anymore.
+
+The fdisk(8) command does not use DOS-compatible mode and cylinders as display
+units by default. The old deprecated DOS behavior could be enabled by 'c' and
+'u' fdisk commands or from command line by '-c=dos -u=cylinders' options.
+
+Release highlights
+------------------
+
+libmount:
+ - this NEW LIBRARY is designed to be used in low-level utils like
+ mount(8) and /sbin/mount.<type> helpers as well as in some other
+ projects.
+
+ - the library API is still officially unstable. The library provides
+ fstab, mtab and mountinfo parser, routines for work with parsed
+ data and mount options, mtab locking, etc. The high-level API for
+ mount(2) is planned for the next major release. For more details see:
+ http://thread.gmane.org/gmane.linux.utilities.util-linux-ng/3239
+
+ - the utils like mount(8) or umount(8) are not linked with the library
+ yet. This change is planned for util-linux-ng-2.19.
+
+findmnt(8):
+ - this NEW COMMAND is a command line interface to the libmount library
+ for work with mountinfo, fstab and mtab files
+
+fsfreeze(8):
+ - this NEW COMMAND is very simple wrapper around FIFREEZE/FITHAW ioctls
+
+swaplabel(8):
+ - this NEW COMMAND allows to change swaparea UUID and label
+
+blkid(8):
+ - supports new command line option "-i" to print I/O Limits
+
+ - supports new command line option "-n" to restrict probing functions to
+ defined list of superblock types (names).
+
+ - returns details from partition table (type, flags, uuid, ...)
+
+chrt(1):
+ - supports new command line option "-R/--reset-on-fork" to enable
+ SCHED_RESET_ON_FORK flag
+
+fdisk(8):
+ - supports new command line option "-c" to switch off DOS mode
+ - uses 1MiB offset for the first partition
+ (all these changes are already in the release 2.17.2)
+
+hwclock(8):
+ - supports new command line option "--predict" to predict what the RTC will
+ read at time given by the --date option based on the adjtime file.
+
+ldattach(8):
+ - supports new command line option "-i/--iflag" to sets the specified bits
+ in the c_iflag word of the serial line.
+
+fallocate(1), losetup(8) and mount(8):
+ - the options --offset, --length or --sizelimit support suffixes
+ (MiB, GiB, ...) and hex numbers
+
+umount(8):
+ - supports new command line option "--fake" to avoid umount(2) syscall
+
+
+Stable maintenance releases between v2.17 and v2.18
+---------------------------------------------------
+
+util-linux-ng 2.17.1 [22-Feb-2010]
+
+ * ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.17/v2.17.1-ReleaseNotes
+ ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.17/v2.17.1-ChangeLog
+
+util-linux-ng 2.17.2 [22-Mar-2010]
+
+ * ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.17/v2.17.2-ReleaseNotes
+ ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.17/v2.17.2-ChangeLog
+
+
+Changes between v2.17 and v2.18
+-------------------------------
+
+ For more details see ChangeLog files at:
+ ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.18/
+
+addpart:
+ - use atoll() for parsing command line arguments [Thomas Fehr]
+blkid:
+ - add \n to the "-o udev" output when probe more devices [Karel Zak]
+ - add 'export' output format [Karel Zak]
+ - add -i option to print I/O limits [Karel Zak]
+ - add -n <list> option [Karel Zak]
+ - add newline when only one value is printed [Karel Zak]
+ - cleanup -u <list> parsing [Karel Zak]
+ - cleanup man page [Karel Zak]
+ - encode PART_ENTRY_TYPE [Karel Zak]
+ - export ID_PART_ENTRY_* variables for udev [Karel Zak]
+ - fix #ifdef HAVE_TERMIO[S]_H [Karel Zak]
+ - fix blkid_probe_lookup_value() usage [Karel Zak]
+ - improve RAIDs and tiny devices probing [Karel Zak]
+ - probe for PT, don't probe for FS on small whole-disks [Karel Zak]
+ - remove _ENC from ID_PART_ENTRY_{NAME,TYPE} variables [Karel Zak]
+ - remove duplicate option from man page [Karel Zak]
+ - report open() errors in low-level probing [Karel Zak]
+ - support suffixes for -O <offset> and -S <size> [Karel Zak]
+ - update man page/usage() [Karel Zak]
+blockdev:
+ - reduce usage text width [Francesco Cosoleto]
+build-sys:
+ - add missing tests for libuuid and libblkid [Karel Zak]
+ - cleanup lib{mount,blkid} building [Karel Zak]
+ - improved check for fallocate() [Yann Droneaud]
+ - minor changes for GNU/Hurd [Samuel Thibault]
+ - release++ (v2.18-rc1) [Karel Zak]
+ - release++ (v2.18-rc2) [Karel Zak]
+ - remove duplicate #includes [Karel Zak]
+ - replace ../ with $top_srcdir [Karel Zak]
+ - update include/Makefile.am [Karel Zak]
+ - use include/list.h [Karel Zak]
+cal:
+ - factor out and update multibyte alignment code [Pádraig Brady]
+ - fix first day of the week calculation on BE systems [Karel Zak]
+ - remove unnecessary info from man page [Karel Zak]
+cfdisk:
+ - fix warning implicit declaration of function ‘wcwidth’ [Karel Zak]
+ - set '[New]' as default item on menu for non allocated space instead of '[Help]'. [Francesco Cosoleto]
+ - set '[Quit]' as default menu item on first run instead of '[Bootable]'. [Francesco Cosoleto]
+ - support non-ascii characters in input [Karel Zak]
+ - use libblkid [Matthias König]
+chrt:
+ - add --reset-on-fork [Karel Zak]
+ - add --verbose to man page, correct -V for --version, alphabetize [Benno Schulenberg]
+ - add support for SCHED_RESET_ON_FORK [Adrian Knoth]
+ - change two messages into four translatable sentences [Benno Schulenberg]
+ - slice help text into manageable chunks for translators [Benno Schulenberg]
+docs:
+ - fix umount --fake note in ReleaseNotes [Karel Zak]
+ - update ReleaseNotes [Karel Zak]
+ - update AUTHORS file [Karel Zak]
+ - update TODO [Karel Zak]
+ - update TODO file [Karel Zak]
+ - update tests/README [Karel Zak]
+ - update v2.18 ReleaseNotes [Karel Zak]
+fallocate:
+ - check for number of arguments [Karel Zak]
+ - support suffixes for --offset and --lenght [Karel Zak]
+fdisk:
+ - add -c option (switch off DOS mode) [Karel Zak]
+ - cleanup alignment, default to 1MiB offset [Karel Zak]
+ - cleanup help, add -h option [Karel Zak]
+ - cleanup warnings [Karel Zak]
+ - correctly truncate and align translated partition names [Pádraig Brady]
+ - disable DOS mode and cylinders by default [Karel Zak]
+ - don't check alignment_offset against geometry [Karel Zak]
+ - don't include scsi.h [Karel Zak]
+ - don't use 1MiB grain on small devices [Karel Zak]
+ - extend -c and -u options to support old DOS stuff [Karel Zak]
+ - fallback for topology values [Karel Zak]
+ - fix 'p' output for sun label [Karel Zak]
+ - fix -b <sectorsize> [Karel Zak]
+ - fix ALIGN_UP [Karel Zak]
+ - fix check_alignment() [Karel Zak]
+ - fix default first sector [Karel Zak]
+ - improve 'move begin of partition' command [Karel Zak]
+ - improve add partition dialog [Karel Zak]
+ - improve the description of -c and -u options on man page [Benno Schulenberg]
+ - remove erroneous <size> argument from -u option in help text [Benno Schulenberg]
+ - replace bzero with memset [Jon Ringle]
+ - swap VTOC values for warning messages [Karel Zak]
+ - untangle the reporting of deprecated mode and unit [Benno Schulenberg]
+ - use "optimal I/O size" in warnings [Karel Zak]
+ - use 1MiB offset and grain always when possible [Karel Zak]
+ - use more elegant way to count and check alignment [Karel Zak]
+ - use optimal_io_size [Karel Zak]
+findmnt:
+ - add man page [Karel Zak]
+ - add new command [Karel Zak]
+ - add tree support [Karel Zak]
+ - add {fs,vfs}-options columns [Karel Zak]
+ - don't swap source and target for tags [Karel Zak]
+ - minor coding style fixes [Karel Zak]
+ - move from /sbin to /bin [Karel Zak]
+ - rewrite to use lib/tt.c [Karel Zak]
+ - small change in usage() [Karel Zak]
+ - ungettextize the directions and fix spelling [Benno Schulenberg]
+fsck:
+ - fix typo in fsck.8 [Francesco Cosoleto]
+fsck/mkfs/mount:
+ - unify default search paths for helpers [Mike Frysinger]
+fsfreeze:
+ - new command [Hajime Taira]
+git:
+ - ignore index files generated by ctags and cscope [Petr Uzel]
+hwclock:
+ - add --predict for predicting RTC reading at a given time [Timo Juhani Lindfors]
+include:
+ - add min/max macros [Karel Zak]
+ - move shlibs/.../list.h to the include/ directory [Karel Zak]
+ionice:
+ - fix typo [Pierre Hauweele]
+ - non-cryptic error message when ionice can't execvp [Ævar Arnfjörð Bjarmason]
+ipcrm:
+ - remove redundant message in case of invalid option [Francesco Cosoleto]
+ipcs:
+ - add missing "PIDs" to related shared memory header text [Francesco Cosoleto]
+ - advise translators a different output format [Francesco Cosoleto]
+ - get rid of colons from header strings for consistency [Francesco Cosoleto]
+ - reorganize help and usage texts [Francesco Cosoleto]
+ldattach:
+ - add --iflag command line option [Tilman Schmidt]
+ - create a generic functions for name=value tables [Karel Zak]
+ - prints help to stdout [Karel Zak]
+lib:
+ - add #ifndef around min() max() macros [Karel Zak]
+ - add fallback for libc (uClibc) without CPU_ALLOC [Karel Zak]
+ - add mangle.c for mtab (fstab or swaps) encoding [Karel Zak]
+ - add strtosize() function [Karel Zak]
+ - add tt.c (Tree and Table output) [Karel Zak]
+ - avoid compilation failure on rawhide [Jim Meyering]
+ - fix blkdev_find_size() [Karel Zak]
+ - remove unwanted debug messages [Karel Zak]
+ - tt.c don't print header for empty table [Karel Zak]
+ - tt.c - fix minimal width of column [Karel Zak]
+ - use fstat() as fallback in blkdev_get_size() [Karel Zak]
+libblkid:
+ - Add initial support for BeFS detection [Jeroen Oortwijn]
+ - Add probing function for BeFS [Jeroen Oortwijn]
+ - add PART_ENTRY_{SCHEME,NUMBER} [Karel Zak]
+ - add blkid_openat(), cleanup blkid_fstatat() [Karel Zak]
+ - add blkid_partition_set_type() [Karel Zak]
+ - add blkid_partlist_get_table() [Karel Zak]
+ - add blkid_probe_all_removable() [Karel Zak]
+ - add blkid_probe_get_{offset,fd} functions [Karel Zak]
+ - add exFAT file system detection support [Andrew Nayenko]
+ - add generic functions for sysfs attributes [Karel Zak]
+ - add microsecond resolution for cache entries [Karel Zak]
+ - add minimal sizes for OCFS and GFS [Karel Zak]
+ - add mnt_iter_get_direction() [Karel Zak]
+ - add partial support for superblock binary API [Karel Zak]
+ - add paths and tags cache [Karel Zak]
+ - add sanity checks for FAT to DOS PT parser [Karel Zak]
+ - add support for PART_ENTRY_* values [Karel Zak]
+ - add support for partition flags/attributes [Karel Zak]
+ - add ultrix PT support [Karel Zak]
+ - avoid probing CDs for RAID [M.S.Colclough]
+ - call read() per FAT root dir entry [Karel Zak]
+ - cleanup fstat() usage [Karel Zak]
+ - cleanup some docs [Karel Zak]
+ - cleanup superblocks_safeprobe() [Karel Zak]
+ - cleanup usage of empty topology values [Karel Zak]
+ - disable read-ahead when probing device files [Linus Torvalds]
+ - don't call read() per FAT dir-entry on large disks [Karel Zak]
+ - don't gather PART_ENTRY_* values for binary interface [Karel Zak]
+ - don't probe for GPT and Unixware PT on floppies [Karel Zak]
+ - don't probe for nested PT on tiny disks (<=1.44MiB) [Karel Zak]
+ - don't return error on empty files [Karel Zak]
+ - don't use fstat() in blkid_get_dev_size() [Karel Zak]
+ - export functions to get whole-disk devno [Karel Zak]
+ - fix 'partno' usage [Karel Zak]
+ - fix LUKS version [Karel Zak]
+ - fix ZSF detection [Andreas Dilger]
+ - fix blkid_partlist_devno_to_partition() for extended partitions [Karel Zak]
+ - fix collision between RAID and PT probing [Karel Zak]
+ - fix display of device size [Karel Zak]
+ - fix infinite loop when probe chain bails out early [Colin Watson]
+ - fix readline usage [Karel Zak]
+ - fix segfault in drdb [Matthias König]
+ - fix some typos [Milan Broz]
+ - improbe DDF detection [Karel Zak]
+ - improve MD 0.90 detection [Karel Zak]
+ - improve MD 0.90.0 detection (use sb->size) [Karel Zak]
+ - improve MD 1.0 detection, add UUID_SUB [Karel Zak]
+ - improve Sun VTOC [Karel Zak]
+ - improve ZFS detection and add LABEL and UUID extraction [Andreas Dilger]
+ - minor fixes in befs.c [Karel Zak]
+ - more robust minix probing [Karel Zak]
+ - optimize UDF label reading [Karel Zak]
+ - prevent overflow in BeFS [Jeroen Oortwijn]
+ - probe for (non-linux) RAIDs on whole devices only [Karel Zak]
+ - read whole SB buffer (69kB) on large disks [Karel Zak]
+ - read() optimization for small devices [Karel Zak]
+ - remove "0x" prefix from DRBD UUID [Karel Zak]
+ - reset BLKID_TINY_DEV flag in blkid_probe_set_device [Pascal Terjan]
+ - reset superblocks result after error [Karel Zak]
+ - restrict RAID/FS proving for small devices (1.4MiB) [Karel Zak]
+ - rewrite blkid_probe_get_buffer() [Karel Zak]
+ - set correct offsets for TuxOnIce signature [Chow Loong Jin]
+ - set minimal size for jfs, reiser, swap and zfs [Karel Zak]
+ - support alignment_offset=-1 [Karel Zak]
+ - tiny change in debug output [Karel Zak]
+ - export magic strings from raids [Karel Zak]
+ - move getsize.c code to lib/ [Karel Zak]
+libmount:
+ - add #warning libmount API is not stable yet! [Karel Zak]
+ - add basic dirs [Karel Zak]
+ - add basic utils [Karel Zak]
+ - add debug support [Karel Zak]
+ - add docs [Karel Zak]
+ - add fstab/mtab/mountinfo lookup routines [Karel Zak]
+ - add fstab/mtab/mountinfo parsing routines [Karel Zak]
+ - add list routines and generic iterator [Karel Zak]
+ - add mnt_cache_find_tag_value() [Karel Zak]
+ - add mnt_entry [Karel Zak]
+ - add mnt_match_{fstype,options} functions [Karel Zak]
+ - add mnt_optstr_* functions [Karel Zak]
+ - add mtab locking code [Karel Zak]
+ - add new debug messages [Karel Zak]
+ - add optls (options container) [Karel Zak]
+ - add support for userdata and work with VFS tree [Karel Zak]
+ - add test_version [Karel Zak]
+ - add version.c [Karel Zak]
+ - another Makefile.am fix [Karel Zak]
+ - cleanup cache flags and debug messages [Karel Zak]
+ - cleanup docs [Karel Zak]
+ - don't build tests by default [Karel Zak]
+ - export mnt_init_debug() [Karel Zak]
+ - fix Makefile.am [Karel Zak]
+ - fix mnt_fs_match_source() [Karel Zak]
+ - fix name of mnt_fs_get_*_optstr() [Karel Zak]
+ - fix some gtkdoc warnings [Karel Zak]
+ - merge vfs and fs options more carefully [Karel Zak]
+ - proper tests definition in Makefile.am [Karel Zak]
+ - read devno, ID and parent ID from /proc/self/mountinfo [Karel Zak]
+ - remove mnt_open_device() [Karel Zak]
+ - rename mnt_optls_iterate_options() [Karel Zak]
+ - update symbols table [Karel Zak]
+ - use mangle function from lib/ [Karel Zak]
+logger:
+ - add note about 'kern' to the man page [Karel Zak]
+login:
+ - check that after tty reopen we still work with a terminal [Karel Zak]
+ - don't link PAMed version with libcrypt [Karel Zak]
+ - use fd instead of pathname for update tty's owner and permissions [Yann Droneaud]
+losetup:
+ - support suffixes and hex numbers for --offset and --sizelimit [Karel Zak]
+lscpu:
+ - add CPU_EQUAL_S definition for old/obscure libc [Karel Zak]
+ - cleanup path_scanstr() [Karel Zak]
+ - cleanup used names [Karel Zak]
+ - fix CPU_EQUAL_S macro [Karel Zak]
+ - fix cpuid opcode detection [Henne Vogelsang]
+ - fix typo in lscpu.1 [Francesco Cosoleto]
+ - fix typo, "faild" to "failed" [Benno Schulenberg]
+ - gettextize "CPU(s)" [Francesco Cosoleto]
+ - improve --sysroot code [Karel Zak]
+ - replace LC_MESSAGES with LC_ALL in setlocate() [Francesco Cosoleto]
+ - use cpuset masks, read data for all CPUs [Karel Zak]
+messages:
+ - gettextize a few skipped or forgotten ones [Benno Schulenberg]
+mkswap:
+ - add a note that -p is uncecessary [Karel Zak]
+ - don't call blkdev_find_size() [Karel Zak]
+ - don't use too small user-specified page size [Karel Zak]
+ - fixed strtoll() usage [Yann Droneaud]
+ - more robust strtoull() usage [Karel Zak]
+ - move write_all() to include/writeall.h [Karel Zak]
+ - tweak the man page [Benno Schulenberg]
+ - use calloc(), remove obsolete v1 header usage [Karel Zak]
+ - zap bootbits on regular files [Karel Zak]
+mount:
+ - add notes about -o remount,ro,bind to mount.8 [Karel Zak]
+ - advise users to use "modprobe", not "insmod" [Karel Zak]
+ - automatically detect and loop-mount regular files [Karel Zak]
+ - detect when kernel silently adds MS_RDONLY flag [Petr Uzel]
+ - don't create loopdev for MS_BIND [Karel Zak]
+ - fix coding style [Karel Zak]
+ - fix information about XFS log buffers in mount.8 [Christoph Hellwig]
+ - fix memory leak [Petr Uzel]
+ - fix typo in comment [Petr Uzel]
+ - fix typos in mount.8 [Petr Uzel]
+ - more explicitly explain fstab usage in mount.8 [Karel Zak]
+ - more robust offset= and sizelimit= parsing [Karel Zak]
+ - posix option of vfat is obsolete [Yoshihiro Takahashi]
+ - properly ignore comments in /etc/filesystems [Mike Frysinger]
+ - report ambivalent FS detection, improve brute force detection [Karel Zak]
+ - revert ugly ENOMEDIUM support [Karel Zak]
+ - support suffixes for offset= and sizelimit= [Karel Zak]
+ - update documentation about barrier mount options [Jan Kara]
+ - use %u for uid_t and gid_t [Karel Zak]
+ - use auto-loopdev for all known filesystems [Karel Zak]
+ - use unmangle/mangle() from lib [Karel Zak]
+ - warn users that mtab is read-only [Karel Zak]
+namei:
+ - fix man page formatting [Vladimir Brednikov]
+partx:
+ - do not add nonexistent partitions [Phillip Susi]
+ - fix infinite loop [Karel Zak]
+po:
+ - merge changes [Karel Zak]
+ - update cs.po (from translationproject.org) [Petr Pisar]
+ - update es.po (from translationproject.org) [Santiago Vila Doncel]
+ - update eu.po (from translationproject.org) [Mikel Olasagasti Uranga]
+ - update id.po (from translationproject.org) [Arif E. Nugroho]
+ - update ja.po (from translationproject.org) [Makoto Kato]
+ - update list of files [Karel Zak]
+ - update nl.po (from translationproject.org) [Benno Schulenberg]
+ - update pl.po (from translationproject.org) [Jakub Bogusz]
+ - update vi.po (from translationproject.org) [Clytie Siddall]
+rdev:
+ - remove this deprecated command [Karel Zak]
+rtcwake:
+ - add --dry-run option [Karel Zak]
+ - add disable action for rtc alarm [Marek Otahal]
+ - add disable action to rtcwake man page [Marek Otahal]
+ - does miss the "off" option [Karel Zak]
+script:
+ - optionally compile with libutempter to update utmp [Karel Zak]
+ - preserve child exit status [Karel Zak]
+sfdisk:
+ - make sure writes make it to disk in write_partitions() [Bryn M. Reeves]
+swaplabel:
+ - fix typo in man page [Karel Zak]
+ - new command [Jason Borden]
+swapon:
+ - fix swapsize calculation [Karel Zak]
+ - move DELETED_SUFFIX to include/pathnames.h [Karel Zak]
+ - remove " (deleted)" from filenames from /proc/swaps [Karel Zak]
+ - use unmangle() for filenames from /proc/swaps [Karel Zak]
+taskset:
+ - add NLS support, use err.h, cleanup [Karel Zak]
+ - move NR_CPUS determination to lib/cpuset.c [Karel Zak]
+ - move bitmap routines to lib/cpuset.c [Karel Zak]
+ - use libc based cpu_set_t [Karel Zak]
+tests:
+ - add BeFS test image [Karel Zak]
+ - add blkid test for TuxOnIce [Karel Zak]
+ - add blkid tests for RAID1 [Karel Zak]
+ - add cpuset regression test [Karel Zak]
+ - add fdisk alignment tests [Karel Zak]
+ - add lscpu dump from Dell R710, 8-core Nehalem w/HT (RHEL 5.5) [Karel Zak]
+ - added tests against strtosize [Yann Droneaud]
+ - explicitly use --chunk and --metadata in MD test [Karel Zak]
+ - fix RAIDs tests [Karel Zak]
+ - fix and update old fdisk tests [Karel Zak]
+ - fix whitespaces [Karel Zak]
+ - mount cramfs read-only [Karel Zak]
+ - update FS test images [Karel Zak]
+ - update blkid test for raid1 [Karel Zak]
+ - update blkid/md-raid1-* tests [Karel Zak]
+ - update fdisk tests [Karel Zak]
+ - update ipcs/headers test [Francesco Cosoleto]
+ - update lscpu [Karel Zak]
+ - update lscpu test [Karel Zak]
+ - use POSIX locale [Yann Droneaud]
+textual:
+ - fix typos [Karel Zak]
+ - fix typos, and rephrase some things for clarity [Benno Schulenberg]
+ - slightly improve two README files [Benno Schulenberg]
+umount:
+ - add --fake option to umount(8) [Miklos Szeredi]
+ - do not sync() as the kernel does it by itself [Petr Uzel]
+unshare:
+ - drop potential euid privileges before exec [Karel Zak]
+uuidd:
+ - spell the plural of "UUID" consistently as "UUIDs" [Benno Schulenberg]
+wipefs:
+ - cleanup usage() and man page [Karel Zak]
+ - fix license (GPL -> GPLv2+) [Karel Zak]
+ - fix mem usage [Karel Zak]
+ - fix memory leaks [Karel Zak]
+ - ignore devices with partition table [Karel Zak]
+ - print warning is PT detected [Karel Zak]
+ - support suffixes for --offset [Karel Zak]
diff --git a/Documentation/releases/v2.19-ReleaseNotes b/Documentation/releases/v2.19-ReleaseNotes
new file mode 100644
index 000000000..4c6c1a000
--- /dev/null
+++ b/Documentation/releases/v2.19-ReleaseNotes
@@ -0,0 +1,660 @@
+Util-linux 2.19 Release Notes (10-Feb-2011)
+===========================================
+
+The util-linux-ng project has been renamed back to util-linux.
+
+Release highlights
+------------------
+
+lsblk(8):
+ - this NEW COMMAND lists information about all or selected block devices in
+ tree-like format.
+
+partx(8):
+ - this command has been rewritten to use libblkid for partition tables
+ parsing. It supports aix, bsd, dos, gpt, mac, minix, sgi, solaris_x86, sun,
+ ultrix and unixware now.
+
+ - supports new command line option "--show" to list partitions in new format
+
+ - prints UUID and name for GPT and mac partitions
+
+findmnt(8):
+ - supports new command line option "--submounts" to list all submounts for
+ selected mountpoint(s)
+
+agetty(8):
+ - supports new command line options "-c" and "-s" to reuse already initialized
+ tty cflags and existing baud rate
+
+mount(8), umount(8):
+ - could be linked with libmount (--enable-libmount-mount) to manage userspace
+ mount options outside /etc/mtab on systems where the file is a symlink to
+ /proc/mounts. (EXPERIMENTAL)
+
+losetup(8), mount(8):
+ - uses /sys/dev/block/<device>/loop/backing_file rather than loopdev ioctls
+ (requires kernel >= 2.6.37)
+
+fsck(8):
+ - supports new command line option "-l" to lock whole-disk device by
+ exclusive flock(2). This option is recommended when more fsck(8) instances
+ are executed in the same time.
+
+rtcwake(8):
+ - supports new mode "show" to print the current RTC alarm time
+
+fstrim(8):
+ - this NEW COMMAND allows to discard unused blocks on a mounted filesystem
+ (wrapper for FITRIM ioctl)
+
+swapon(8):
+ - supports new options "discard" and "nofail"
+
+blkid(8):
+ - low-level probing (-p) returns "8" exit code for ambivalent probing results
+
+libmount:
+ - include file has been renamed from mount/mount.h to libmount/libmount.h
+
+
+Changes between v2.18 and v2.19
+-------------------------------
+
+ For more details see ChangeLog files at:
+ ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.19/
+
+addpart:
+ - code consolidation [Karel Zak]
+agetty:
+ - Use EXIT_* and add noreturn attribute [Marek Polacek]
+ - add -c to reuse cflags [Karel Zak]
+ - add -s to reuse existing baud rate [Karel Zak]
+ - fix -s option (baud rate setup) [Karel Zak]
+ - use ignore_result() or write(1, ...) [Karel Zak]
+ - use nl_langinfo() [Karel Zak]
+ - don't wipe CLOCAL flag [Karel Zak]
+blkid:
+ - add new return code 8 for ambivalent low-level probing result [Karel Zak]
+ - add note about PART_ENTRY_ tags to blkid.8 [Karel Zak]
+ - don't print devname if nothing detected [Karel Zak]
+ - don't return PART_ENTRY_* if partition is empty [Karel Zak]
+ - dynamically allocate devicename array [Eric Sandeen]
+blockdev:
+ - add BLKDISCARDZEROES [Karel Zak]
+ - fix typo in blockdev.8 [Karel Zak]
+ - sync man page with code [Karel Zak]
+build-sys:
+ - add --enable-libmount-mount [Karel Zak]
+ - add mesg to .gitignore [Karel Zak]
+ - add missing header [Karel Zak]
+ - add rpmatch.h to Makefile.am [Karel Zak]
+ - check for loff_t, it may not exist [Fabian Groffen]
+ - check for paths.h [Fabian Groffen]
+ - cleanup autogen.sh [Karel Zak]
+ - drop shlibs/Makefile.am that only adds SUBDIRS [Diego Elio 'Flameeyes' Pettenò]
+ - drop the getsize test out of Makefile.am [Diego Elio 'Flameeyes' Pettenò]
+ - enable lsblk and libmount for Linux only [Karel Zak]
+ - explicitly check for slang.h [Karel Zak]
+ - fix lsblk building [Karel Zak]
+ - ignore generated ltmain.sh [Karel Zak]
+ - improve check for crypt [Fabian Groffen]
+ - link with socketlibs when necessary [Fabian Groffen]
+ - man aliases don't depend on original man page [Diego Elio 'Flameeyes' Pettenò]
+ - provide missing strnlen from strutils [Fabian Groffen]
+ - release++ (v2.19-rc1) [Karel Zak]
+ - release++ (v2.19-rc2) [Karel Zak]
+ - release++ (v2.19-rc3) [Karel Zak]
+ - remove generated po/POTFILES.in [Karel Zak]
+ - remove unnecessary header [Karel Zak]
+ - require automake 1.10 as gtk-doc requires it anyway [Diego Elio 'Flameeyes' Pettenò]
+ - shell syntax fix in autogen.sh [Sami Kerola]
+ - use WORDS_BIGENDIAN to determine platform byte-order [Fabian Groffen]
+ - use generated libtool-2 stuff [Karel Zak]
+ - use the silent-rules prefix when generating man pages. [Diego Elio 'Flameeyes' Pettenò]
+cal:
+ - follow HAVE_LANGINFO [Karel Zak]
+ - use EXIT_* and program_invocation_short_name [Karel Zak]
+cfdisk:
+ - close the program when terminal isn't present [Francesco Cosoleto]
+ - data type mismatch, and other, compiler warning fixes [Sami Kerola]
+ - don't use size of device based on cylinders [Karel Zak]
+ - fix --with-slang [Karel Zak]
+ - fix n+1 again [Karel Zak]
+ - fix n+1 bug in error message [Karel Zak]
+ - get_string not calculating correct limits [Karel Zak]
+ - search for ncursesw/ncurses.h [Mike Frysinger]
+chfn:
+ - Use EXIT_* and err() [Marek Polacek]
+chrt:
+ - Add noreturn attribute to show_usage() function [Marek Polacek]
+chsh:
+ - don't suggest ypchsh [Karel Zak]
+ - use EXIT_* and err.h [Karel Zak]
+col:
+ - use err.h and EXIT_* macros [Karel Zak]
+ - use xalloc for memory allocation [Davidlohr Bueso]
+column:
+ - EOF handling bug [Sami Kerola]
+ - code readability improvements [Sami Kerola]
+ - data type mismatch compiler warning fixes [Sami Kerola]
+ - error messaging & exit codes [Sami Kerola]
+ - fix column.1 typo [Davidlohr Bueso]
+ - getopt_long and new help output [Sami Kerola]
+ - segfault on empty input [Karel Zak]
+ - update manual page to match column switches [Sami Kerola]
+ctrlaltdel:
+ - use err() instead of fprintf() and exit() [Marek Polacek]
+ddate:
+ - fix typo in ddate.1 [Davidlohr Bueso]
+ - revert man page typo [Karel Zak]
+delpart:
+ - code consolidation [Karel Zak]
+disk-utils:
+ - fix manpage typos [Davidlohr Bueso]
+dmesg:
+ - fix memory leak in dmesg(1). [Davidlohr Bueso]
+ - use strtol_or_err instead of atoi [Davidlohr Bueso]
+docs:
+ - add blkid --list-all to TODO [Karel Zak]
+ - add COPYING.lib* files [Karel Zak]
+ - add note about agetty to TODO [Karel Zak]
+ - add note about sfdisk to TODO [Karel Zak]
+ - add v2.19 ReleaseNotes [Karel Zak]
+ - correct spelling mistakes in DEPRECATED file [Jon Grant]
+ - fix typo [Davidlohr Bueso]
+ - fix typos in man pages [Karel Zak]
+ - make it easier to find mail list address [Alexander Shishkin]
+ - mark line(1) as deprecated [Karel Zak]
+ - remove ipc.texi (info with IPC API docs) [Karel Zak]
+ - update AUTHORS file [Karel Zak]
+ - update DEPRECATED file [Karel Zak]
+ - update ReleaseNotes [Karel Zak]
+ - update TODO file [Davidlohr Bueso]
+ - update TODO file [Karel Zak]
+ - update TODO [Karel Zak]
+ - update v2.19 ReleaseNotes [Karel Zak]
+ - use rpmatch() for sfdisk [Karel Zak]
+fallocate:
+ - fix build failure with old linux headers [Mike Frysinger]
+ - fix typo [Karel Zak]
+fdisk:
+ - add description for partition type 0x27 [Karel Zak]
+ - add exFAT to MBR partition type 0x7 [Jon Grant]
+ - don't keep internally device size in 512-byte sectors [Karel Zak]
+ - eliminate redundant call to open() [Markus Rinne]
+ - fix alignment check for non-512-byte logical sectors [Karel Zak]
+ - fix freespace boundaries calculation on SGI disklabel [Karel Zak]
+ - fix use of non portable type [François Revol]
+ - more meaningful error messages (use err.h) [Francesco Cosoleto]
+ - quit with a single CTRL-D, confirm if necessary [Francesco Cosoleto]
+ - re-print prompt after maybe_exit() [Karel Zak]
+ - replace fatal(usage) with a separate usage() function [Francesco Cosoleto]
+ - update MBR after ID change [Karel Zak]
+ - use canonicalized names for -l (and sfdisk -d) [Karel Zak]
+ - use xalloc lib [Francesco Cosoleto]
+findmnt:
+ - add --submounts option [Karel Zak]
+ - add /etc/fstab.d support [Karel Zak]
+ - add MAJ MIN [Karel Zak]
+ - add support for fs-root (subvolumes and bind mounts) [Karel Zak]
+ - apply new changes from tt.c [Karel Zak]
+ - don't swap source and target if the source is a tag [Karel Zak]
+ - fix exit code [Karel Zak]
+ - fix manpage typos [Davidlohr Bueso]
+ - fix support for -a option [Milan Broz]
+ - follow HAVE_LANGINFO [Karel Zak]
+ - use new libmount functions [Karel Zak]
+ - use new tab parsing API [Karel Zak]
+flock:
+ - fix file number in flock.1 man page [Patrice Dumas]
+ - properly report exec() errors [Karel Zak]
+ - use more useful example in flock.1 [Jakob Unterwurzacher]
+fsck:
+ - add support for whole-disk locking (-l option) [Karel Zak]
+ - improve whole-disk check, detect stacked devices [Karel Zak]
+ - include c.h, fallback for PATH_MAX [Karel Zak]
+ - inform about nonexistent devices in verbose mode [Karel Zak]
+ - returns proper code on exec() error [Karel Zak]
+fstrim:
+ - add new command [Lukas Czerner]
+ - fix typo [Karel Zak]
+hexdump:
+ - remove od functionality in favor to GNU coreutils od [Sami Kerola]
+hwclock:
+ - [m68k] unbreak FTBFS with recent (>= 2.4.18?) kernels [Thorsten Glaser]
+ - allow setting of RTC when it contains invalid data [Peter Tyser]
+include:
+ - [c.h] add unused attribute to ignore_result() [Karel Zak]
+ - [c.h] fix __alloc_size__ test [Karel Zak]
+ - [c.h] add fallback for alloc_size attributes [Karel Zak]
+ - [c.h] move ignore_result() to gcc-only block [Karel Zak]
+ - [tt] enlarge output buffer [Karel Zak]
+ - [xalloc.h] include string.h [Marek Polacek]
+ - add fallback for rpmatch() [Francesco Cosoleto]
+ - cleanup blkdev.h [Karel Zak]
+ - emulate dirfd when necessary [Fabian Groffen]
+ - fix list.h ifdefs [Karel Zak]
+ - [xalloc] general purpose memory allocation handling wrappers [Davidlohr Bueso]
+ipc:
+ - remove .info file [Karel Zak]
+last:
+ - Use EXIT_* and err() [Marek Polacek]
+ - use xalloc lib [Davidlohr Bueso]
+lib:
+ - [c] add ignore_result() [Karel Zak]
+ - [env] consolidate safe_getenv() usage [Karel Zak]
+ - [ismounted] don't wast time with mtab is /proc/mounts used [Karel Zak]
+ - [strutils] general purpose string handling functions [Davidlohr Bueso]
+ - [strutils] move strmode() from namei.c to strutils.c [Karel Zak]
+ - [tt] add TT_FL_RIGHT, add columns list parser [Karel Zak]
+ - [tt] fix alignment of the last tree child [Karel Zak]
+ - [xalloc] add xstrdup() [Karel Zak]
+ - [xalloc] don't use hardcoded return code [Karel Zak]
+ - add fallback for nl_langinfo() [Karel Zak]
+ - add test program to canonicalize.c [Karel Zak]
+ - add wrappers for "at" functions [Karel Zak]
+ - fix mange() and unmangle() to handle NULL [Karel Zak]
+ - fix syntax error in blkdev.c [Karel Zak]
+lib/tt:
+ - fix langinfo build break [Davidlohr Bueso]
+libblkid:
+ - 256MiB is min size of btrfs [Karel Zak]
+ - NTFS volume label not found [Karel Zak]
+ - add LINHIB0001 signature to swap prober [Karel Zak]
+ - add blkdev.h to blkidP.h [Karel Zak]
+ - add blkid_probe_get_sectors() [Davidlohr Bueso]
+ - add magic to vfat [Jeroen Oortwijn]
+ - add nilfs2 filesystem superblock probe [Jiro SEKIBA]
+ - add searching in attributes dir to BeFS [Jeroen Oortwijn]
+ - add signature to FAT32 fsinfo block [Jeroen Oortwijn]
+ - cache is incorrectly revalidated [Karel Zak]
+ - check for swap or DM cow on small devices [Karel Zak]
+ - conditionalise parts from blkid/topology for Linux [Fabian Groffen]
+ - consolidate magic strings detection code [Karel Zak]
+ - don't ignore zero for SBMAGIC_OFFSET [Karel Zak]
+ - don't probe directories [Karel Zak]
+ - fix MBR detection on iPod and cleanup vfat code [Karel Zak]
+ - fix endian conversion bug in NILFS [Karel Zak]
+ - fix memory leak [Igor Bazhitov]
+ - fix typo filesystem name nilfs to nilfs2 [Jiro SEKIBA]
+ - remove dead code section [Valerie Aurora]
+ - remove unnecessary __UCLIBC__ check [Mike Frysinger]
+ - remove unused variable [Karel Zak]
+ - set tolerant flag for HFS [Alexandre Peixoto Ferreira]
+ - support LIBBLKID_DEBUG= env. [Karel Zak]
+ - use PRId64 in PT parser [Karel Zak]
+ - wrong PT detection on RAID0 [Karel Zak]
+libmount:
+ - _SC_GETPW_R_SIZE_MAX portability issue [Karel Zak]
+ - add /etc/fstab.d support [Karel Zak]
+ - add DBG() to optstr.c [Karel Zak]
+ - add FS detection [Karel Zak]
+ - add LIBMOUNT_{MTAB,FSTAB} [Karel Zak]
+ - add MNT_FS_SWAP flag [Karel Zak]
+ - add and copy FS internal flags [Karel Zak]
+ - add debug messages and fix typos in tab_update [Karel Zak]
+ - add first part of high-level API [Karel Zak]
+ - add functions for mount.<type> helpers [Karel Zak]
+ - add functions get mtab/utab paths [Karel Zak]
+ - add low-level API for umount [Karel Zak]
+ - add mnt_context [Karel Zak]
+ - add mnt_context_get_{fstab,mtab}() [Karel Zak]
+ - add mnt_context_get_{source,target,fstype} [Karel Zak]
+ - add mnt_context_is_* functions [Karel Zak]
+ - add mnt_copy_fs() and mnt_fs_set_root() [Karel Zak]
+ - add mnt_fs_get_root() [Karel Zak]
+ - add mnt_fs_prepend_optstr() [Karel Zak]
+ - add mnt_get_writable_mtab_path() [Karel Zak]
+ - add mnt_optstr_fix_user [Karel Zak]
+ - add mnt_optstr_get_mountflags() [Karel Zak]
+ - add mnt_optstr_get_userspace_mountflags() [Karel Zak]
+ - add mnt_optstr_prepend_option() [Karel Zak]
+ - add mnt_split_optstr() [Karel Zak]
+ - add mnt_tab_find_pair() [Karel Zak]
+ - add mnt_tab_parse_mtab() [Karel Zak]
+ - add mnt_tab_parse_stream() [Karel Zak]
+ - add mnt_tab_set_parser_errcb() [Karel Zak]
+ - add mntent.h compatible stuff [Karel Zak]
+ - add mount(2) and /sbin/mount.<type> support [Karel Zak]
+ - add mount(8) sample [Karel Zak]
+ - add mtab managment to context API [Karel Zak]
+ - add new debug messages, fix umount return code [Karel Zak]
+ - add new psetudo filesystems [Karel Zak]
+ - add new pseudo filesystems [Karel Zak]
+ - add routines for uid=, git= and context= translation [Karel Zak]
+ - add support for mtab managment [Karel Zak]
+ - add uhelper=, improve mnt_split_optstr() [Karel Zak]
+ - add umount(2) support [Karel Zak]
+ - add unit test for mnt_copy_fs() [Karel Zak]
+ - add unmangle/mangle() functions to API [Karel Zak]
+ - add utils for work with uid/gid [Karel Zak]
+ - add utils to get FS root/mountpoint [Karel Zak]
+ - add {start,end}swith() functions [Karel Zak]
+ - allow to overwrite mtab/fstab paths [Karel Zak]
+ - allows to swap source and target [Karel Zak]
+ - always store rw/ro flags to mtab [Karel Zak]
+ - better permissions and optstr evaliation [Karel Zak]
+ - better work with mtab options [Karel Zak]
+ - clean mnt_update_* target usage [Karel Zak]
+ - clean up lock.c [Karel Zak]
+ - clean up mnt_fs_set_optstr() [Karel Zak]
+ - clean up mount.sym file [Karel Zak]
+ - clean up mountflags usage [Karel Zak]
+ - cleanup API and docs [Karel Zak]
+ - cleanup API, remove typedef [Karel Zak]
+ - cleanup MS_RDONLY usageand mnt_update_* symbols [Karel Zak]
+ - cleanup context API [Karel Zak]
+ - cleanup debug flags [Karel Zak]
+ - cleanup fstab parser, improve mnt_tab errcb usage [Karel Zak]
+ - cleanup helper initialization API [Karel Zak]
+ - cleanup helpers support [Karel Zak]
+ - cleanup high-level mount API [Karel Zak]
+ - cleanup internal API [Karel Zak]
+ - cleanup lock API [Karel Zak]
+ - cleanup mangle() usage [Karel Zak]
+ - cleanup mount.h [Karel Zak]
+ - cleanup mount.sym [Karel Zak]
+ - cleanup return codes (cache.c) [Karel Zak]
+ - cleanup return codes (fs.c) [Karel Zak]
+ - cleanup return codes (iter.c) [Karel Zak]
+ - cleanup return codes (lock.c) [Karel Zak]
+ - cleanup return codes (optmap.c) [Karel Zak]
+ - cleanup return codes (optstr.c) [Karel Zak]
+ - cleanup return codes (tab.c) [Karel Zak]
+ - cleanup return codes (tab_parse.c) [Karel Zak]
+ - compile tests [Karel Zak]
+ - copy mount attrs from utab to context [Karel Zak]
+ - correctly use "none" values [Karel Zak]
+ - do not check for EAGAIN after flock() [Petr Uzel]
+ - don't compile tests by default [Karel Zak]
+ - don't export some cache.c files [Karel Zak]
+ - don't prepare update if syscall failed [Karel Zak]
+ - don't return old data from optls iterator [Karel Zak]
+ - don't store filename to mnt_tab [Karel Zak]
+ - don't use NULL pointer in mntenv [Karel Zak]
+ - extend mnt_update_* API [Karel Zak]
+ - fix Makefile and tests [Karel Zak]
+ - fix comment for mnt_unlock_file() [Karel Zak]
+ - fix context mount test [Karel Zak]
+ - fix datatype for mountflags [Karel Zak]
+ - fix debug message [Karel Zak]
+ - fix merge_optstr (do not truncate 3 trailing characters) [Petr Uzel]
+ - fix mnt_optstr_apply_flags() to work with optional variables [Karel Zak]
+ - fix mnt_optstr_remove_option_at() [Karel Zak]
+ - fix mount helpers call [Karel Zak]
+ - fix mount.h includes [Karel Zak]
+ - fix optstr test [Karel Zak]
+ - fix tab_update test program [Karel Zak]
+ - fix to work with btrfs subvolume user mounts [Karel Zak]
+ - fix user= usage [Karel Zak]
+ - fix utab file and dir modes, add new debug messages [Karel Zak]
+ - implement mnt_context_subst_optstr() [Karel Zak]
+ - improve an rename API for mtab management [Karel Zak]
+ - improve assert() and DBG() usage [Karel Zak]
+ - improve debugging, fix optstr prepend [Karel Zak]
+ - improve fstab/mtab options usage [Karel Zak]
+ - improve function for work with mtab paths [Karel Zak]
+ - improve mnt_get_fs_root() and mnt_get_mountpoint() [Karel Zak]
+ - improve parser return codes [Karel Zak]
+ - improve parsers return codes [Karel Zak]
+ - improve status check, minor cleanups [Karel Zak]
+ - minor cleanup in optstr.c [Karel Zak]
+ - minor fixes [Karel Zak]
+ - minor fixes in cache.c [Karel Zak]
+ - more robust flock() usage [Karel Zak]
+ - optimize blkid_devno_to_devname() [Karel Zak]
+ - properly canonicalize source and target [Karel Zak]
+ - remove fs and tab printf functions [Karel Zak]
+ - remove mnt_tab_strerr() [Karel Zak]
+ - remove unnecessary options container [Karel Zak]
+ - remove unused mnt_strconcat3() [Karel Zak]
+ - remove utab from API, update tests [Karel Zak]
+ - rename mount.h to libmount.h [Karel Zak]
+ - rename mount.sym -> libmount.sym [Karel Zak]
+ - rewrite DBG() macro [Karel Zak]
+ - rewrite mountinfo/fstab parsers to use sscanf() [Karel Zak]
+ - rewrite optstr translation [Karel Zak]
+ - rewrite update [Karel Zak]
+ - split context.c [Karel Zak]
+ - split mnt_context_do_mount() [Karel Zak]
+ - support /{proc,etc}/filesystems [Karel Zak]
+ - update mount.sym [Karel Zak]
+ - update mount.{h,sym} [Karel Zak]
+ - update mtab after mount(2) [Karel Zak]
+ - update tests [Karel Zak]
+ - use attribute __format__ for debug routines [Karel Zak]
+ - use better format for utab, improve bind mounts [Karel Zak]
+ - use mnt_fs for mtab API [Karel Zak]
+ - use separate buffer for userspace options, add mount attributes [Karel Zak]
+libuuid:
+ - do not check for EAGAIN after flock() [Petr Uzel]
+ - fix locking of clock state counter file [Petr Uzel]
+login:
+ - fix "ignoring return value" errors [Karel Zak]
+ - use EXIT_* and err.h, clean up return codes [Marek Polacek]
+ - use EXIT_* in checktty() [Karel Zak]
+ - use xalloc lib [Davidlohr Bueso]
+look:
+ - fix conflict between locally defined err() and glibc's version [Davidlohr Bueso]
+ - fix memory leak in look(1) [Davidlohr Bueso]
+losetup:
+ - do not distinguish between malloc and realloc [Tobias Klauser]
+ - remove unnecessary fstab.h include [Karel Zak]
+ - use /sys/dev/block/.../loop/backing_file [Karel Zak]
+ - use stdout and return 0 for --help [Karel Zak]
+lsblk:
+ - add --nodeps [Karel Zak]
+ - add new utility [Milan Broz]
+ - rename "RA" column to "RE" [Karel Zak]
+ - small grammar touches to the man page [Benno Schulenberg]
+ - use "RM" for removable [Karel Zak]
+lscpu:
+ - add -x and {On,Off}-line CPU(s) mask/list [Karel Zak]
+ - add byte order and bogoMIPS information [Davidlohr Bueso]
+ - add description of --sysroot option to man page, plus grammar touches [Benno Schulenberg]
+ - avoid len = 0 as a consequence of maxcpus = 0 [Gerrit Renker]
+ - cleanup usage() [Karel Zak]
+ - fix 64bit CPU detection [Karel Zak]
+ - really use 'mode' argument in path_fopen() [Petr Uzel]
+ - support offline CPUs [Karel Zak]
+ - support sysfs without cpu/online file [Karel Zak]
+ - update lscpu.1 to include new additions. [Davidlohr Bueso]
+ - use GPLv2+ [Karel Zak]
+man:
+ - add russian translation of ddate.1 [Karel Zak]
+mesg:
+ - Use EXIT_* and discard K&R style declaration. [Marek Polacek]
+ - change error exit code from 1 to >1 [Francesco Cosoleto]
+misc-utils:
+ - use new xmalloc() wrapper [Davidlohr Bueso]
+mkfs:
+ - add `mkfs.ext4` to section SEE ALSO of `mkfs.8`. [Paul Menzel]
+ - general cleanups [Davidlohr Bueso]
+mkfs.cramfs:
+ - use symbolic exit codes [Sami Kerola]
+more:
+ - use xalloc for memory allocation [Davidlohr Bueso]
+mount:
+ - Add more pseudo filesystems. [Davidlohr Bueso]
+ - Don't call canonicalize_*(SPEC) for 9p [Sven Eckelmann]
+ - add info about type.subtype to /sbin/mount.<type> API description [Karel Zak]
+ - add mnt_init_debug() [Karel Zak]
+ - add note about context= remount to mount.8 [Karel Zak]
+ - add note about subtypes to fstab.5 [Karel Zak]
+ - add rootcontext= for tmpfs on SELinux boxes [Karel Zak]
+ - avoid starting a man page line with a single quote [Chris Frost]
+ - be more explicit about --move in mount.8 [Karel Zak]
+ - better describe UUIDs usage in man pages [Karel Zak]
+ - canonicalize paths in HAVE_LIBMOUNT_MOUNT code [Karel Zak]
+ - clean up fstab.5 [Karel Zak]
+ - don't canonicalize "spec" with --no-canonicalize option [Miklos Szeredi]
+ - don't use auto-clear loopdev if mtab is available [Karel Zak]
+ - fix "mount -a" for auto-clear loopdevs and /proc/mounts [Karel Zak]
+ - fix atime description in mount.8 man page [Karel Zak]
+ - fix gcc warning [Karel Zak]
+ - fix mount.8, shortname=mixed is now default for vfat [Petr Uzel]
+ - fix parsing offset= followed by more options [Petr Uzel]
+ - fix reference to cifs-utils in mount.8 [Karel Zak]
+ - get most recently mounted fs from /etc/mtab. [Valerie Aurora]
+ - handle filesystems with subtype [Miklos Szeredi]
+ - ignore *context= options on remount [Karel Zak]
+ - improve verbose info [Karel Zak]
+ - mark die() as nonreturn [Karel Zak]
+ - read /sys for loopdev backing file [Karel Zak]
+ - read mtab by libmount [Karel Zak]
+ - remove warning about FS detection from mount.1 [Karel Zak]
+ - rewrite HAVE_LIBMOUNT_MOUNT code [Karel Zak]
+ - rewrite is_readonly() [Karel Zak]
+ - sanity check mount flags for MS_PROPAGATION [Karel Zak]
+ - update ext{3,4} options in mount.8 [Karel Zak]
+ - update relatime description in mount.8 [Karel Zak]
+ - use libmount for mtab/utab updates [Karel Zak]
+ - use utimensat(AT_FDCWD) rather than open()+futimens() [Karel Zak]
+ - use verbose info for HAVE_LIBMOUNT_MOUNT only [Karel Zak]
+namei:
+ - fix memory leak in namei(1) [Davidlohr Bueso]
+ - parse all path arguments when an optarg path will fail [Sami Kerola]
+newgrp:
+ - Use err() and EXIT_* [Marek Polacek]
+partx:
+ - add mac partition table support [Davidlohr Bueso]
+ - add sun partition table support [Davidlohr Bueso]
+ - cleanup and add columns [Karel Zak]
+ - complete rewrite [Davidlohr Bueso, Karel Zak]
+ - fix authors section in man page [Davidlohr Bueso]
+ - fix typo in partx.8 [Davidlohr Bueso]
+ - integrate support for mac and sun partitions, based on kpartx. [Davidlohr Bueso]
+ - normalize the punctuation of man page, and improve grammar here and there [Benno Schulenberg]
+ - tiny change in usage() [Karel Zak]
+pg:
+ - use xalloc for memory allocation [Davidlohr Bueso]
+po:
+ - add gl.po (from translationproject.org) [Fran Diéguez]
+ - add zh_TW.po (from translationproject.org) [Wei-Lun Chao]
+ - fix note about license [Karel Zak]
+ - merge changes [Karel Zak]
+ - refresh gl and zh_TW [Karel Zak]
+ - update after rename [Karel Zak]
+ - update cs.po (from translationproject.org) [Petr Písař]
+ - update da.po (from translationproject.org) [Joe Hansen]
+ - update fr.po (from translationproject.org) [David Prévot]
+ - update fr.po (from translationproject.org) [Milan Bouchet-Valat]
+ - update hu.po (from translationproject.org) [Gabor Kelemen]
+ - update ja.po (from translationproject.org) [Makoto Kato]
+ - update nl.po (from translationproject.org) [Benno Schulenberg]
+ - update pl.po (from translationproject.org) [Jakub Bogusz]
+ - update vi.po (from translationproject.org) [Clytie Siddall]
+portability:
+ - fix mntent.h and pty.h usage [François Revol]
+ - use standard constants [François Revol]
+renice:
+ - improve messages specifying what ID is referring to [Francesco Cosoleto]
+ - make some functions static [Francesco Cosoleto]
+ - remove hardcoded program name using warn() and warnx() [Francesco Cosoleto]
+ - reverse %s position in error messages [Francesco Cosoleto]
+ - rewrite usage() [Karel Zak]
+ - update man page (nice rlimit was added to kernel) [Francesco Cosoleto]
+rev:
+ - coding style, various fixes [Davidlohr Bueso]
+ - use xalloc for memory allocation [Davidlohr Bueso]
+rtcwake:
+ - add 'show' mode for rtc alarm [Marek Otahal]
+ - use err.h routines [Karel Zak]
+schedutils:
+ - fix typos [Davidlohr Bueso]
+ - remove unneeded header files [Davidlohr Bueso]
+sfdisk:
+ - add option to use maximum partition size [Karel Zak]
+ - save errno before calling perror [Forest Bond]
+shutdown:
+ - Use EXIT_* [Marek Polacek]
+simpleinit:
+ - Use EXIT_* [Marek Polacek]
+ - move old init stuff to separate directory [Karel Zak]
+swapon:
+ - Canonicalize swap device [Alexey Gladkov]
+ - Document btrfs limitation with swapfiles [Jeff Mahoney]
+ - add "discard" support [Hugh Dickins]
+ - add support for "nofail" fstab mount option [Karel Zak]
+ - better text for "discard", note about swapon in fstab.5 [Karel Zak]
+ - make needlessly global variables static [Tobias Klauser]
+ - use EXIT_SUCCESS constants [Davidlohr Bueso]
+ - warn if file owner is not root [Karel Zak]
+swpaon:
+ - use canonicalized devnames on -s output [Karel Zak]
+sys-utils:
+ - fix manpage typos [Davidlohr Bueso]
+ - make use xalloc wrappers [Davidlohr Bueso]
+tailf:
+ - fixed timing issue that could cause duplicate data output [Dima Kogan]
+ - use xalloc for memory allocation [Davidlohr Bueso]
+taskset:
+ - proper numbers parsing [Karel Zak]
+tests:
+ - add regression tests [Davidlohr Bueso]
+ - add basic libmount tests for mounting [Karel Zak]
+ - add blkid test for partitioned RAID0 [Karel Zak]
+ - add libmount lock test [Karel Zak]
+ - add libmount mtab tests [Karel Zak]
+ - add libmount mtab update test [Karel Zak]
+ - add libmount optstr.c tests [Karel Zak]
+ - add libmount tab_parse.c tests [Karel Zak]
+ - add libmount tags tests [Karel Zak]
+ - add libmount utab tests [Karel Zak]
+ - add libmount utils.c tests [Karel Zak]
+ - add nilfs2 test for libblkid [Jiro SEKIBA]
+ - add quoted optstr [Karel Zak]
+ - add utab update tests [Karel Zak]
+ - check for mtab [Karel Zak]
+ - fix blkid MD test (missing tailing whitespaces) [Karel Zak]
+ - fix libmount test [Karel Zak]
+ - fix strtosize() test [Karel Zak]
+ - ignore device name used in some fdisk and blkid tests [Francesco Cosoleto]
+ - improve libmount context mount and umount test [Karel Zak]
+ - improve subtests initialization [Karel Zak]
+ - refresh libmount fstab parser tests [Karel Zak]
+ - skip non-compiled libmount tests [Karel Zak]
+ - truncate BeFS and tuxonice images [Karel Zak]
+ - update lscpu tests [Karel Zak]
+ - update lscpu tests on x86_64 [Karel Zak]
+ - update namei regression test [Karel Zak]
+ - use findmnt(8) for mount --move test [Karel Zak]
+ - use findmnt(8) for remount test [Karel Zak]
+ - use {src,build}dir variables for tests [Karel Zak]
+ul:
+ - fix memory leak. [Davidlohr Bueso]
+ - use atexit() to deallocate buffer, print errors by err() [Karel Zak]
+ - use xalloc for memory allocation [Davidlohr Bueso]
+umount:
+ - add HAVE_LIBMOUNT_MOUNT code [Karel Zak]
+ - call is_loop_autoclear() for all loopdevs [Karel Zak]
+ - umount -r segfault [Karel Zak]
+ - use strtosize() for offset= [Karel Zak]
+unshare:
+ - fix SIGSEGV on invalid command line option [Alexey Gladkov]
+uuidd:
+ - correctly report number of generated subsequent UUIDs [Petr Uzel]
+ - fix -n usage [Petr Uzel]
+ - fix uuidd -r -n 2 [Petr Uzel]
+ - increase connection backlog size to SOMAXCONN [Petr Uzel]
+ - mention -q in uuidd.8 [Petr Uzel]
+ - use UUIDD_OP_BULK_*_UUID named constants [Petr Uzel]
+ - use UUID_STR_LEN and UUID_LEN [Petr Uzel]
+ - use daemon(3) library function [Petr Uzel]
+ - use die() where possible [Petr Uzel]
+ - use write_all from include/writeall.h [Petr Uzel]
+vipw:
+ - fix warn_unused_result gcc warning [Karel Zak]
+ - use EXIT_* and err() [Marek Polacek]
+wall:
+ - Use EXIT_* and err() [Marek Polacek]
+ - add usage function [Davidlohr Bueso]
+ - document -n option [Davidlohr Bueso]
+ - fix coding style [Karel Zak]
+ - remove progname [Karel Zak]
+ - use xalloc lib [Davidlohr Bueso]
+wipefs:
+ - fail if more device arguments specified [Milan Broz]
+ - use write_all from include/writeall.h [Petr Uzel]
+
diff --git a/Documentation/releases/v2.20-ReleaseNotes b/Documentation/releases/v2.20-ReleaseNotes
new file mode 100644
index 000000000..ceb149e3a
--- /dev/null
+++ b/Documentation/releases/v2.20-ReleaseNotes
@@ -0,0 +1,848 @@
+Util-linux 2.20 Release Notes
+=============================
+
+Release highlights
+------------------
+
+agetty(8):
+ - mingetty features have been merged to agetty
+
+chrt(1), taskset(1):
+ - supports new command line option "--all-tasks" to set or retrieve the
+ scheduling attributes of all the tasks (threads) for a given PID
+
+dmesg(1):
+ - supports new command line options: --clear, --console-on, --console-off,
+ --ctime, --decode, --facility=<list>, --level=<list>, --show-delta,
+ --notime, --kernel and --userspace
+
+fdisk(8):
+ - improved dialogs to be more user-friendly
+
+findmnt(8), partx(8), lsblk(8)
+ - support new command line option "--pairs" to enable key="value"
+ output format
+
+findmnt(8):
+ - supports new command line options "--poll" and "--timeout" to monitor
+ /proc/self/mountinfo changes
+
+ionice(1):
+ - supports human-readable scheduling class names, for example:
+ ionice -c best-effort $PID
+
+kill(1):
+ - supports new command line option "-q <sigval>" to use sigqueue(2)
+ - supports real-time signals in formats RT<n>, RTMIN+<n> and RTMAX-<n>
+
+libmount:
+ - the API officially stable
+
+lsblk(8):
+ - supports new columns:
+ TYPE - device type
+ RQ-SIZE - queue request size
+ STATE - device state (e.g. running, suspended)
+ DALIGN - discard alignment offset
+ DISC-GRAN - discard granularity
+ DISC-MAX - discard max bytes
+ DISC-ZERO - discard zeroes data
+ - supports new command line option "-D" to print device discard topology
+
+lscpu(8):
+ - improved support for s390 boxes
+
+mkfs.minix:
+ - supports minix version 3
+
+mountpoint(1):
+ - this NEW COMMAND is libmount based re-implementation of mountpoint(1) from
+ sysvinit suite
+
+simpleinit:
+ - this set of deprecated utils has been REMOVED
+
+Wall(1):
+ - support new command line option "--timeout" to specify write timeout to
+ terminals in seconds.
+
+It's not supported to link with external (e.g. from e2fsprogs) libblkis and
+libuuid any more.
+
+
+Stable maintenance releases between v2.19 and v2.20
+---------------------------------------------------
+
+util-linux 2.19.1 [02-May-2011]
+
+ * ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.19/v2.19.1-ReleaseNotes
+ ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.19/v2.19.1-ChangeLog
+
+
+Changes between v2.19 and v2.20
+-------------------------------
+
+ For more details see ChangeLog files at:
+ ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.20/
+
+addpart:
+ - multiplication on 512 deleted [Anton V. Boyarshinov]
+agetty:
+ - #endif comments [Sami Kerola]
+ - add an autologin feature [Werner Fink]
+ - better support of virtual console [Dr. Werner Fink]
+ - check virtual console for UTF-8 support [Werner Fink]
+ - cleanup argv parsing, utmp update, use writeall(), etc. [Werner Fink]
+ - coding style - fix comments, remove tailing whitespace [Karel Zak]
+ - coding style - fix identation [Karel Zak]
+ - don't use xalloc.h stuff [Karel Zak]
+ - error message about required arguments [Sami Kerola]
+ - getopt case segment reordering [Sami Kerola]
+ - more code cleanup [Werner Fink]
+ - proper session on the terminal line [Werner Fink]
+ - remove unnecessary options synonyms [Karel Zak]
+ - remove unnecessary space and "(void)" junk [Karel Zak]
+ - symbolic standard file descriptors [Sami Kerola]
+ - try next speed after CBREAK [Karel Zak]
+ - use a generic function for strings concatenation [Karel Zak]
+ - use long options [Sami Kerola]
+ - use program_invocation_short_name [Sami Kerola]
+ - use xalloc.h [Sami Kerola]
+ - further scrubbing [Sami Kerola]
+ - move issue path to pathnames.h [Sami Kerola]
+ - further mingetty features [Dr. Werner Fink]
+blkid:
+ - add -d option to print non-printable chars [Karel Zak]
+ - don't free() uninitialized variable [Karel Zak]
+ - don't ignore -i [Karel Zak]
+ - don't read past end of FAT32 cluster chain [John Lindgren]
+ - fix double free [coverity scan] [Karel Zak]
+ - list all known filesystems/RAIDs (add -k option) [Karel Zak]
+ - small fix for safe_print() [Sergey Gusarov]
+ - uniformize the synopsis, remove "the the" [Benno Schulenberg]
+blockdev:
+ - add --help option [Sami Kerola]
+ - broken compiler warning circumvention removed [Sami Kerola]
+ - coding style fix [Sami Kerola]
+ - remove progname [Sami Kerola]
+ - set options read only [Sami Kerola]
+ - type mismatch fix [Sami Kerola]
+ - use libc error facilities [Sami Kerola]
+ - use pathnames.h to find partitions [Sami Kerola]
+build-sys:
+ - Enable automake's -Wno-portability option. [Sami Kerola]
+ - add required files to dist [Sami Kerola]
+ - add term-utils/ [Karel Zak]
+ - add term-utils/.gitignore [Karel Zak]
+ - add uuid_generate_time_safe.3 .gitignore [Karel Zak]
+ - clean up partx Makefile [Karel Zak]
+ - cleanup lib/ tests [Karel Zak]
+ - disable lib/ at.c tests building [Karel Zak]
+ - do not ignore datarootdir [Sami Kerola]
+ - don't build lsblk on Linux without openat() [Karel Zak]
+ - don't support external (e2fsprogs) libblkid [Karel Zak]
+ - don't support external (e2fsprogs) libuuid [Karel Zak]
+ - don't try to chgrp write or wall if they are not built [Marc-Antoine Perennou]
+ - don't use HAVE_LIBBLKID_INTERNAL macro [Karel Zak]
+ - enable mountpoint, add dependence on libmout [Karel Zak]
+ - fix 'make checkincludes' warnings [Karel Zak]
+ - fix distcheck for term-utils [Karel Zak]
+ - fix gtk-doc build [Karel Zak]
+ - fix gtk-doc distclean [Karel Zak]
+ - fix spaces versus tabs conflict [Marc-Antoine Perennou]
+ - fix unportable Makefile.am assignment [Sami Kerola]
+ - fix configure.ac for uuidd [Karel Zak]
+ - include <uuid.h> rather than <uuid/uuid.h> [Karel Zak]
+ - introduce AM_PROG_CC_C_O macro [Sami Kerola]
+ - move BUILD_SCHEDUTILS to top-level Makefile [Karel Zak]
+ - move agetty to term-utils [Karel Zak]
+ - move mesg to term-utils/ [Karel Zak]
+ - move reset to term-utils/ [Karel Zak]
+ - move script and scriptreplay to term-utils/ [Karel Zak]
+ - move setterm to term-utils/ [Karel Zak]
+ - move wall to term-utils/ [Karel Zak]
+ - move write to term-utils directory [Sami Kerola]
+ - non-linux fixup [Samuel Thibault]
+ - print helpful error when pkg.m4 is missing [Sami Kerola]
+ - provide alternatives for err, errx, warn and warnx [Fabian Groffen]
+ - remove and ignore generated files [Karel Zak]
+ - remove check-news [Karel Zak]
+ - remove unnecessary files from getopt [Sami Kerola]
+ - stop building line(1) by default [Sami Kerola]
+ - use AC_LANG_SOURCE to suppress warnings [Sami Kerola]
+ - use AUTOMAKE_OPTIONS = gnu [Sami Kerola]
+ - use git-version-gen to distinct git and release versions [Sami Kerola]
+ - use gtkdoc without tmpl dir [Karel Zak]
+ - use silent rules got gtkdoc, fix dependencies [Karel Zak]
+ - use top-level directory for libblkid rather than shlibs/blkid [Karel Zak]
+ - use top-level directory for libmount rather than shlibs/mount [Karel Zak]
+ - use top-level directory for libuuid rather than shlibs/uuid [Karel Zak]
+cal:
+ - argument checking, long options and argument checking [Sami Kerola]
+ - clean up few coding style issues [Sami Kerola]
+ - fix compiler warnings [Sami Kerola]
+cfdisk:
+ - add home and end keys movements in partition list [Francesco Cosoleto]
+ - fix compilation with slang [Karel Zak]
+ - fix compiler warning [Karel Zak]
+ - fix gcc warning (unused variable) [Karel Zak]
+ - move "No more partition" warning to draw_cursor() [Francesco Cosoleto]
+ - move keys related to the cursor of the partition list outside menuselect() [Francesco Cosoleto]
+ - remove unused vertical menu direction code [Francesco Cosoleto]
+ - use keypad() in menu selection function [Francesco Cosoleto]
+checktty:
+ - Use NGROUPS_MAX instead of NGROUPS [Josiah Worcester]
+ - fix unused parameters [Sami Kerola]
+chrt:
+ - add strings to use NLS [Sami Kerola]
+ - allow to use --all-tasks when retrieve info [Karel Zak]
+ - chrt.1 fix grammar [Davidlohr Bueso]
+ - clarify use of -a option [Davidlohr Bueso]
+ - coding style fix [Sami Kerola]
+ - data type compiler warning fixed [Sami Kerola]
+ - make threads aware [Davidlohr Bueso]
+chsh:
+ - fix gcc link() warn_unused_result warning [Karel Zak]
+ - fix small memory leak [Karel Zak]
+col:
+ - check with strtol_or_err option argument [Sami Kerola]
+ - coding style changes [Sami Kerola]
+ - use long options [Sami Kerola]
+colctr:
+ - use long options and clean coding style [Sami Kerola]
+colrm:
+ - gotos, long options and argument checking [Sami Kerola]
+ - manual update [Sami Kerola]
+column:
+ - fix problems with uninitialized variables [Karel Zak]
+ - use xalloc lib [Sami Kerola]
+ - add version printing [Sami Kerola]
+ - coding style fixes [Sami Kerola]
+ - free memory before exit [Sami Kerola]
+ - global variables removed [Sami Kerola]
+ - make table function clarification [Sami Kerola]
+ - replace emalloc with xcalloc [Sami Kerola]
+ - validate numeric user inputs [Sami Kerola]
+cramfs:
+ - remove cramfs_common.h [Davidlohr Bueso]
+ - use stdint.h instead of u{8,16,32} [Sami Kerola]
+cramfs.h:
+ - coding style [Sami Kerola]
+cramfs_common:
+ - coding style [Sami Kerola]
+cytune:
+ - remove unused variable [Karel Zak]
+ddate:
+ - remove non-ascii chars from ddate [Karel Zak]
+ - use ARRAY_SIZE [Karel Zak]
+dmesg:
+ - add --clear (SYSLOG_ACTION_CLEAR) [Karel Zak]
+ - add --console-on and --console-off [Karel Zak]
+ - add --ctime to print human readable timestamps [Karel Zak]
+ - add --decode to print readable facility and level [Karel Zak]
+ - add --facility option [Karel Zak]
+ - add --level=<list> [Karel Zak]
+ - add --show-delta option [Karel Zak]
+ - add -t option to suppress timestamps [Karel Zak]
+ - add -u and -k options [Karel Zak]
+ - add long options, --help and --version [Karel Zak]
+ - allow to print time delta without timestamp [Karel Zak]
+ - cleanup options and man page [Karel Zak]
+ - consolidate level parsiig code [Karel Zak]
+ - don't print non-printable chars, parse records [Karel Zak]
+ - fix segfault [Marc-Antoine Perennou]
+ - fix typo in usage() [Karel Zak]
+ - mark some options mutually exclusive [Karel Zak]
+ - print_buffer() refactoring [Karel Zak]
+ - refactoring - cleanup get bufsize code [Karel Zak]
+ - refactoring - cleanup main() code [Karel Zak]
+ - refactoring - cleanup print buffer code [Karel Zak]
+ - refactoring - cleanup read buffer code [Karel Zak]
+ - reorder options, add comments [Karel Zak]
+ - use SYSLOG_ACTION_* macros rather than magic constatnts [Karel Zak]
+ - variables refactoring [Karel Zak]
+ - cleanups -- use err(), xalloc() [Marek Polacek]
+docs:
+ - mention mkswap long options in man page [Sami Kerola]
+ - TODO update [Karel Zak]
+ - add Matej to AUTHORS [Karel Zak]
+ - add long options to fdformat.8 [Sami Kerola]
+ - add long options to mkfs.8 [Sami Kerola]
+ - add long options to mkfs.bfs.8 [Sami Kerola]
+ - agetty long options [Sami Kerola]
+ - agetty manual update [Sami Kerola]
+ - col manual update [Sami Kerola]
+ - colcrt manual update [Sami Kerola]
+ - favour small patches [Sami Kerola]
+ - inform about cal long options [Sami Kerola]
+ - inform about mcookie long options [Sami Kerola]
+ - isosize.8 add long options [Sami Kerola]
+ - look.1 manual rewrote [Sami Kerola]
+ - mention long options in ionice.1 [Sami Kerola]
+ - mention long options in uuidd.8 manual page [Sami Kerola]
+ - rename.1 verbose, long options and warning [Sami Kerola]
+ - scriptreplay add note about new options [Sami Kerola]
+ - scriptreplay mention basic long options [Sami Kerola]
+ - sfdisk manual update [Sami Kerola]
+ - tell mount/* is in maintenance mode [Sami Kerola]
+ - update AUTHORS file [Karel Zak]
+ - update DEPRECATED file [Karel Zak]
+ - update TODO [Karel Zak]
+ - update TODO [Sami Kerola]
+ - update TODO file [Karel Zak]
+ - update TODO file [Sami Kerola]
+ - uuidgen.1 mention long options [Sami Kerola]
+elvtune, isosize:
+ - print usage text in case of invalid option [Francesco Cosoleto]
+ - remove redundant message in case of invalid option [Francesco Cosoleto]
+fdformat:
+ - cleanup error messages [Karel Zak]
+ - coding style [Sami Kerola]
+ - include-what-you-use header check [Sami Kerola]
+ - integer comparisons & unused parameter [Sami Kerola]
+ - use libc error printing facilities [Sami Kerola]
+ - use long options [Sami Kerola]
+ - use xalloc.h [Sami Kerola]
+fdisk:
+ - accept digits-space-suffix format [Francesco Cosoleto]
+ - add a default response for the partition type dialog [Francesco Cosoleto]
+ - change primary or extended partition type dialog [Francesco Cosoleto]
+ - check index before access to array [coverity scan] [Karel Zak]
+ - fix "invalid partition number for type" error message [Francesco Cosoleto]
+ - improve error message for missing extended partition [Francesco Cosoleto]
+ - more robust whole-disk detection [Karel Zak]
+ - print logical partition number while adding it [Francesco Cosoleto]
+ - quit from partition type dialog after invalid response [Francesco Cosoleto]
+ - use a single variable for the current disklabel [Francesco Cosoleto]
+ - Use standard C types instead of u_int, u_char, u_long, etc. [Josiah Worcester]
+findmnt:
+ - add --pairs to output in key="value" format [Karel Zak]
+ - add --poll and --timeout to the man page [Karel Zak]
+ - add --poll option [Karel Zak]
+ - add --timeout option [Karel Zak]
+ - add columns description to the --help output [Karel Zak]
+ - check mnt_tab_next_fs() return code [coverity scan] [Karel Zak]
+ - filter filesystems and actions for --poll [Karel Zak]
+ - fix leak [Karel Zak]
+ - minor coding style changes [Karel Zak]
+ - print OLD-* columns only when necessary [Karel Zak]
+fsck:
+ - fix -C parsing [Karel Zak]
+ - fix clang compiler warning [Sami Kerola]
+ - use xmalloc, warn & err and new usage [Sami Kerola]
+ - Use more portable includes. [Josiah Worcester]
+fsck.cramfs:
+ - add missed strings to translation [Sami Kerola]
+ - coding style [Sami Kerola]
+ - retire die function [Sami Kerola]
+ - use xalloc.h [Sami Kerola]
+fsck.minix:
+ - fix "array subscript is above array bounds" [Karel Zak]
+ - remove unused variables [Karel Zak]
+ - use common functionalitly [Davidlohr Bueso]
+ - use lib/ismounted.c [Karel Zak]
+fstrim:
+ - cast from __u64 to standard C types [Karel Zak]
+ - replace error() with err() [Francesco Cosoleto]
+getopt:
+ - add static qualifiers [Olivier Mengué]
+ - fix '--unqote' typo in usage text [Francesco Cosoleto]
+ - fix coding style [Sami Kerola]
+ - fix gcc warning [Karel Zak]
+ - make user getopt_long parsing to use function pointer [Sami Kerola]
+ - options struct, usage and version outputs [Sami Kerola]
+ - remove unnecessary free() [Sami Kerola]
+ - use xalloc.h [Sami Kerola]
+hexdump:
+ - don't include err.h directly [Karel Zak]
+ - new usage(), xalloc and err.h stuff [Sami Kerola]
+hwclock:
+ - Don't use asm/io.h if sys/io.h can't be found [Josiah Worcester]
+ - add variable initialization [Sami Kerola]
+ - build on non-Linux [Samuel Thibault]
+ - coding style clean up [Sami Kerola]
+ - fix compiler warnings [Sami Kerola]
+ - fix gcc warning (uninitialized variable) [Karel Zak]
+ - include-what-you-use header check [Sami Kerola]
+ - make RTC default to UTC time [Daniel Drake]
+ - move long options away from global scope [Sami Kerola]
+ - move path definitions to pathnames.h [Sami Kerola]
+ - remove clock-ppc.c [Sami Kerola]
+ - remove goto statement [Sami Kerola]
+ - remove misleading information [Sami Kerola]
+ - remove unused variables [Karel Zak]
+ - tiny change in comment [Karel Zak]
+ - use libc error printing functions [Sami Kerola]
+ - validate numeric option arguments [Sami Kerola]
+include:
+ - [at.h] include c.h for PATH_MAX [Karel Zak]
+ - [c.h] add fallback for old libs without O_CLOEXEC [Karel Zak]
+ - [c.h] remove strings.h include dublicate [Sami Kerola]
+ - [c.h] typeof to __typeof__ fix [Sami Kerola]
+ - [c.h] add definition wrappers for old libc versions [Davidlohr Bueso]
+ - [strutils.c] add list parsers [Karel Zak]
+ - [tt.c] always truncate if TT_FL_TRUNC [Karel Zak]
+ - [xalloc.h] mention strdup in the file description [Petr Uzel]
+ - minix.h use data types from stdint.h [Sami Kerola]
+ - move disk-utils/mkfs.h -> include/exitcodes.h [Sami Kerola]
+ - move fsck return values to exitcodes.h [Sami Kerola]
+ - move minix.h to include directory [Sami Kerola]
+ - remove kernel headers from minix.h [Sami Kerola]
+ - improve size_to_human_string() [Francesco Cosoleto]
+ - [blkdev.c] add blkdev_is_misaligned() [Davidlohr Bueso]
+ionice:
+ - IOPRIO_PRIO_* macros [Karel Zak]
+ - add long options [Sami Kerola]
+ - allow to use names for -c <class> [Karel Zak]
+ - coding style fixes [Sami Kerola]
+ - fix -V output [Sami Kerola]
+ - fix -p [Karel Zak]
+ - improve command line interpretation [Karel Zak]
+ - make -t more tolerant [Karel Zak]
+iosize:
+ - fix gcc warning [Karel Zak]
+ipcs:
+ - fix typo [Karel Zak]
+ - really show all resources when -a and -i are combined [Jens Kristian Søgaard]
+isosize:
+ - check user input to be numeric [Sami Kerola]
+ - fix coding style [Sami Kerola]
+ - include-what-you-use header check [Sami Kerola]
+ - remove global variables [Sami Kerola]
+ - simplify some error messages [Francesco Cosoleto]
+ - use long options [Sami Kerola]
+ - use program_invocation_short_name [Francesco Cosoleto]
+kill:
+ - add -q sigval to use sigqueue(2) [Karel Zak]
+ - add support for real-time signals [Karel Zak]
+ - translate "-l <num>" to RT<n> [Karel Zak]
+lib:
+ - [at.c] add readlink_at(), fix semantic for absolute paths [Karel Zak]
+ - [blkdev.c] add blkdev_get_physector_size() [Davidlohr Bueso]
+ - [blkdev.c] more robust blkdev_is_misaligned() [Karel Zak]
+ - [blkdev.c] remove kernel version check from blkdev_get_sector_size() [Karel Zak]
+ - [fsprobe.c] fix blkid_evaluate_spec() call [Karel Zak]
+ - [fsprobe.c] remove obsolete <blkid/blkid.h> [Karel Zak]
+ - [fsprobe.c] use internal libblkid only [Karel Zak]
+ - [linux_version.c] accommodate two-component linux version (e.g. 3.0) [Karel Zak]
+ - [linux_version.c] simplify version parsing [Karel Zak]
+ - [loopdev.c] add module for work loop devices [Karel Zak]
+ - [loopdev.c] cleanup flags usage [Karel Zak]
+ - [procutils.c] add missing files. Sorry. [Karel Zak]
+ - [procutils.c] general purpose procfs parsing functions [Davidlohr Bueso]
+ - [procutils.c] improve robustness [Karel Zak]
+ - [strutils.c] more robust strtol checks [Karel Zak]
+ - [strutils] avoid integer overflow on large values [Dave Reisner]
+ - [sysfs.c] add sysfs_readlink and name/path functions [Karel Zak]
+ - [sysfs.c] fix double free [Karel Zak]
+ - [sysfs.c] make sysfs_read_* function more robust [Karel Zak]
+ - [tt.c] Fix mbs_width macro for systems without WIDECHAR [Josiah Worcester]
+ - [tt.c] dereferencing data before a null check [coverity scan] [Karel Zak]
+ - [tt.c] support fixed width and multiple tt_print_table() calls [Karel Zak]
+ - [tt.c] support key="value" output format [Karel Zak]
+ - [tt.c] use mbs_truncate() from mbsalign.c [Karel Zak]
+ - add generic sysfs utils [Karel Zak]
+ - add strtoul_or_err() function [Sami Kerola]
+libblkid:
+ - add ID_PART_ENTRY_{OFFSET,SIZE,DISK} [Karel Zak]
+ - add PART_ENTRY_* to docs [Karel Zak]
+ - add blkid_evaluate_spec() [Karel Zak]
+ - add debug message [Karel Zak]
+ - add docs for new PART_ENTRY_* values [Karel Zak]
+ - add some debug messages [Karel Zak]
+ - cleanup flags [Karel Zak]
+ - cleanup prober initialization [Karel Zak]
+ - don't ignore swap UUID if only first byte is zero [Richard W.M. Jones]
+ - fix EFI GPT uuid byte order [Karel Zak]
+ - fix gcc warnings [Karel Zak]
+ - fix typo in *_to_cpu() usage in raid detection [coverity scan] [Karel Zak]
+ - found whole-disk for partitions mapped by kpartx [Karel Zak]
+ - ignore hfsplus superblocks with blocksize < 512 [Karel Zak]
+ - improve blkid__scan_dir [Karel Zak]
+ - make whole disk probing more robust [Karel Zak]
+ - minor change in man page [Karel Zak]
+ - move MINIX_MAXPARTITIONS to minix.h [Sami Kerola]
+ - remove test for non-zero head count in FAT superblock probe. [Nick Holloway]
+ - try to detect if PT is newer than LVM [Karel Zak]
+ - update docs [Karel Zak]
+ - use 64bit offset in search_fat_label to avoid truncation [Jindrich Makovicka]
+ - use MINIX_BLOCK_SIZE from minix.h [Sami Kerola]
+ - use blkid_probe_get_buffer() more carefully [Karel Zak]
+ - use cached buffers for nested PT probing [Karel Zak]
+ - use partno for partitions mapped by DM [Karel Zak]
+ - use stuff from sysfs.h and at.h [Karel Zak]
+ - use superblock structure from minix.h [Sami Kerola]
+ - use sysfs_init() more carefully [Karel Zak]
+ - validate hfs blocksize != 0 [Timo Warns]
+ - vfat big endian fix [Jindrich Makovicka]
+libmount:
+ - add MOUNT_2.20 version to the API [Karel Zak]
+ - add fallbacks for old systems without umount2() syscall [Karel Zak]
+ - add generic function to read table for context [Karel Zak]
+ - add mnt_reset_table() [Karel Zak]
+ - add mnt_tabdiff_* functions [Karel Zak]
+ - add mnt_table_is_mounted() [Karel Zak]
+ - add mount support for loopdevs [Karel Zak]
+ - add mountpoint(1) implementation to samples/ [Karel Zak]
+ - add phelper= support [Karel Zak]
+ - add support for mount -a [Karel Zak]
+ - add support for x-* mount comments [Karel Zak]
+ - allow to convert /dev/loopN to backing filename [Karel Zak]
+ - allow to set parser callback to context [Karel Zak]
+ - avoid redundant declaration of mnt_context_do_umount [Jan Engelhardt]
+ - better "user" evaluation [Karel Zak]
+ - block signals when update utab [Karel Zak]
+ - block signals when writing to mtab [Karel Zak]
+ - clean up cache.c [Karel Zak]
+ - clean up docs [Karel Zak]
+ - cleanup *_do_[u]mount() return codes and docs [Karel Zak]
+ - cleanup code for "none" source and fstype, fix mem leak [Karel Zak]
+ - cleanup docs [Karel Zak]
+ - cleanup return codes in mount sample [Karel Zak]
+ - cleanup umount code [Karel Zak]
+ - create a default lock for mtab update [Karel Zak]
+ - don't export functions for vfs/fs/userspace mount options [Karel Zak]
+ - fix fstype caching [Karel Zak]
+ - fix leak in sample program [Karel Zak]
+ - fix memory leak in cache [Karel Zak]
+ - fix mtab update for "none" source [Karel Zak]
+ - fix parsing of mountinfo from 2.6.39 [Karel Zak]
+ - fix some typos and copy&paste mistakes in comments [Petr Uzel]
+ - fix test [Karel Zak]
+ - fix uninitialized variable in sample [Karel Zak]
+ - improve apply_fstab debugging [Karel Zak]
+ - keep code more readable for analyzers [coverity scan] [Karel Zak]
+ - merge mtab and utab locking code [Karel Zak]
+ - minor changes in sample program [Karel Zak]
+ - minor fix to mnt_tabdiff_* [Karel Zak]
+ - minor fixes [Karel Zak]
+ - more robust mtab and utab update (CVE-2011-1676, CVE-2011-1677) [Karel Zak]
+ - plug memory leak in sample program [Petr Uzel]
+ - remove 'seclabel' on remount, improve for 2.6.39 [Karel Zak]
+ - remove unnecessary includes, mask API as stable [Karel Zak]
+ - rename in cache.c [Karel Zak]
+ - rename mount option "quiet" to "silent" [Karel Zak]
+ - replace mkostmps() with more portable mkstemp() [Karel Zak]
+ - small lock code cleanup [Karel Zak]
+ - support /run/mount rather than /dev/.mount [Karel Zak]
+ - support NULL source path for mnt_table_find_* functions [Karel Zak]
+ - use chdir() and NOFOLLOW umount flag for umount operation [Karel Zak]
+ - use libmnt_lock for utab flock [Karel Zak]
+ - use mnt_table_get_fs_root() in utab code [Karel Zak]
+libuuid:
+ - __uuid_generate_time() report if clock_seq is safe [Petr Uzel]
+ - do not use invalid file descriptor [Petr Uzel]
+ - fix test in get_clock() [Petr Uzel]
+ - get_clock() report if the clock_seq is safe [Petr Uzel]
+ - introduce uuid_generate_time_safe() [Petr Uzel]
+ - manpage spelling fixes [Petr Uzel]
+ - move __uuid function to UUIDD_PRIVATE in uuid.sym [Karel Zak]
+ - rename uuid__generate_* to __uuid_generate_* [Petr Uzel]
+ - update manpage, mention uuid_generate_time_safe [Petr Uzel]
+logger:
+ - fix variable type compiler warning [Sami Kerola]
+ - mention long option in logger man page [Sami Kerola]
+ - support for logging to UDP socket / remote syslog server [WUEBBELS, Josef \(Extern\)]
+ - support long options [Sami Kerola]
+ - use libc error printing facilities [Sami Kerola]
+login:
+ - cleanup unused variables [Karel Zak]
+ - does not ignore setgid() return code for non-roots [Karel Zak]
+ - fix checktty test to compile with old glibc [Karel Zak]
+ - fix typos in man page [Karel Zak]
+login-utils:
+ - include fix [Sami Kerola]
+look:
+ - add long options [Sami Kerola]
+losetup:
+ - spelling fixes [Petr Uzel]
+lsblk:
+ - add --pairs to output in key="value" format [Karel Zak]
+ - add TYPE column to lsblk output [Milan Broz]
+ - add queue request size attribute [Milan Broz]
+ - add state attribute [Milan Broz]
+ - add support for discard topology (-D option) [Martin K. Petersen]
+ - bitwise or TT_FL_ASCII with tt_flags instead of setting [Dave Reisner]
+ - fix readlink() usage [Karel Zak]
+ - fix strtoul() usage [coverity scan] [Karel Zak]
+ - ignore device if disappear while processing [Milan Broz]
+ - improve discard support [Martin K. Petersen]
+ - use generic sysfs functions [Karel Zak]
+ - use ssize_t for readlink() return code [Karel Zak]
+ - use sysfs_read_u64() rather than sysfs_strdup() + atol() [Karel Zak]
+lscpu:
+ - add support for books [Heiko Carstens]
+ - detect VMware hypervisor [Stephen Hemminger]
+ - detect sun4{u,v} in /proc/cpuinfo for sparc64 [Karel Zak]
+ - extend --parse functionality [Karel Zak]
+ - fix bogomips detection for s390 [Heiko Carstens]
+ - fix op-mode for /{sys,proc} dumps [Karel Zak]
+ - fix threads-per-core calculation [Karel Zak]
+ - use xalloc [Davidlohr Bueso]
+ - use xstrdup from xalloc.h [Petr Uzel]
+mcookie:
+ - change coding style [Sami Kerola]
+ - use warnx, long options and help screen [Sami Kerola]
+md5:
+ - use symbolical digest length [Sami Kerola]
+mesg:
+ - add \n to usage() output [Karel Zak]
+ - add long options to the man page [Sami Kerola]
+ - man page clean wqup [Karel Zak]
+ - new --verbose option [Sami Kerola]
+ - use long options, also --help and --version added [Sami Kerola]
+minix:
+ - add MINIX_ prefix to some global macros [Karel Zak]
+ - add common functionality [Davidlohr Bueso]
+ - add version 3 layout [Davidlohr Bueso]
+ - cleanup global variables and macros [Karel Zak]
+ - fix warning [Davidlohr Bueso]
+ - move globals and inline functions to minix_programs.h [Sami Kerola]
+ - remove fs state [Davidlohr Bueso]
+ - remove unnecessary initializations [Karel Zak]
+misc-utils:
+ - remove misleading README files [Sami Kerola]
+mkfs:
+ - add long options [Sami Kerola]
+ - coding style fixes [Sami Kerola]
+ - include-what-you-use header check [Sami Kerola]
+mkfs.bfs:
+ - add long options [Sami Kerola]
+ - cleanu p --version output [Karel Zak]
+ - coding style fix [Sami Kerola]
+ - include-what-you-use header check [Sami Kerola]
+ - use err() instead of errx() [Karel Zak]
+ - use libc error facilities [Sami Kerola]
+ - use xstrdup from xalloc.h [Sami Kerola]
+ - validate numeric user inputs [Sami Kerola]
+mkfs.cramfs:
+ - coding style [Sami Kerola]
+ - convert spaces to tabs [Sami Kerola]
+ - error printing fixes [Sami Kerola]
+ - few symbolic exit codes where missing [Sami Kerola]
+ - include-what-you-use header check [Sami Kerola]
+ - use program_invocation_short_name [Sami Kerola]
+ - use xalloc.h [Sami Kerola]
+ - validate numeric user inputs [Sami Kerola]
+mkfs.minix:
+ - add fs version options [Davidlohr Bueso]
+ - add minix v3 support [Davidlohr Bueso]
+ - check for misalignment [Davidlohr Bueso]
+ - document -3 option [Davidlohr Bueso]
+ - general cleanups [Davidlohr Bueso]
+ - remove die() [Davidlohr Bueso]
+ - standardize superblock attribute settings [Davidlohr Bueso]
+ - use common functionality [Davidlohr Bueso]
+ - use inode wrappers [Davidlohr Bueso]
+mkswap:
+ - add alignment check [Davidlohr Bueso]
+ - coding style unification [Sami Kerola]
+ - fix compiler warning [Karel Zak]
+ - fix to compiler warnings [Sami Kerola]
+ - support long options and check user inputs [Sami Kerola]
+ - use EXIT_ values [Sami Kerola]
+ - use libc error messaging facilities [Sami Kerola]
+ - use xalloc [Sami Kerola]
+more:
+ - new usage output, and some trivial fixes [Sami Kerola]
+mount:
+ - -a segfaults when 4th field is omitted (mount options) [Karel Zak]
+ - add note about blank lines to fstab.5 [Karel Zak]
+ - add phelper= [Karel Zak]
+ - add ufstype=ufs2 to mount.8 [Karel Zak]
+ - canonicalize fstab mnt_dir [Karel Zak]
+ - first look for mountpoint [Karel Zak]
+ - fix double free in mount.c with SELinux enabled [Kirill Elagin]
+ - fix reference to sharedsubtree documentation in mount.8 [Mike Hommey]
+ - fix typo in mount.8 [Petr Uzel]
+ - fix typos in mount.8 [Nicolas Francois]
+ - make the error message clear [Petr Uzel]
+ - mount.8 remove reprecated bh/nobh options from the manual page [Lukas Czerner]
+ - remove 'seclabel' mount option on remount [Karel Zak]
+ - remove accidental extra word in ext4 documentation in mount.8 [Petr Uzel]
+ - remove note about obsolete volume_id library from man page [Karel Zak]
+ - rename "quiet" to "silent" (MS_SILENT) [Karel Zak]
+ - update mtab on "-f" and compiled with libmount [Karel Zak]
+ - use fflush() and temporary file for mtab updates (CVE-2011-1089) [Karel Zak]
+ - use libmount to detect already mounted bind mounts [Karel Zak]
+ - use lock from mnt_update_table() [Karel Zak]
+mountpoint:
+ - add new command [Karel Zak]
+namei:
+ - add --version option [Sami Kerola]
+ - fix to argument handling [Sami Kerola]
+ - remove unused variable [Karel Zak]
+ - use xalloc.h [Sami Kerola]
+partx:
+ - add --pairs to output in key="value" format [Karel Zak]
+ - add fallback for openat() to be usable on old systems [Karel Zak]
+ - get partition number with sysfs lib [Davidlohr Bueso]
+ - improve clarity of some messages, gettextize two missed ones [Benno Schulenberg]
+ - remove unused headers [Davidlohr Bueso]
+ - trivial comment fix [Davidlohr Bueso]
+ - use sysfs_deinit [Davidlohr Bueso]
+partx, lsblk:
+ - fix gettext calls [Karel Zak]
+pg:
+ - return value warning fix [Sami Kerola]
+ - use size_t for wcstombs() return code [Sami Kerola]
+po:
+ - merge changes [Karel Zak]
+ - update cs.po (from translationproject.org) [Petr Písař]
+ - update da.po (from translationproject.org) [Joe Hansen]
+ - update fr.po (from translationproject.org) [David Prévot]
+procutils:
+ - include missing header [Davidlohr Bueso]
+raw:
+ - remove constants from message strings; undo some abbrevs [Benno Schulenberg]
+readprofile:
+ - don't stop parsing at __init_end [Po-Yu Chuang]
+rename:
+ - verbose option & maintenance fixes [Sami Kerola]
+rev:
+ - mark signo unused in sig_handler [Sami Kerola]
+ - memory leak fix [Sami Kerola]
+ - mention long options in man page [Sami Kerola]
+ - option parsing bug fixed & long options added [Sami Kerola]
+ - use xrealloc from xalloc.h [Sami Kerola]
+rtcwake:
+ - do not duplicate argument strings [Davidlohr Bueso]
+ - test for available suspend modes [Lawrence Rust]
+script:
+ - don't include err.h directly [Karel Zak]
+ - fix compiler warnings [Sami Kerola]
+ - include-what-you-use header check [Sami Kerola]
+ - inform about long options in script manual page [Sami Kerola]
+ - option --force added [Sami Kerola]
+ - optional timing output file argument added [Sami Kerola]
+ - remove magic constants and a type mismatch fix [Sami Kerola]
+ - remove unnecessary void casting [Sami Kerola]
+ - support for long options [Sami Kerola]
+ - use libc error printing facilities [Sami Kerola]
+scriptreplay:
+ - allow arguments as command line switches [Sami Kerola]
+ - bug in argument check [Sami Kerola]
+ - end printing with new line [Sami Kerola]
+ - fix buffer overflow [Sami Kerola]
+ - support long options [Sami Kerola]
+setterm:
+ - add note about long dump file paths to man page [Sami Kerola]
+ - fix variable types, and unused argument warnings [Sami Kerola]
+ - function screendump coding style fixed [Sami Kerola]
+ - mention in man setterm.1 -version and -help switches [Sami Kerola]
+ - segfault with long dump file name [Sami Kerola]
+ - support -help and -version options [Sami Kerola]
+ - use libc error printing facilities [Sami Kerola]
+ - use xmalloc() [Karel Zak]
+sfdisk:
+ - declare unused function attributes [Sami Kerola]
+ - fix coding style. [Karel Zak]
+ - fix for data type mismatches [Sami Kerola]
+ - fix implicit overflow [Sami Kerola]
+ - help screen format [Sami Kerola]
+ - previously undocumented options to usage [Sami Kerola]
+ - rename warn to my_warn [Fabian Groffen]
+ - returns non-zero on failed BLKRRPART ioctl [Andrea Galbusera]
+simpleinit:
+ - remove this deprecated set of utils [Karel Zak]
+strutils:
+ - new wrapper function strtoll_or_err [Sami Kerola]
+swapon:
+ - use xalloc lib [Davidlohr Bueso]
+sysfs:
+ - free used resources [Davidlohr Bueso]
+tailf:
+ - fix memmove() usage [Karel Zak]
+ - fix open() return value check [coverity scan] [Karel Zak]
+ - support --lines 0 [Karel Zak]
+ - tailf mention new help & version options in man page [Sami Kerola]
+ - use long options [Sami Kerola]
+taskset:
+ - coding style fixes [Sami Kerola]
+ - include-what-you-use header check [Sami Kerola]
+ - make threads aware [Davidlohr Bueso]
+ - use xalloc lib [Davidlohr Bueso]
+test_sysinfo:
+ - Use CHAR_BIT*sizeof(void*) instead of __WORDSIZE. [Josiah Worcester]
+ - fix printf format [Karel Zak]
+tests:
+ - [cpuset] call free() for range [Karel Zak]
+ - add 'none' source to libmount update tests [Karel Zak]
+ - add -o remount to libmount tests [Karel Zak]
+ - add colrm basic test [Sami Kerola]
+ - add column tests [Sami Kerola]
+ - add dump from PPC64 to lscpu tests [Karel Zak]
+ - add dump from UltraSparc T1 to lscpu tests [Karel Zak]
+ - add dump from huge ia64 to lscpu tests [Karel Zak]
+ - add lscpu dumps from three Dell's & a Xen [Sami Kerola]
+ - add mount(8) test for fstab entries without options [Karel Zak]
+ - add test for RLIMIT_FSIZE issue [Karel Zak]
+ - add tests for [u]mount regular file [Karel Zak]
+ - don't run mount/regfile test on old kernel [Karel Zak]
+ - remove generated file [Karel Zak]
+ - test column(1) with multiple input files [Karel Zak]
+ - update GPT test [Karel Zak]
+ - update blkid MD test [Karel Zak]
+ - update for recent fdisk changes [Karel Zak]
+ - update libmount tests (add optstr output) [Karel Zak]
+ - update lscpu tests [Karel Zak]
+ - use libmount tab update tests for UID=0 only [Karel Zak]
+textual:
+ - fix three typos in message strings and improve consistency [Benno Schulenberg]
+ - improve the wording of some error and usage messages [Benno Schulenberg]
+ - tweak several manpages, mainly the blkid one [Benno Schulenberg]
+ttymsg:
+ - fix compiler warnings and use EXIT_ [Sami Kerola]
+ul.c:
+ - close files and free memory after usage [Sami Kerola]
+ - code style and comment fixes [Sami Kerola]
+ - convert definition to function [Sami Kerola]
+ - escape handling refactored [Sami Kerola]
+ - fix compier warnings [Sami Kerola]
+ - magic constant removal [Sami Kerola]
+ - use long options [Sami Kerola]
+ - warn user when command chooses term type [Sami Kerola]
+umount:
+ - allow unmounting loopdev specified by associated file [Petr Uzel]
+ - block signals when umounting and updating mtab (CVE-2011-1676, CVE-2011-1677) [Karel Zak]
+ - do not hang with disconnected NFS mounts [Petr Uzel]
+ - segfaults with inconsistent entry in /etc/fstab [Karel Zak]
+ - support non-canonical devnames in mtab [Karel Zak]
+ - use UMOUNT_NOFOLLOW for non-root users [Karel Zak]
+ - use helper= for all UIDs [Karel Zak]
+uuidd:
+ - add "-q" to synopsis, order options alphabetically [Benno Schulenberg]
+ - coding style fixes [Sami Kerola]
+ - die() function removed [Sami Kerola]
+ - fix manpage libuuid(3) does not exist [Petr Uzel]
+ - long options & new usage [Sami Kerola]
+ - remove goto statement [Sami Kerola]
+ - use symbolic exit and return values [Sami Kerola]
+uuidgen:
+ - add long options [Sami Kerola]
+wall:
+ - add long options and 79 char cut info to the man page [Sami Kerola]
+ - cleanup mbufsize usage [Karel Zak]
+ - remove global variables and support TMPDIR [Sami Kerola]
+ - support --timeout switch [Sami Kerola]
+ - support --timeout switch (vol 2.) [Karel Zak]
+ - use long options [Sami Kerola]
+whereis:
+ - coding style [Sami Kerola]
+ - new usage output & version printing [Sami Kerola]
+ - remove find() [Davidlohr Bueso]
+ - remove goto statements [Sami Kerola]
+ - update coding style [Davidlohr Bueso]
+ - warnings, exit values, braces and returns [Sami Kerola]
+wipefs:
+ - add version printing & compiler warning [Sami Kerola]
+write:
+ - long options & new usage [Sami Kerola]
+ - maintenance fixes [Sami Kerola]
+
+misc:
+ - long options & new usage [Sami Kerola]
+ - maintenance fixes [Sami Kerola]
+ - hurd build fixes [Samuel Thibault]
+ - use unsigned int for bit-fileds [Karel Zak]
+
diff --git a/Documentation/sfdisk.txt b/Documentation/sfdisk.txt
new file mode 100644
index 000000000..13e671d48
--- /dev/null
+++ b/Documentation/sfdisk.txt
@@ -0,0 +1,264 @@
+Examples of the use of sfdisk 3.0 (to partition a disk)
+Input lines have fields <start>,<size>,<type>... - see sfdisk.8.
+Usually no <start> is given, and input lines start with a comma.
+
+Before doing anything with a disk, make sure it is not in use;
+unmount all its file systems, and say swapoff to its swap partitions.
+(The final BLKRRPART ioctl will fail if anything else still uses
+the disk, and you will have to reboot. It is easier to first make
+sure that nothing uses the disk, e.g., by testing:
+ % umount /dev/sdb1
+ % sfdisk -R /dev/sdb
+ BLKRRPART: Device or resource busy
+ * Device busy for revalidation (usage=2)
+ % swapoff /dev/sdb3
+ % sfdisk -R /dev/sdb
+ * sdb: sdb1 < sdb5 sdb6 > sdb3
+ %
+Note that the starred messages are kernel messages, that may be
+logged somewhere, or written to some other console.
+In sfdisk 3.01 sfdisk automatically does this check, unless told not to.)
+
+1. One big partition:
+ sfdisk /dev/hda << EOF
+ ;
+ EOF
+
+(If there was garbage on the disk before, you may get error messages
+like: `ERROR: sector 0 does not have an msdos signature'
+and `/dev/hda: unrecognized partition'. This does not matter
+if you write an entirely fresh partition table anyway.)
+
+The output will be:
+-----------------------------------------------------------------------
+Old situation:
+...
+New situation:
+Units = cylinders of 208896 bytes, blocks of 1024 bytes, counting from 0
+
+ Device Boot Start End #cyls #blocks Id System
+/dev/hda1 0+ 1023 1024- 208895+ 83 Linux native
+Successfully wrote the new partition table
+ hda: hda1
+-----------------------------------------------------------------------
+Writing and rereading the partition table takes a few seconds -
+don't be alarmed if nothing happens for six seconds or so.
+
+
+2. Three primary partitions: two of size 50MB and the rest:
+ sfdisk /dev/hda -uM << EOF
+ ,50
+ ,50
+ ;
+ EOF
+-----------------------------------------------------------------------
+New situation:
+Units = megabytes of 1048576 bytes, blocks of 1024 bytes, counting from 0
+
+ Device Boot Start End MB #blocks Id System
+/dev/hda1 0+ 50- 51- 51203+ 83 Linux native
+/dev/hda2 50+ 100- 51- 51204 83 Linux native
+/dev/hda3 100+ 203 104- 106488 83 Linux native
+Successfully wrote the new partition table
+ hda: hda1 hda2 hda3
+-----------------------------------------------------------------------
+/dev/hda1 is one block (in fact only half a block) shorter than
+/dev/hda2 because its start had to be shifted away from zero in
+order to leave room for the Master Boot Record (MBR).
+
+
+3. A 1MB OS2 Boot Manager partition, a 50MB DOS partition,
+ and three extended partitions (DOS D:, Linux swap, Linux):
+ sfdisk /dev/hda -uM << EOF
+ ,1,a
+ ,50,6
+ ,,E
+ ;
+ ,20,4
+ ,16,S
+ ;
+ EOF
+-----------------------------------------------------------------------
+ Device Boot Start End MB #blocks Id System
+/dev/hda1 0+ 1- 2- 1223+ a OS/2 Boot Manager
+/dev/hda2 1+ 51- 51- 51204 6 DOS 16-bit FAT >=32M
+/dev/hda3 51+ 203 153- 156468 5 Extended
+/dev/hda4 0 - 0 0 0 Empty
+/dev/hda5 51+ 71- 21- 20603+ 4 DOS 16-bit FAT <32M
+/dev/hda6 71+ 87- 17- 16523+ 82 Linux swap
+/dev/hda7 87+ 203 117- 119339+ 83 Linux native
+Successfully wrote the new partition table
+ hda: hda1 hda2 hda3 < hda5 hda6 hda7 >
+-----------------------------------------------------------------------
+All these rounded numbers look better in cylinder units:
+ % sfdisk -l /dev/hda
+-----------------------------------------------------------------------
+ Device Boot Start End #cyls #blocks Id System
+/dev/hda1 0+ 5 6- 1223+ a OS/2 Boot Manager
+/dev/hda2 6 256 251 51204 6 DOS 16-bit FAT >=32M
+/dev/hda3 257 1023 767 156468 5 Extended
+/dev/hda4 0 - 0 0 0 Empty
+/dev/hda5 257+ 357 101- 20603+ 4 DOS 16-bit FAT <32M
+/dev/hda6 358+ 438 81- 16523+ 82 Linux swap
+/dev/hda7 439+ 1023 585- 119339+ 83 Linux native
+-----------------------------------------------------------------------
+But still - why does /dev/hda5 not start on a cylinder boundary?
+Because it is contained in an extended partition that does.
+Of the chain of extended partitions, usually only the first is
+shown. (The others have no name under Linux anyway.) But
+these additional extended partitions can be made visible:
+ % sfdisk -l -x /dev/hda
+-----------------------------------------------------------------------
+ Device Boot Start End #cyls #blocks Id System
+/dev/hda1 0+ 5 6- 1223+ a OS/2 Boot Manager
+/dev/hda2 6 256 251 51204 6 DOS 16-bit FAT >=32M
+/dev/hda3 257 1023 767 156468 5 Extended
+/dev/hda4 0 - 0 0 0 Empty
+
+/dev/hda5 257+ 357 101- 20603+ 4 DOS 16-bit FAT <32M
+ - 358 1023 666 135864 5 Extended
+ - 257 256 0 0 0 Empty
+ - 257 256 0 0 0 Empty
+
+/dev/hda6 358+ 438 81- 16523+ 82 Linux swap
+ - 439 1023 585 119340 5 Extended
+ - 358 357 0 0 0 Empty
+ - 358 357 0 0 0 Empty
+
+/dev/hda7 439+ 1023 585- 119339+ 83 Linux native
+ - 439 438 0 0 0 Empty
+ - 439 438 0 0 0 Empty
+ - 439 438 0 0 0 Empty
+-----------------------------------------------------------------------
+
+Why the empty 4th input line? The description of the extended partitions
+starts after that of the four primary partitions.
+You force an empty partition with a ",0" input line, but here all
+space was divided already, so the fourth partition became empty
+automatically.
+
+How did I know about 4,6,a,E,S? Well, E,S,L stand for Extended,
+Swap and Linux. The other values are hexadecimal and come from
+the table:
+ % sfdisk -T
+ Id Name
+
+ 0 Empty
+ 1 DOS 12-bit FAT
+ 2 XENIX root
+ 3 XENIX usr
+ 4 DOS 16-bit FAT <32M
+ 5 Extended
+ 6 DOS 16-bit FAT >=32M
+ 7 OS/2 HPFS or QNX or Advanced UNIX
+ 8 AIX data
+ 9 AIX boot or Coherent
+ a OS/2 Boot Manager
+ ...
+
+
+4. Preserving the sectors changed by sfdisk.
+ % sfdisk -O save-hdd-partition-sectors /dev/hda
+ ...
+ will write the sectors overwritten by sfdisk to file.
+ If you notice that you trashed some partition, you may
+ be able to restore things by
+ % sfdisk -I save-hdd-partition-sectors /dev/hda
+ %
+
+5. Preserving some old partitions.
+ % sfdisk -N2 /dev/hda
+ ...
+ will only change the partition /dev/hda2, and leave the rest
+ unchanged. The most obvious application is to change an Id:
+ % sfdisk -N7 /dev/hda
+ ,,63
+ %
+-----------------------------------------------------------------------
+Old situation:
+
+ Device Boot Start End #cyls #blocks Id System
+/dev/hda1 0+ 5 6- 1223+ a OS/2 Boot Manager
+...
+/dev/hda6 358+ 438 81- 16523+ 82 Linux swap
+/dev/hda7 439+ 1023 585- 119339+ 83 Linux native
+
+New situation:
+
+ Device Boot Start End #cyls #blocks Id System
+/dev/hda1 0+ 5 6- 1223+ a OS/2 Boot Manager
+...
+/dev/hda6 358+ 438 81- 16523+ 82 Linux swap
+/dev/hda7 439+ 1023 585- 119339+ 63 GNU HURD
+-----------------------------------------------------------------------
+ Note that changing a logical partition into an empty partition
+ will decrease the number of all subsequent logical partitions.
+
+6. Deleting a partition.
+At first I thought of having an option -X# for deleting partitions,
+but there are several ways in which a partition can be deleted, and
+it is probably better to handle this just as a general change.
+ % sfdisk -d /dev/hda > ohda
+will write the current tables on the file `ohda'.
+-----------------------------------------------------------------------
+% cat ohda
+# partition table of /dev/hda
+unit: sectors
+
+/dev/hda1 : start= 1, size= 40799, Id= 5
+/dev/hda2 : start= 40800, size= 40800, Id=83
+/dev/hda3 : start= 81600, size= 336192, Id=83
+/dev/hda4 : start= 0, size= 0, Id= 0
+/dev/hda5 : start= 2, size= 40798, Id=83
+-----------------------------------------------------------------------
+In order to delete the partition on /dev/hda3, edit this file
+and feed the result to sfdisk again.
+-----------------------------------------------------------------------
+% emacs ohda
+% cat ohda
+# partition table of /dev/hda
+unit: sectors
+
+/dev/hda1 : start= 1, size= 40799, Id= 5
+/dev/hda2 : start= 40800, size= 40800, Id=83
+/dev/hda3 : start= 0, size= 0, Id= 0
+/dev/hda4 : start= 0, size= 0, Id= 0
+/dev/hda5 : start= 2, size= 40798, Id=83
+% sfdisk /dev/hda < ohda
+Old situation:
+Units = cylinders of 208896 bytes, blocks of 1024 bytes, counting from 0
+
+ Device Boot Start End #cyls #blocks Id System
+/dev/hda1 0+ 99 100- 20399+ 5 Extended
+/dev/hda2 100 199 100 20400 83 Linux native
+/dev/hda3 200 1023 824 168096 83 Linux native
+/dev/hda4 0 - 0 0 0 Empty
+/dev/hda5 0+ 99 100- 20399 83 Linux native
+New situation:
+Units = sectors of 512 bytes, counting from 0
+
+ Device Boot Start End #sectors Id System
+/dev/hda1 1 40799 40799 5 Extended
+/dev/hda2 40800 81599 40800 83 Linux native
+/dev/hda3 0 - 0 0 Empty
+/dev/hda4 0 - 0 0 Empty
+/dev/hda5 2 40799 40798 83 Linux native
+Successfully wrote the new partition table
+% sfdisk -l -V /dev/hda
+
+Disk /dev/hda: 12 heads, 34 sectors, 1024 cylinders
+Units = cylinders of 208896 bytes, blocks of 1024 bytes, counting from 0
+
+ Device Boot Start End #cyls #blocks Id System
+/dev/hda1 0+ 99 100- 20399+ 5 Extended
+/dev/hda2 100 199 100 20400 83 Linux native
+/dev/hda3 0 - 0 0 0 Empty
+/dev/hda4 0 - 0 0 0 Empty
+/dev/hda5 0+ 99 100- 20399 83 Linux native
+/dev/hda: OK
+-----------------------------------------------------------------------
+This is a good way of making changes: dump the current status
+to file, edit the file, and feed it to sfdisk.
+Preserving the file on some other disk could be useful:
+if ever the MBR gets thrashed it can be used to restore
+the old situation.