diff options
author | Karel Zak | 2011-08-31 11:04:15 +0200 |
---|---|---|
committer | Karel Zak | 2011-08-31 11:04:15 +0200 |
commit | fa25f2289cf7eea29f00053cd3c34f95d7c736be (patch) | |
tree | 9331e9b5486011a3fc73a57513b4be1eabe2edd3 /Documentation | |
parent | Merge branch 'lscpu' of git://git.kernel.org/pub/scm/linux/kernel/git/heiko/u... (diff) | |
parent | docs: remove duplicated text (diff) | |
download | kernel-qcow2-util-linux-fa25f2289cf7eea29f00053cd3c34f95d7c736be.tar.gz kernel-qcow2-util-linux-fa25f2289cf7eea29f00053cd3c34f95d7c736be.tar.xz kernel-qcow2-util-linux-fa25f2289cf7eea29f00053cd3c34f95d7c736be.zip |
Merge branch 'docs-dir' of https://github.com/kerolasa/lelux-utiliteetit
* 'docs-dir' of https://github.com/kerolasa/lelux-utiliteetit:
docs: remove duplicated text
docs: require kernel support before accepting use of it
docs: note about independent super block structs
docs: add libmount & libblkid debug instructions
Documentation: add debugging doc
arch: start using arch as a usage() example
docs: new file Documentation/release-schedule.txt
docs: move setuid information from reame to hwclock.8
docs: clean up old readme files
docs: copy contributors from legacy files to AUTHORS
docs: new file Documentation/howto-man-page.txt
docs: new file Documentation/source-code-management.txt
docs: new file Documentation/howto-contribute.txt
docs: new file Documentation/howto-compilation.txt
docs: tell what the Documentation/ is about
docs: add usage() howto for contributors
docs: Documentation directory added
docs: remove README.clear
Diffstat (limited to 'Documentation')
44 files changed, 8183 insertions, 0 deletions
diff --git a/Documentation/00-about-docs.txt b/Documentation/00-about-docs.txt new file mode 100644 index 000000000..650e420ef --- /dev/null +++ b/Documentation/00-about-docs.txt @@ -0,0 +1,7 @@ +What is here +------------ + +The util-linux contains suplementary textual material, such as +readme files, release notes, licenses and so on. Common to these +files is that they contain information for contributors but +should not end up to end user installation. diff --git a/Documentation/TODO b/Documentation/TODO new file mode 100644 index 000000000..cab1ff786 --- /dev/null +++ b/Documentation/TODO @@ -0,0 +1,288 @@ + + 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 + +ldattach +-------- + + - write usage() + +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 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..cb8d86526 --- /dev/null +++ b/Documentation/cfdisk.txt @@ -0,0 +1,35 @@ +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. + +------------------------------------------------------------------- + + 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..1098b44c5 --- /dev/null +++ b/Documentation/col.txt @@ -0,0 +1,41 @@ +# @(#)README 5.1 (Berkeley) 5/22/90 + +col - filter out reverse line feeds. + +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..3ea4d44d3 --- /dev/null +++ b/Documentation/fdisk.txt @@ -0,0 +1,581 @@ +`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 (version 1) 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. + +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..8258e886d --- /dev/null +++ b/Documentation/getopt.txt @@ -0,0 +1,31 @@ +This package contains a reimplementation of getopt(1). + +PREFACE + +Getopt(1) is a program to help shell scripts parse command-line parameters. + +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. 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-compilation.txt b/Documentation/howto-compilation.txt new file mode 100644 index 000000000..3617b34c7 --- /dev/null +++ b/Documentation/howto-compilation.txt @@ -0,0 +1,64 @@ +The common case + + ./autogen.sh && ./configure && make + + If something fails read the last lines. Typical reason to + fail is a missing dependency, such as libtool or gettext. + +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' + +Compiling + + Use SUID_CFLAGS and SUID_LDFLAGS when you want to define + special compiler options for typical suid programs, for + example: + + ./configure SUID_CFLAGS="-fpie" SUID_LDFLAGS="-pie" + + The SUID_* feature is currently supported for chfn, chsh, + newgrp, write, mount, and umount. + + Preferred compilation options for developers, when + using gcc, are: + + export CFLAGS="-Wmissing-parameter-type -Wsign-compare + -Wtype-limits -Wuninitialized -Wunused-parameter + -Wunused-but-set-parameter -fno-common" + + FIXME: add notes about klib and uClib. + +Static linking + + Use --enable-static-programs[=LIST] configure option when + you want to use statically linked programs. + + Note, mount(8) uses get{pw,gr}nam() and getpwuid() + functions for translation from username and groupname to + UID and GID. These functions could be implemented by + dynamically loaded independent modules (NSS) in your libc + (e.g. glibc). These modules are not statically linked to + mount(8) and mount.static is still using dlopen() like + dynamically linked version. + + The translation won't work in environment where NSS + modules are not installed. + + For example normal system (NSS modules are available): + + # ./mount.static -v -f -n -ouid=kzak /mnt/foo + LABEL=/mnt/foo on /mnt/foo type vfat (rw,uid=500) + ^^^^^^^ + and without NSS modules: + + # chroot . ./mount.static -v -f -n -ouid=kzak /mnt/win + LABEL=/mnt/win on /mnt/win type vfat (rw,uid=kzak) + ^^^^^^^^ diff --git a/Documentation/howto-contribute.txt b/Documentation/howto-contribute.txt new file mode 100644 index 000000000..e70467bbd --- /dev/null +++ b/Documentation/howto-contribute.txt @@ -0,0 +1,100 @@ +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 -Xd) + + * neutrality; The stuff in util-linux should be rather + distribution-neutral. No RPMs/DEBs/... are provided - get yours + from your distributor. + + * 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 + +Before sending a patch + + * make sure that after patching source files will compile without + errors. + + * test that previously existed program behaviour is not + unintentionally alterred. If you alter the behaviour tell about in + commit message. + +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 + + * Use `FIXME:' and a good description if want to inform others + something is not quite right, and you are unwilling to fix the + issue. + +Various notes + + * The util-linux does not use kernel headers for file system super + blocks structures. + + * Patches relying on features that are not in Linus' tree + are not accepted. diff --git a/Documentation/howto-debug.txt b/Documentation/howto-debug.txt new file mode 100644 index 000000000..28c6e2252 --- /dev/null +++ b/Documentation/howto-debug.txt @@ -0,0 +1,71 @@ +Debugging util-linux programs +============================= + +How to deal libtool +------------------- + +There are considerations to be made when profiling or debugging some programs +found in the util-linux package. Because wrapper scripts are used for the +binaries to make sure all library dependencies are met, you cannot use tools +such as gdb or valgrind directly with them. + +Let's take for example the mount command: + + $> cd /path/to/util-linux + $> file mount/mount + mount/mount: Bourne-Again shell script text executable + +The binary itself is located in the mount/.libs/ directory: + + $> file mount/.libs/mount + mount/.libs/mount: ELF 64-bit LSB executable, x86-64, version 1 \ + (SYSV), dynamically linked (uses shared libs) [...] + +When this command is run, there's a library dependency error: + + $> mount/.libs/mount + mount/.libs/mount: /lib/libblkid.so.1: version `BLKID_2.20' not found \ + (required by mount/.libs/mount) + +To overcome this we need set the LD_LIBRARY_PATH variable to read the path of +the shared lib found in the sources, and not system-wide: + + $> export LD_LIBRARY_PATH=$PWD/libblkid/src/.libs/:$LD_LIBRARY_PATH + +Now external debugging tools can be run on the binary. + +Happy hacking! +Davidlohr Bueso, August 2011 + + +The libmount & libblkid +----------------------- + +Both of the libraries can be debugged by setting an environment variable +consistig a number. The number will be used as a bit mask, so the more 1 the +greater the debugging level. Seach for `DEBUG' from files + + libblkid/src/blkidP.h + libmount/src/mountP.h + +to see what the different bit mean. At the time of writing this the following +enabled full debug. + + export LIBBLKID_DEBUG=0xffff + export LIBMOUNT_DEBUG=0xffff + +The libblkid reads by default /etc/blkid.conf which can be overriden by the +environment variable BLKID_CONF. See manual libblkid/libblkid.3 for details +about the configuration file. + +Block device information is normally kept in a cache file /etc/blkid.tab that +can be overridden by the environment variable BLKID_FILE. + +To libmount uses three paths, which can be override by using environment +variables. Notice that these environment variables are ignored for non-root +users + + env variable if not set defaults to + LIBMOUNT_FSTAB /etc/fstab + LIBMOUNT_MTAB /etc/mtab + LIBMOUNT_UTAB /run/mount/utab or /dev/.mount/utab diff --git a/Documentation/howto-man-page.txt b/Documentation/howto-man-page.txt new file mode 100644 index 000000000..db25c3d4c --- /dev/null +++ b/Documentation/howto-man-page.txt @@ -0,0 +1,161 @@ +.\" This is an util-linux manual page example in troff format. +.\" +.\" .TH macro is expecting following arguments: +.\" title section date footer header +.\" The title is usually command name. +.\" The section must match with file name extension. +.\" The date tells month and year when last update happen. +.\" The footer is fixed to "util-linux". +.\" The header is textual string of section +.\" 1 "User Commands" +.\" 2 "System calls" +.\" 3 "Programmer's Manual" +.\" 4 "Special Files" +.\" 5 "File Formats" +.\" 6 "Games" +.\" 7 "Miscellanea" +.\" 8 "System Administration" +.\" +.\" Please read `man 7 groff_man' howto use various macros. +.\" +.TH EXAMPLE "1" "August 2011" "util-linux" "User Commands" +.SH NAME +example \- an util-linux man page howto +.SH SYNOPSIS +.B example +[options] +.I argument +.SH DESCRIPTION +All manual pages need some sort of description. Write such here. +.SH OPTIONS +.TP +\fB\-n\fR, \fB\-\-no\-argument\fR +This option does not use argument. +.TP +\fB\-o\fR, \fB\-\-optional\fR [\fIargument\fR] +Tell in description an +.I argument +is optional, and what happens when is or is not given. Notice that +.I argument +is not abreviated, like in usage function. Assuming usage function would +define argument to be +.IR num , +the manual page should say +.IR number . +.TP +\fB\-r\fR, \fB\-\-required\fR \fIargument\fR +Tell in description option +.I argument +is required. +.TP +\fB\-V\fR, \fB\-\-version\fR +Display version information and exit. +.TP +\fB\-h\fR, \fB\-\-help\fR +Display help and exit. +.SH NOTES +Tell details what users might need to know. For example kernel feature or +version requirements. +.PP +The man page groff input lines should not exceed 80 characters length. +.PP +Do not leave empty lines to groff input. If you need break or paragraph use +appropriate groff macros. See +.BR groff_man (7) +how to use man page macros. +.PP +Use of +.I italic +which is underlined in terminal, and +.B bold +are not strictly defined. As some sort of convention +.I arguments +use italic, and the +.B other highlights +are bold. +.\" +.\" The manual page comments are undervalued way of adding clarifications +.\" quite not belong to the manual, questions, TODO items etc. Feel free +.\" to use them. +.\" +.PP +When in the source a new sentence begins somewhere midline, it should use a +double space before its initial letter. This is done because groff uses double +spaces last sentence ends to end of line, and next begins from new line. +Unless double spaces are used in middle of of line the spacing style is +inconsistant. +.SH ENVIRONMENT +Tell which environment variables affect, and how, to execution of the command. +.TP +.B EXAMPLE_PATH +Configuratio file path. Notice that a well-known environment variables such as +.B HOME +does not need explanation. +.SH FILES +Tell which file(s) command uses. +.TP +.B $EXAMPLE_PATH +.TQ +.B $HOME/.example.conf +.TQ +.B /etc/example.conf +What are these files, which order and will the evaluation end or continue if a +file is found. In case the explanation is not simple write separated Special +Files manual page that tells about syntax, meaning of key-value settings etc. +The file manual page needs to be referred in +.B SEE ALSO +section. +.TP +.B /var/log/example.log +Another file. +.SH EXAMPLES +Write typical and/or clever use examples here. The bellow examples are stupid, +and you should never write them to real man page. +.TP +.B example -h +Output help screen. +.TP +.B example -V +Output version information. +.SH "EXIT STATUS" +This section can be removed if command has only two return values, +.B 0 +for success and +.B 1 +for failure. Use of +.B sysexits.h +return values must be mentioned, but does not need to be explained. +.PP +.RS +.PD 0 +.TP +.B 0 +success +.TP +.B 1 +failure +.TP +.B 2 +tell why this could happen +.TP +.B 3 +etc +.PD +.RE +.SH AUTHORS +.UR rjh@\:example.org +Random J. Hacker +.UE +.br +.UR fred@\:example.com +Fred Foobar +.UE +.SH "SEE ALSO" +.BR groff_man (7), +.BR foo (1), +.BR bar (8) +.SH AVAILABILITY +The example command is part of the util-linux package and is available from +.UR ftp://\:ftp.kernel.org\:/pub\:/linux\:/utils\:/util-linux/ +Linux Kernel Archive +.UE . 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/howto-usage-function.txt b/Documentation/howto-usage-function.txt new file mode 100644 index 000000000..f717293d9 --- /dev/null +++ b/Documentation/howto-usage-function.txt @@ -0,0 +1,147 @@ +Well-known options +------------------ + +Following options are well-known, and they should not be used to any +other purpose. + + -h, --help display usage and exit + -V, --version display version and exit + +Rule of thumb with other options is that once they exist you may not +change how they work, or remove them. + +Notice that `-?' is not expected to be synonym of --help, but an unknown +options resulting to a usage print out due getopt failure. + + +How usage is supposed to look +----------------------------- + +The usage output begins with empty followed by `Usage:', and on next line +there synopsis begins. Synopsis, and all other lines which vary, are +intended by one space (0x40). + +The synopsis line tells how to execute the command. Some times you may +need multiple synopsis lines, this documented separately under Synopsis +title. + +Notations; Diamond brackets markup an argument. Anything optional is +marked with square brackets, such as optional command arguments, or +optional option arguments. In the later case `=' character in front of +the option argument, because one has to use it. Square brackets with +three dots inside mean unlimited repetition of previous. + +Short option is always wrote first followed by long option. Options are +separated with comma and one space. Lonely short or long option does not +affect where writing of the option begins. + +Bellow, in between snips, is an example of how the usage output should +look like. + +-- snip + +Usage: + program [options] <file> [...] + +Options: + + -n, --no-argument option does not use argument + -o, --optional[=<arg>] option argument is optional + -r, --required <arg> option requires an argument + -z no long option + --xyzzy a long option only + -e, --extremely-long-long-option + use next line for description when needed + -l, --long-explanation an example of very verbose, and chatty option + description on two, or multiple lines, where the + consecutive lines are intended by two spaces + -f, --foobar next option description resets indent + -h, --help display this help and exit + -V, --version output version information and exit + +For more details see program(1). +-- snip + +Notice that there are usage function definitions in c.h include file +which you must use. Location of example is mentioned at the end of this +file. + + +Option description +------------------ + +Option description should not exceed width of 80 characters. If you need +longer description use multiple lines and indentation. + +The description begins from the point of longest option plus two spaces. +In case adding a new option will would cause a description re-indentation +need it either has to be done, or the new option should begin description +from next line. Usually the later is better. The --help and --version +will not follow this rule, since they are defined as constants to ease +translation work. + +The argument, e.g. `arg', can be better. For example if an option is +expecting number as argument a `num' is suitable argument description. + +Order of the options has no special meaning. It is good idea to write +options that are somehow related next to each other. Usually --help and +--version, in this order, are last options in print out. + +Last line of the usage print out is either empty, or a message informing +about manual page. For example: `For more details see example(1).' In +between man page message and options there is empty line. + + +Usage function +-------------- + +Standard usage function takes either stderr or stdout as an argument. The +argument will determine whether the program will exit with error or +success. Usage function will never return. + +In the code all strings with options have to start at the same position. See +bellow what that means. + + fprintf(out, _(" -x[=<foo>] default foo is %s"), x); + fputs( _(" -y some text"), out); + +The usage output should be split to manageable chunks, in practice one or +few lines. + + +Synopsis +-------- + +You may need to use multiple synopsis lines to tell that a command does +fundamentally different things depending on options and/or arguments. For +example ionice either changes priority of a running command, or executes +a program with a defined priority. Therefore it is reasonable to have two +synopsis lines. + + ionice [options] -p <pid> [...] + ionice [options] <command> [<args>] [...] + +Notice that the synopsis not meant to be repetition of options segment. +The fundamental difference in execution is a bit difficult to define +other than usually command author, package maintainer or patch submitter +will know when it should be done that way. + + +Legacy options +-------------- + +Some commands use peculiar options and arguments. These are supported, +but such will not be accepted in future. See list bellow for a hint what +are meant this. + +- Other than `-' used to define an option. See `+' for `more' or `ddate' + commands. +- Option string used as an option argument. See `more' command and `-num'. +- Short long option. See `setterm'. + + +Example +------- + +Command sys-utils/arch.c is a minimal example how to do write usage +function, setup option parsing, version printing and so on. diff --git a/Documentation/hwclock.txt b/Documentation/hwclock.txt new file mode 100644 index 000000000..e76762334 --- /dev/null +++ b/Documentation/hwclock.txt @@ -0,0 +1,3 @@ +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. diff --git a/Documentation/licenses/COPYING.BSD-3 b/Documentation/licenses/COPYING.BSD-3 new file mode 100644 index 000000000..2f1706836 --- /dev/null +++ b/Documentation/licenses/COPYING.BSD-3 @@ -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/COPYING.GPLv2 b/Documentation/licenses/COPYING.GPLv2 new file mode 100644 index 000000000..a43ea2126 --- /dev/null +++ b/Documentation/licenses/COPYING.GPLv2 @@ -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.GPLv2.1 b/Documentation/licenses/COPYING.GPLv2.1 new file mode 100644 index 000000000..cf9b6b997 --- /dev/null +++ b/Documentation/licenses/COPYING.GPLv2.1 @@ -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.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..be70cdee4 --- /dev/null +++ b/Documentation/licenses/COPYING.getopt @@ -0,0 +1,5 @@ +The getopt is explicitly licensed under GNU General Public License, +version 2 terms. + +The complete text of the license is available at the +Documentation/licenses/COPYING.GPLv2 file. 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..7a974cb5b --- /dev/null +++ b/Documentation/pg.txt @@ -0,0 +1,13 @@ +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. + +Gunnar Ritter +Freiburg i. Br. +Germany diff --git a/Documentation/poeigl.txt b/Documentation/poeigl.txt new file mode 100644 index 000000000..00eaa7101 --- /dev/null +++ b/Documentation/poeigl.txt @@ -0,0 +1,503 @@ +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. + +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. + +agetty.c The getty program. From comp.sources.misc, by W.Z. Venema. + Hacked a bit by me. + +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. + +pathnames.h: + Header. + +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/release-schedule.txt b/Documentation/release-schedule.txt new file mode 100644 index 000000000..7e069db28 --- /dev/null +++ b/Documentation/release-schedule.txt @@ -0,0 +1,39 @@ +Release schedule +---------------- + +The util-linux uses <major>.<minor>.<maint> version numbering. +Since the major version is pretty much fixed the release means an +upgrade of minor number. Minor version is update roughly twice +per year. Easiet way to estimate when next version will occur is +to see time stamp of previous release. + +Before a release there are few release candidates, which will be +collectively tested. During test period changes to code base are +restricted. Usually there are two release candidates. + + what lenght what will be accepted to upstream + ------------------------------------------------------- + rc1 1-2 weeks bug fixes only + rc2 1-2 weeks translations, fatal/trivial bug fixes + +The lengty time, usually about five months, after the release can +be considered as merge window. + +Release criteria +---------------- + +For all releases is required: + + - make checkincludes pass + - make checkconfig pass + - make distcheck pass + - cd tests && ./run.sh pass + - out-of-tree build works + cd .. && mkdir build && cd build && ../util-linux/configure && make + + - ideally: build with uClibc, --with-slang + +See also +-------- + +Documentation/source-code-management.txt 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..4d0bd3675 --- /dev/null +++ b/Documentation/releases/v2.20-ReleaseNotes @@ -0,0 +1,1061 @@ +Util-linux 2.20 Release Notes +============================= + + The ddate(1) command is not built by default (see --enable-ddate). + +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 + +setarch(8): + - supports new command line options "--uname-2.6" to enable UNAME26 + personality flag + +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] + - C.UTF-8 locale instead of en_US.UTF-8 [Samuel Thibault] + - Fix IUTF8 flag [Werner Fink] + - add an autologin feature [Werner Fink] + - better support of virtual console [Dr. Werner Fink] + - check virtual console for UTF-8 support [Werner Fink] + - clean up usage [Karel Zak] + - 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] + - improve login(1) argv[] [Karel Zak] + - more code cleanup [Werner Fink] + - only enable F_UTF8 if kernel has already set IUTF8. [Samuel Thibault] + - 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] +blkdev: + - add blkdev_is_misaligned() [Davidlohr Bueso] +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 compiler warnings [-Wunused-parameter] [Karel Zak] + - fix double free [coverity scan] [Karel Zak] + - fix typo [Karel Zak] + - indent usage() [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] + - indent usage() [Karel Zak] + - 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 --enable-ddate [Karel Zak] + - 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 configure.ac for uuidd [Karel Zak] + - fix distcheck for term-utils [Karel Zak] + - fix git-version-gen for -rc tags [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] + - 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] + - release++ (v2.20-rc1) [Karel Zak] + - release++ (v2.20-rc2) [Karel Zak] + - remove and ignore generated files [Karel Zak] + - remove check-news [Karel Zak] + - remove unnecessary files from getopt [Sami Kerola] + - rename --enable-partx to --disable-partx [Karel Zak] + - 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] + - fix manpage formatting [Petr Uzel] + - indent usage() [Karel Zak] + - fix typo ("fistt day") in help text, seize chance to improve it [Benno Schulenberg] +cfdisk: + - add home and end keys movements in partition list [Francesco Cosoleto] + - fix compilation with slang [Karel Zak] + - fix compiler warning [Karel Zak] + - fix compiler warnings [-Wunused-parameter] [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] +chfn: + - fix compiler warnings [-Wsign-compare] [Karel Zak] +chrt: + - [selinux] fix compiler warnings [-Wsign-compare] [Karel Zak] + - add strings to use NLS [Sami Kerola] + - adjust style of man page, alphabetize option -p [Benno Schulenberg] + - 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] + - silently ignore -R if unsupported [Karel Zak] +chsh: + - fix compiler warnings [-Wsign-compare] [Karel Zak] + - 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] + - coding style [Sami Kerola] +cramfs_common: + - coding style [Sami Kerola] +cytune: + - fix compiler warnings [-Wsign-compare] [Karel Zak] + - remove unused variable [Karel Zak] +ddate: + - fix St. Tib's Day in other languages [Karel Zak] + - 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] + - avoid mess at the end of dmesg output [Petr Uzel] + - cleanup options and man page [Karel Zak] + - cleanup usage() [Karel Zak] + - consolidate level parsiig code [Karel Zak] + - don't print non-printable chars, parse records [Karel Zak] + - fix compiler warnings [-Wsign-compare] [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 2.20 ReleaseNotes [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] + - also uniformize headers and footers of troff-formatted man pages [Benno Schulenberg] + - col manual update [Sami Kerola] + - colcrt manual update [Sami Kerola] + - drop the pluralization item with ngettext() in TODO file [Benno Schulenberg] + - 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] + - remove README.namei [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] + - tweak the formatting and wording of several disk-utils man pages [Benno Schulenberg] + - tweak the formatting and wording of some text-utils man pages [Benno Schulenberg] + - un-deprecate kill(1) [Karel Zak] + - uniformize the header and footer lines in man pages [Benno Schulenberg] + - update AUTHORS file [Karel Zak] + - update DEPRECATED file [Karel Zak] + - update ReleaseNotes [Karel Zak] + - update ReleaseNotes fix typo in v2.20-ReleaseNotes [Bernhard Voelker] + - update TODO [Karel Zak] + - update TODO [Sami Kerola] + - update TODO file [Karel Zak] + - update TODO file [Sami Kerola] + - update exmaple files [Karel Zak] + - update v2.20 ReleaseNotes [Karel Zak] + - 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] +fallocate: + - cleanup usage() [Karel Zak] +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] + - fix compiler warnings [-Wunused-parameter -Wsign-compare] [Karel Zak] + - 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] +fdisk, display, hexdump.h: + - Use standard C types instead of u_int, u_char, u_long, etc. [Josiah Worcester] + - correct the grammar of an error message [Benno Schulenberg] +findmnt: + - (man page) short option for --timeout is not -t but -w [Benno Schulenberg] + - 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 compiler warnings [-Wunused-parameter] [Karel Zak] + - fix leak [Karel Zak] + - improve spelling, wording and order of help text [Benno Schulenberg] + - minor coding style changes [Karel Zak] + - print OLD-* columns only when necessary [Karel Zak] + - slice up the help text into manageable chunks [Benno Schulenberg] +flock: + - cleanup usage() [Karel Zak] + - fix example in man page [Karel Zak] +fsck: + - fix -C parsing [Karel Zak] + - fix clang compiler warning [Sami Kerola] + - in man page say that "options take arguments", not vice versa [Benno Schulenberg] + - in usage() unmark type as optional for the -t option [Benno Schulenberg] + - indent usage() [Karel Zak] + - use <var> in usage() [Karel Zak] + - use same word category in message, and add translators comment [Benno Schulenberg] + - use xmalloc, warn & err and new usage [Sami Kerola] +fsck, checktty, flock: + - 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] + - fix compiler warnings [-Wsign-compare] [Karel Zak] + - remove unused variables [Karel Zak] + - use common functionalitly [Davidlohr Bueso] + - use lib/ismounted.c [Karel Zak] +fsfreeze: + - cleanup usage() [Karel Zak] +fstrim: + - cast from __u64 to standard C types [Karel Zak] + - cleanup usage() [Karel Zak] + - correct mistaken grammar in one message [Benno Schulenberg] +fstrim, setarch: + - replace error() with err() [Francesco Cosoleto] +getopt: + - add static qualifiers [Olivier Mengué] + - do not bundle help text lines into a single unwieldy chunk [Benno Schulenberg] + - fix '--unqote' typo in usage text [Francesco Cosoleto] + - fix coding style [Sami Kerola] + - fix gcc warning [Karel Zak] + - indent usage() [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 <var> in usage() [Karel Zak] + - use xalloc.h [Sami Kerola] +hexdump: + - don't include err.h directly [Karel Zak] + - fix "beginnin" typo in usage message [Benno Schulenberg] + - fix segfault due to uninitialized memory [Petr Uzel] + - 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] + - in man page move --date and --epoch from Functions to Options [Benno Schulenberg] + - include-what-you-use header check [Sami Kerola] + - indent usage() [Karel Zak] + - 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 <var> in usage() [Karel Zak] + - use libc error printing functions [Sami Kerola] + - validate numeric option arguments [Sami Kerola] + - when cutting up help texts anyway, do it into small chunks [Benno Schulenberg] +include: + - [at.h] include c.h for PATH_MAX [Karel Zak] + - [bitops.h] make return values consistent [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] Include stdlib.h unconditionaly [maximilian attems] + - [c.h] add definition wrappers for old libc versions [Davidlohr Bueso] + - [c.h] move up declaration of program_invocation_short_name before usage [maximilian attems] + - [nls.h] define a macro for handling plurals with ngettext() [Benno Schulenberg] + - [strutils.c] add list parsers [Karel Zak] + - [tt.c] always truncate if TT_FL_TRUNC [Karel Zak] + - [writeall] add fwrite_all() [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] +ionice: + - IOPRIO_PRIO_* macros [Karel Zak] + - add long options [Sami Kerola] + - adjust synopsis and wording and formatting on the man page [Benno Schulenberg] + - allow to use names for -c <class> [Karel Zak] + - coding style fixes [Sami Kerola] + - fix -V output [Sami Kerola] + - fix -p [Karel Zak] + - fix compiler warnings [-Wsign-compare] [Karel Zak] + - improve command line interpretation [Karel Zak] + - make -t more tolerant [Karel Zak] + - slightly improve grammar, spacing and consistency of man page [Benno Schulenberg] +iosize: + - fix gcc warning [Karel Zak] +ipcmk: + - cleanup usage() [Karel Zak] +ipcs: + - fix compiler warnings [-Wsign-compare] [Karel Zak] + - fix typo [Karel Zak] + - really show all resources when -a and -i are combined [Jens Kristian Søgaard] + - use unsigned type for uid/gid [Karel Zak] +isosize: + - check user input to be numeric [Sami Kerola] + - fix coding style [Sami Kerola] + - improve style, grammar and spacing of man page [Benno Schulenberg] + - 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] + - fix compiler warnings [-Wsign-compare] [Karel Zak] + - translate "-l <num>" to RT<n> [Karel Zak] +last: + - fix compiler warnings [-Wsign-compare] [Karel Zak] +ldattach: + - cleanup usage() [Karel Zak] +lib: + - [at.c] add readlink_at(), fix semantic for absolute paths [Karel Zak] + - [at.c] fix compiler warnings [-Wunused-parameter] [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] + - [cpuset.c] fix compiler warnings [-Wsign-compare] [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] + - [loopdev.c] correct qsort compare function [Karel Zak] + - [loopdev.c] correct trivial typo [Davidlohr Bueso] + - [mangle.c] fix compiler warnings [-Wsign-compare] [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] fix compiler warnings [-Wsign-compare] [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 compiler warnings [-Wsign-compare] [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] clean up used types [Karel Zak] + - [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: + - [partitions] fix compiler warnings [-Wunused-parameter -Wsign-compare] [Karel Zak] + - [superblocks] fix compiler warnings [-Wunused-parameter -Wsign-compare] [Karel Zak] + - [topology] fix compiler warnings [-Wunused-parameter -Wsign-compare] [Karel Zak] + - 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] + - befs validate di_br_size !=0 and br_per_di_br != 0 [Timo Warns] + - 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 compiler warnings [-Wunused-parameter -Wsign-compare] [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] + - cut up mount's help text into manageable chunks [Benno Schulenberg] + - don't export functions for vfs/fs/userspace mount options [Karel Zak] + - fix compiler warnings [-Wunused-parameter -Wsign-compare] [Karel Zak] + - fix debug message [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 undefined sources [Davidlohr Bueso] + - 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] + - update list of pseudo-filesystems [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] + - improve descriptions on man page, sort the options, add -h and -V [Benno Schulenberg] + - improve, sort and slice up usage() help text [Benno Schulenberg] + - indent usage() [Karel Zak] + - 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] + - use simple apostrophe instead of multibyte char in logger.1 [Petr Uzel] +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 compiler warnings [-Wunused-parameter -Wsign-compare] [Karel Zak] + - fix typos in man page [Karel Zak] +login-utils: + - include fix [Sami Kerola] +look: + - add long options [Sami Kerola] + - adjust the formatting and some wording of the man page [Benno Schulenberg] + - cleanup usage() [Karel Zak] + - fix manpage formatting [Petr Uzel] +losetup: + - allow to use --verbose with --all [Karel Zak] + - cleanup usage() [Karel Zak] + - correct qsort compare function [Andreas Schwab] + - spelling fixes [Petr Uzel] +lsblk: + - add --pairs to output in key="value" format [Karel Zak] + - add TYPE column to lsblk output [Milan Broz] + - add note to the man page [Karel Zak] + - 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] + - correct mistaken word [Benno Schulenberg] + - fix compiler warnings [-Wsign-compare] [Karel Zak] + - 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] + - cleanup usage() [Karel Zak] + - 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 compiler warnings [-Wsign-compare] [Karel Zak] + - 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] + - cleanup usage() [Karel Zak] + - 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] + - cleanup usage() [Karel Zak] + - 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: + - hurd build fixes [Samuel Thibault] + - use unsigned int for bit-fileds [Karel Zak] +misc-utils: + - remove misleading README files [Sami Kerola] +mkfs: + - add long options [Sami Kerola] + - coding style fixes [Sami Kerola] + - fix small formatting issues in man page [Benno Schulenberg] + - 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: + - clearer error message, "cannot close" instead of "closing" [Benno Schulenberg] + - 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] + - fix compiler warnings [-Wsign-compare] [Karel Zak] + - fix write_all() usage [Karel Zak] + - 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: + - Use c.h [maximilian attems] + - 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 compiler warnings [-Wsign-compare -Wunused-parameter] [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] + - cleanup usage() [Karel Zak] +namei: + - add --version option [Sami Kerola] + - cleanup usage() [Karel Zak] + - 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] + - cleanup usage() [Karel Zak] + - do not print null [Davidlohr Bueso] + - get partition number with sysfs lib [Davidlohr Bueso] + - improve clarity of some messages, gettextize two missed ones [Benno Schulenberg] + - remove unused headers [Davidlohr Bueso] + - switch on localization [Benno Schulenberg] + - trivial comment fix [Davidlohr Bueso] + - use lowercase in usage() [Karel Zak] + - use sysfs_deinit [Davidlohr Bueso] +partx, lsblk: + - fix gettext calls [Karel Zak] +pg: + - fix compiler warnings [-Wunused-result] [Karel Zak] + - fix write_all() usage [Karel Zak] + - normalize formatting of the man page, and tweak some of its wording [Benno Schulenberg] + - return value warning fix [Sami Kerola] + - use size_t for wcstombs() return code [Sami Kerola] +po: + - also extract plural messages from the C files [Benno Schulenberg] + - change MSGID_BUGS_ADDRESS [Karel Zak] + - do not search /samples/ subdirectories for translatable strings [Benno Schulenberg] + - merge changes [Karel Zak] + - update cs.po (from translationproject.org) [Petr Písař] + - update da.po (from translationproject.org) [Joe Hansen] + - update de.po (from translationproject.org) [Philipp Thomas] + - update fr.po (from translationproject.org) [David Prévot] + - update ja.po (from translationproject.org) [Takeshi Hamasaki] + - update nl.po (from translationproject.org) [Benno Schulenberg] + - update pl.po (from translationproject.org) [Jakub Bogusz] +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] + - fix compiler warnings [-Wsign-compare] [Karel Zak] +rename: + - cleanup usage() [Karel Zak] + - verbose option & maintenance fixes [Sami Kerola] +renice: + - cleanup usage() [Karel Zak] +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: + - cleanup usage() [Karel Zak] + - do not duplicate argument strings [Davidlohr Bueso] + - test for available suspend modes [Lawrence Rust] +script: + - cleanup usage() [Karel Zak] + - don't include err.h directly [Karel Zak] + - fix compiler warnings [Sami Kerola] + - include-what-you-use header check [Sami Kerola] + - indicate that the file argument to --timing is optional [Benno Schulenberg] + - inform about long options in script manual page [Sami Kerola] + - normalize formatting of the man page [Benno Schulenberg] + - 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] + - cleanup usage() [Karel Zak] + - end printing with new line [Sami Kerola] + - fix buffer overflow [Sami Kerola] + - improve synopsis and formatting and wording in man page [Benno Schulenberg] + - support long options [Sami Kerola] +setarch: + - add --uname-2.6 option for personality flag UNAME26 [Ben Hutchings] + - fix compiler warnings [-Wsign-compare] [Karel Zak] +setterm: + - add note about long dump file paths to man page [Sami Kerola] + - cleanup usage() [Karel Zak] + - 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: + - (man page) use comma between short and long option instead of "or" [Benno Schulenberg] + - correct '--inside-order' to '--inside-outer' in documentation [Benno Schulenberg] + - declare unused function attributes [Sami Kerola] + - fix coding style. [Karel Zak] + - fix for data type mismatches [Sami Kerola] + - fix implicit overflow [Sami Kerola] + - fix typo in man page [Karel Zak] + - gettextize each warning as a whole [Benno Schulenberg] + - help screen format [Sami Kerola] + - improve descriptions of options --no-reread and --show-extended [Benno Schulenberg] + - indent usage() [Karel Zak] + - make some tests conditional to !Linux [Giulio Orsero] + - previously undocumented options to usage [Sami Kerola] + - remove inconsistent and wasteful newlines in the _() calls [Benno Schulenberg] + - rename warn to my_warn [Fabian Groffen] + - returns non-zero on failed BLKRRPART ioctl [Andrea Galbusera] + - slice help text into small chunks and improve its wording [Benno Schulenberg] +simpleinit: + - remove this deprecated set of utils [Karel Zak] +strutils: + - new wrapper function strtoll_or_err [Sami Kerola] +swaplabel: + - fix compiler warnings [-Wunused-parameter] [Karel Zak] +swapon: + - fix compiler warnings [-Wsign-compare] [Karel Zak] + - missing separator in swapon -s command [Karel Zak] + - rewrite usage() [Karel Zak] + - 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] + - harmonize option argument and explanation in usage message [Benno Schulenberg] + - support --lines 0 [Karel Zak] + - tailf mention new help & version options in man page [Sami Kerola] + - use long options [Sami Kerola] +taskset: + - adjust style of man page [Benno Schulenberg] + - 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] + - fix compiler warnings [-Wunused-parameter] [Karel Zak] + - grammar fixes [Davidlohr Bueso] + - 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: + - add some guiding comments for translators [Benno Schulenberg] + - 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] +tunelp: + - fix compiler warnings [-Wsign-compare] [Karel Zak] +ul: + - add -h and -V to the man page; use "file" and lowercase [Benno Schulenberg] + - in usage() not overwriting but overriding is meant [Benno Schulenberg] + - make usage() say that more than one input file is allowed [Benno Schulenberg] + - remove superfluous return as usage() does not return [Benno Schulenberg] +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] +unshare: + - cleanup usage() [Karel Zak] +uuidd: + - (man page) alphabetize the options [Benno Schulenberg] + - (man page) repair the snipped up description of option -T [Benno Schulenberg] + - add "-q" to synopsis, order options alphabetically [Benno Schulenberg] + - cleanup usage() [Karel Zak] + - coding style fixes [Sami Kerola] + - die() function removed [Sami Kerola] + - distinguish between singular and plural in three messages [Benno Schulenberg] + - fix compiler warnings [-Wsign-compare] [Karel Zak] + - 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] + - cleanup usage() [Karel Zak] +vipw: + - (man page) uniformize header and footer, tweak the formatting [Benno Schulenberg] +wall: + - add long options and 79 char cut info to the man page [Sami Kerola] + - build with SUID_{C,LD}FLAGS [Petr Uzel] + - cleanup mbufsize usage [Karel Zak] + - cleanup 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: + - cleanup usage() [Karel Zak] + - 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] + - change option -v to -V for --version; add it to man page [Benno Schulenberg] + - gettextize one sentence as a whole [Benno Schulenberg] +write: + - cleanup usage() [Karel Zak] + - long options & new usage [Sami Kerola] + - maintenance fixes [Sami Kerola] + - remove inconsistent periods from two error messages [Benno Schulenberg] + +- cleanup usage() [Karel Zak] +- long options & new usage [Sami Kerola] +- maintenance fixes [Sami Kerola] +- remove inconsistent periods from two error messages [Benno Schulenberg] 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. diff --git a/Documentation/source-code-management.txt b/Documentation/source-code-management.txt new file mode 100644 index 000000000..cb192c732 --- /dev/null +++ b/Documentation/source-code-management.txt @@ -0,0 +1,29 @@ +SCM (source code management): + + git clone git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git util-linux + +Branches: + + * 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. |