]> git.ipfire.org Git - thirdparty/util-linux.git/log
thirdparty/util-linux.git
4 years agolscpu: don't use DMI if executed with --sysroot
Karel Zak [Fri, 2 Jul 2021 11:12:13 +0000 (13:12 +0200)] 
lscpu: don't use DMI if executed with --sysroot

Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agofstrim: clean return code on --quiet-unsupported
Karel Zak [Thu, 1 Jul 2021 15:06:34 +0000 (17:06 +0200)] 
fstrim: clean return code on --quiet-unsupported

This feature is already supported for -a and -A. Let's support it also
when FS specified on command line.

Addresses: https://github.com/systemd/mkosi/pull/721
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agoMerge branch 'tests' of https://github.com/rossburton/util-linux
Karel Zak [Wed, 30 Jun 2021 10:39:13 +0000 (12:39 +0200)] 
Merge branch 'tests' of https://github.com/rossburton/util-linux

4 years agolsblk: normalize space in SERIAL and MODEL
Karel Zak [Wed, 30 Jun 2021 10:25:18 +0000 (12:25 +0200)] 
lsblk: normalize space in SERIAL and MODEL

These strings come from HW and udev does not modify it. It seems good
idea to clean up it before we print it.

Fixes: https://github.com/karelzak/util-linux/issues/1368
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agotests: mark ul/ul as a known failure
Ross Burton [Wed, 30 Jun 2021 10:25:01 +0000 (11:25 +0100)] 
tests: mark ul/ul as a known failure

As with ul/basic, this test produces different output when ran under
different terminals, which isn't very useful.

Set TS_KNOWN_FAIL so that these problems don't cause the test to fail.

Signed-off-by: Ross Burton <ross.burton@arm.com>
4 years agoMerge branch 'kill' of https://github.com/rossburton/util-linux
Karel Zak [Wed, 30 Jun 2021 10:07:50 +0000 (12:07 +0200)] 
Merge branch 'kill' of https://github.com/rossburton/util-linux

* 'kill' of https://github.com/rossburton/util-linux:
  tests: check correct log file for errors in blkdiscard test
  tests: don't hardcode /bin/kill in the kill tests

4 years agolibblkid: remove EVMS support
Karel Zak [Wed, 30 Jun 2021 09:35:45 +0000 (11:35 +0200)] 
libblkid: remove EVMS support

"When you discover you're riding a dead horse, the best strategy is to dismount."

EVMS is dead since 2006, LVM is the winner.

Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agolscpu: remove the old code
Huang Shijie [Thu, 17 Jun 2021 12:41:16 +0000 (12:41 +0000)] 
lscpu: remove the old code

The file "/sys/firmware/dmi/tables/DMI" always exists.

The dmi_decode_cputype() can provide more information then arm_smbios_decode().
So remove it to tidy the code.

Before this patch, we can get the output from Centos 7.9 who has
"/sys/firmware/dmi/entries/4-0/raw" and "/sys/firmware/dmi/tables/DMI":
  ----------------------------------------------------
  BIOS Vendor ID:                  Ampere(TM)
  Model name:                     Neoverse-N1
    BIOS Model name:               Ampere(TM) Altra(TM) Processor
  ----------------------------------------------------

 After this patch which uses "/sys/firmware/dmi/tables/DMI", in Centos 7.9, we get:
  ----------------------------------------------------
  BIOS Vendor ID:                  Ampere(TM)
  Model name:                     Neoverse-N1
    BIOS Model name:               Ampere(TM) Altra(TM) Processor Q00-00 CPU @ 2.8GHz
    BIOS CPU family:               257
  ----------------------------------------------------

Signed-off-by: Huang Shijie <shijie@os.amperecomputing.com>
4 years agotests: check correct log file for errors in blkdiscard test
Ross Burton [Tue, 29 Jun 2021 17:10:40 +0000 (18:10 +0100)] 
tests: check correct log file for errors in blkdiscard test

When checking if the discard ioctl is supported, look in stderr not stdout as
that is where the error appears.

Signed-off-by: Ross Burton <ross.burton@arm.com>
4 years agotests: don't hardcode /bin/kill in the kill tests
Ross Burton [Tue, 29 Jun 2021 15:34:20 +0000 (16:34 +0100)] 
tests: don't hardcode /bin/kill in the kill tests

If the 'kill' test is executed with --use-system-commands, it calls
/bin/kill to avoid the shell's own kill command being invoked.

However, this doesn't work if the kill we want to test isn't in fact in
/bin.  Instead, use $(which kill) to find a kill on the PATH and call
that directly.

Signed-off-by: Ross Burton <ross.burton@arm.com>
4 years agocfdisk: optimize mountpoint detection for PARTUUID
Karel Zak [Fri, 25 Jun 2021 10:58:51 +0000 (12:58 +0200)] 
cfdisk: optimize mountpoint detection for PARTUUID

Don't check fstab (and udev symplinks) for new UUIDs.

Fixes: https://github.com/karelzak/util-linux/issues/1331
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agoMerge branch 'fix_mount_fscontext' of https://github.com/tweksteen/util-linux
Karel Zak [Fri, 25 Jun 2021 09:47:06 +0000 (11:47 +0200)] 
Merge branch 'fix_mount_fscontext' of https://github.com/tweksteen/util-linux

* 'fix_mount_fscontext' of https://github.com/tweksteen/util-linux:
  mount.8.adoc: Remove context options exclusion

4 years agohexdump: do not use atoi()
Karel Zak [Fri, 25 Jun 2021 09:05:21 +0000 (11:05 +0200)] 
hexdump: do not use atoi()

Addresses: https://github.com/karelzak/util-linux/issues/1358
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agopg: do not use atoi()
Karel Zak [Fri, 25 Jun 2021 08:24:35 +0000 (10:24 +0200)] 
pg: do not use atoi()

Addresses: https://github.com/karelzak/util-linux/issues/1358
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agomisc: improve string to number conversions
Karel Zak [Thu, 24 Jun 2021 14:42:53 +0000 (16:42 +0200)] 
misc: improve string to number conversions

Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agoinclude/strutils: consolidate string to number conversion
Karel Zak [Thu, 24 Jun 2021 14:36:58 +0000 (16:36 +0200)] 
include/strutils: consolidate string to number conversion

Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agomore: fix null-pointer dereference
Karel Zak [Wed, 23 Jun 2021 09:37:31 +0000 (11:37 +0200)] 
more: fix null-pointer dereference

The command allows executing arbitrary shell commands while viewing a file by
entering '!' followed by the command. Entering a command that contains a '%',
'!', or '\' causes a segmentation violation.

The same more(1) function has a problem when not file is specified (cat
/etc/passwd | more) on command line.

Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=1975153
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agoagetty: do not use atol()
Karel Zak [Tue, 22 Jun 2021 15:26:11 +0000 (17:26 +0200)] 
agetty: do not use atol()

Addresses: https://github.com/karelzak/util-linux/issues/1358
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agolscpu: do not use atoi()
Karel Zak [Tue, 22 Jun 2021 15:06:46 +0000 (17:06 +0200)] 
lscpu: do not use atoi()

Addresses: https://github.com/karelzak/util-linux/issues/1358
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agoutmpdump: do not use atoi()
Karel Zak [Tue, 22 Jun 2021 14:50:46 +0000 (16:50 +0200)] 
utmpdump: do not use atoi()

Addresses: https://github.com/karelzak/util-linux/issues/1358
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agoswapon: do not use atoi()
Karel Zak [Tue, 22 Jun 2021 14:16:38 +0000 (16:16 +0200)] 
swapon: do not use atoi()

Addresses: https://github.com/karelzak/util-linux/issues/1358
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agoipcs: do not use atoi()
Karel Zak [Tue, 22 Jun 2021 13:19:22 +0000 (15:19 +0200)] 
ipcs: do not use atoi()

Addresses: https://github.com/karelzak/util-linux/issues/1358
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agoeject: do not use atoi()
Karel Zak [Tue, 22 Jun 2021 13:15:46 +0000 (15:15 +0200)] 
eject: do not use atoi()

* remove unnecessary strtok() use
* remove atoi use()

Addresses: https://github.com/karelzak/util-linux/issues/1358
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agofsck: do not use atoi()
Karel Zak [Tue, 22 Jun 2021 12:42:56 +0000 (14:42 +0200)] 
fsck: do not use atoi()

Addresses: https://github.com/karelzak/util-linux/issues/1358
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agoinclude/strutils: cleanup strto..() functions
Karel Zak [Tue, 22 Jun 2021 12:20:42 +0000 (14:20 +0200)] 
include/strutils: cleanup strto..() functions

* add ul_strtos64() and ul_strtou64()
* add simple test

Addresses: https://github.com/karelzak/util-linux/issues/1358
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agoblockdev: improve arguments parsing (remove atoi)
Karel Zak [Tue, 22 Jun 2021 10:32:58 +0000 (12:32 +0200)] 
blockdev: improve arguments parsing (remove atoi)

old version:
 # blockdev --setfra 4x096 /dev/sdc

new version:
 # blockdev --setfra 4x096 /dev/sdc
 blockdev: failed to parse command argument: '4x096'

Addresses: https://github.com/karelzak/util-linux/issues/1358
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agocfdisk: do not use atoi()
Karel Zak [Tue, 22 Jun 2021 09:50:06 +0000 (11:50 +0200)] 
cfdisk: do not use atoi()

It's unnecessary to use atoi in this case.

Addresses: https://github.com/karelzak/util-linux/issues/1358
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agoreadprofile: check errno after strto..()
Karel Zak [Mon, 21 Jun 2021 13:37:48 +0000 (15:37 +0200)] 
readprofile: check errno after strto..()

Addresses: https://github.com/karelzak/util-linux/issues/1356
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agowipefs: check errno after strto..()
Karel Zak [Mon, 21 Jun 2021 13:34:06 +0000 (15:34 +0200)] 
wipefs: check errno after strto..()

Addresses: https://github.com/karelzak/util-linux/issues/1356
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agolslocks: check errno after strto..()
Karel Zak [Mon, 21 Jun 2021 13:33:36 +0000 (15:33 +0200)] 
lslocks: check errno after strto..()

Addresses: https://github.com/karelzak/util-linux/issues/1356
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agokill: check errno after strto..()
Karel Zak [Mon, 21 Jun 2021 13:32:51 +0000 (15:32 +0200)] 
kill: check errno after strto..()

Addresses: https://github.com/karelzak/util-linux/issues/1356
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agolslogins: check errno after strto..()
Karel Zak [Mon, 21 Jun 2021 13:31:43 +0000 (15:31 +0200)] 
lslogins: check errno after strto..()

Addresses: https://github.com/karelzak/util-linux/issues/1356
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agofsck: check errno after strto..()
Karel Zak [Mon, 21 Jun 2021 13:29:43 +0000 (15:29 +0200)] 
fsck: check errno after strto..()

Addresses: https://github.com/karelzak/util-linux/issues/1356
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agolsmem: check errno after strto..()
Karel Zak [Mon, 21 Jun 2021 13:29:33 +0000 (15:29 +0200)] 
lsmem: check errno after strto..()

Addresses: https://github.com/karelzak/util-linux/issues/1356
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agolscpu: check errno after strto..()
Karel Zak [Mon, 21 Jun 2021 13:00:40 +0000 (15:00 +0200)] 
lscpu: check errno after strto..()

Addresses: https://github.com/karelzak/util-linux/issues/1356
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agohwclock: check errno after strto..()
Karel Zak [Mon, 21 Jun 2021 13:00:40 +0000 (15:00 +0200)] 
hwclock: check errno after strto..()

Addresses: https://github.com/karelzak/util-linux/issues/1356
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agoipcs: check errno after strto..()
Karel Zak [Mon, 21 Jun 2021 13:00:40 +0000 (15:00 +0200)] 
ipcs: check errno after strto..()

Addresses: https://github.com/karelzak/util-linux/issues/1356
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agolibuuid: check errno after strto..()
Karel Zak [Mon, 21 Jun 2021 13:00:40 +0000 (15:00 +0200)] 
libuuid: check errno after strto..()

Addresses: https://github.com/karelzak/util-linux/issues/1356
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agolibmount: check errno after strto..()
Karel Zak [Mon, 21 Jun 2021 13:00:40 +0000 (15:00 +0200)] 
libmount: check errno after strto..()

Addresses: https://github.com/karelzak/util-linux/issues/1356
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agolibblkid: check errno after strto..()
Karel Zak [Mon, 21 Jun 2021 13:00:40 +0000 (15:00 +0200)] 
libblkid: check errno after strto..()

Addresses: https://github.com/karelzak/util-linux/issues/1356
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agomount.8.adoc: Remove context options exclusion
Thiébaud Weksteen [Mon, 21 Jun 2021 12:15:16 +0000 (14:15 +0200)] 
mount.8.adoc: Remove context options exclusion

The exclusivity between the {fscontext, defcontext} and context options
was removed in kernel 2.6.25[1]. No specific verification on these
options is done in mount(8)[2].

[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=c9180a57a9ab2d5525faf8815a332364ee9e89b7
[2] https://github.com/karelzak/util-linux/blob/master/libmount/src/context_mount.c#L202

4 years agomisc: consolidate stat() error message
Karel Zak [Mon, 21 Jun 2021 10:40:41 +0000 (12:40 +0200)] 
misc: consolidate stat() error message

Let's use the same error message everywhere to reduce number of
strings for translators.

Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agofsck.cramfs: use open+fstat rather than stat+open
Karel Zak [Mon, 21 Jun 2021 10:39:33 +0000 (12:39 +0200)] 
fsck.cramfs: use open+fstat rather than stat+open

Fixes: https://github.com/karelzak/util-linux/issues/1353
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agoinclude/c: add drop_permissions(), consolidate UID/GID reset
Karel Zak [Mon, 21 Jun 2021 10:25:31 +0000 (12:25 +0200)] 
include/c: add drop_permissions(), consolidate UID/GID reset

Fixes: https://github.com/karelzak/util-linux/issues/1354
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agodmesg: remove condition [lgtm scan]
Karel Zak [Fri, 18 Jun 2021 15:57:13 +0000 (17:57 +0200)] 
dmesg: remove  condition [lgtm scan]

Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agolscpu: add more sanity checks for dmi_decode_cputype()
Huang Shijie [Fri, 18 Jun 2021 12:46:32 +0000 (12:46 +0000)] 
lscpu: add more sanity checks for dmi_decode_cputype()

After tested on different platforms, we found dmi_string() may return NULL
in some case.

So add more sanity checks for dmi_decode_cputype().

Signed-off-by: Huang Shijie <shijie@os.amperecomputing.com>
4 years agotools: report and use LDFLAGS in tools/config-gen
Karel Zak [Fri, 18 Jun 2021 15:37:38 +0000 (17:37 +0200)] 
tools: report and use LDFLAGS in tools/config-gen

Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agobuild-sys: use $LIBS rather than LDFLAGS
Karel Zak [Fri, 18 Jun 2021 15:21:13 +0000 (17:21 +0200)] 
build-sys: use $LIBS rather than LDFLAGS

Fixes: https://github.com/karelzak/util-linux/pull/1349
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agolib/path: (test) fix ul_new_path() use
Karel Zak [Fri, 18 Jun 2021 15:02:38 +0000 (17:02 +0200)] 
lib/path: (test) fix ul_new_path() use

4 years agomore: add __format__ attribute
Karel Zak [Fri, 18 Jun 2021 14:58:38 +0000 (16:58 +0200)] 
more: add __format__ attribute

Reported-by: Jan Pazdziora <jpazdziora@redhat.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agowall: add __format__ attribute
Karel Zak [Fri, 18 Jun 2021 14:56:52 +0000 (16:56 +0200)] 
wall: add __format__ attribute

Reported-by: Jan Pazdziora <jpazdziora@redhat.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agoscript: add __format__ attribute
Karel Zak [Fri, 18 Jun 2021 14:55:40 +0000 (16:55 +0200)] 
script: add __format__ attribute

Reported-by: Jan Pazdziora <jpazdziora@redhat.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agoldattach: add __format__ attribute
Karel Zak [Fri, 18 Jun 2021 14:52:26 +0000 (16:52 +0200)] 
ldattach: add __format__ attribute

Reported-by: Jan Pazdziora <jpazdziora@redhat.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agohwclock: fix ul_path_scanf() use
Karel Zak [Fri, 18 Jun 2021 14:50:58 +0000 (16:50 +0200)] 
hwclock: fix ul_path_scanf() use

Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agoeject: add __format__ attribute
Karel Zak [Fri, 18 Jun 2021 14:49:28 +0000 (16:49 +0200)] 
eject: add __format__ attribute

Reported-by: Jan Pazdziora <jpazdziora@redhat.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agologger: add __format__ attribute
Karel Zak [Fri, 18 Jun 2021 14:42:07 +0000 (16:42 +0200)] 
logger: add __format__ attribute

Reported-by: Jan Pazdziora <jpazdziora@redhat.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agolibfdisk: add and fix __format__ attributes
Karel Zak [Fri, 18 Jun 2021 14:41:20 +0000 (16:41 +0200)] 
libfdisk: add and fix __format__ attributes

Reported-by: Jan Pazdziora <jpazdziora@redhat.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agofindmnt: add __format__ attribute
Karel Zak [Fri, 18 Jun 2021 14:35:33 +0000 (16:35 +0200)] 
findmnt: add __format__ attribute

Reported-by: Jan Pazdziora <jpazdziora@redhat.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agolibmount: add __format__ attribute
Karel Zak [Fri, 18 Jun 2021 14:34:20 +0000 (16:34 +0200)] 
libmount: add __format__ attribute

Reported-by: Jan Pazdziora <jpazdziora@redhat.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agoinclude/strutils: fix __format__attribute
Karel Zak [Fri, 18 Jun 2021 14:33:16 +0000 (16:33 +0200)] 
include/strutils: fix __format__attribute

Reported-by: Jan Pazdziora <jpazdziora@redhat.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agoinclude/path: add __format__attribute
Karel Zak [Fri, 18 Jun 2021 14:32:37 +0000 (16:32 +0200)] 
include/path: add __format__attribute

Reported-by: Jan Pazdziora <jpazdziora@redhat.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agoinclude/c: add __format__ attribute
Karel Zak [Fri, 18 Jun 2021 14:29:02 +0000 (16:29 +0200)] 
include/c: add __format__ attribute

Reported-by: Jan Pazdziora <jpazdziora@redhat.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agotests: fix lsns test on kernels without USER namespaces
Anatoly Pugachev [Fri, 18 Jun 2021 12:45:31 +0000 (14:45 +0200)] 
tests: fix lsns test on kernels without USER namespaces

Reported-by: Bruce Dubbs <bruce.dubbs@gmail.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agomount.8: fix overlayfs nfs_export= indention
Karel Zak [Fri, 18 Jun 2021 12:37:28 +0000 (14:37 +0200)] 
mount.8: fix overlayfs nfs_export= indention

Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agoMerge branch 'man-mount-overlayfs' of https://github.com/iam-TJ/util-linux
Karel Zak [Fri, 18 Jun 2021 10:33:10 +0000 (12:33 +0200)] 
Merge branch 'man-mount-overlayfs' of https://github.com/iam-TJ/util-linux

* 'man-mount-overlayfs' of https://github.com/iam-TJ/util-linux:
  mount: man-page; add all overlayfs options

4 years agoMerge branch 'sys-utils_doc_brackets' of https://github.com/usev6/util-linux
Karel Zak [Fri, 18 Jun 2021 10:30:32 +0000 (12:30 +0200)] 
Merge branch 'sys-utils_doc_brackets' of https://github.com/usev6/util-linux

* 'sys-utils_doc_brackets' of https://github.com/usev6/util-linux:
  Fix some brackets in synopses

4 years agoinclude/strv: fix format attributes
Karel Zak [Fri, 18 Jun 2021 10:25:46 +0000 (12:25 +0200)] 
include/strv: fix format attributes

Reported-by: Jan Pazdziora <jpazdziora@redhat.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agoFix some brackets in synopses
Christian Bartolomäus [Thu, 17 Jun 2021 20:27:17 +0000 (22:27 +0200)] 
Fix some brackets in synopses

4 years agomount: man-page; add all overlayfs options
Tj [Thu, 17 Jun 2021 12:13:22 +0000 (13:13 +0100)] 
mount: man-page; add all overlayfs options

The section in man (8) mount for overlay is missing nine options which
aren't documented elsewhere either and are useful features to be aware
of and use.

Fixes #1350.

4 years agobuild-sys: Update configure.ac
Alex Xu [Wed, 16 Jun 2021 13:58:25 +0000 (13:58 +0000)] 
build-sys: Update configure.ac

1. the test incorrectly used AC_COMPILE_IFELSE instead of
   AC_LINK_IFELSE, defeating the purpose of checking -lcrypt.
2. the test did not properly restore LIBS, causing later checks to all
   fail if libcrypt wasn't found.
3. HAVE_LIBCRYPT only controls whether to use -lcrypt, it is not
   needed or used in any source files.

[kzak@redhat.com: - improve commit message
                  - use UL_{SET,RESTORE}_FLAGS() rather than directly
    modify $LIBS]

Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agolib/path: improve ul_path_readlink() to be more robust
Karel Zak [Thu, 17 Jun 2021 11:28:32 +0000 (13:28 +0200)] 
lib/path: improve ul_path_readlink() to be more robust

According to POSIX, readlink() makes no effort to null-terminate buffer
with the result. It seems better to hide this disadvantage in the
ul_path_...() API rather than assume buf[sz] = '\0' everywhere.

Reported-by: Reported-by: Jan Pazdziora <jpazdziora@redhat.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agomkfs.cramfs: add comment to explain readlink() use
Karel Zak [Thu, 17 Jun 2021 11:26:50 +0000 (13:26 +0200)] 
mkfs.cramfs: add comment to explain readlink() use

Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agorename: use readlink() in more robust way
Karel Zak [Thu, 17 Jun 2021 11:25:43 +0000 (13:25 +0200)] 
rename: use readlink() in more robust way

Reported-by: Jan Pazdziora <jpazdziora@redhat.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agonamei: simplify code
Karel Zak [Thu, 17 Jun 2021 11:23:53 +0000 (13:23 +0200)] 
namei: simplify code

Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agomore: fix setuid/setgid order
Karel Zak [Thu, 17 Jun 2021 10:21:04 +0000 (12:21 +0200)] 
more: fix setuid/setgid order

The rule is pretty simple, always use setgid() before setuid().

Reported-by: Jan Pazdziora <jpazdziora@redhat.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agohardlink: small regex stuff refactoring
Karel Zak [Wed, 16 Jun 2021 13:48:09 +0000 (15:48 +0200)] 
hardlink: small regex stuff refactoring

Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agosulogin: add missing ifdefs
Karel Zak [Wed, 16 Jun 2021 13:44:02 +0000 (15:44 +0200)] 
sulogin: add missing ifdefs

Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agosulogin: use explicit_bzero() for buffer with password
Karel Zak [Wed, 16 Jun 2021 13:39:32 +0000 (15:39 +0200)] 
sulogin: use explicit_bzero() for buffer with password

Reported-by: Jan Pazdziora <jpazdziora@redhat.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agologin: remove obsolete and confusing comment
Karel Zak [Wed, 16 Jun 2021 13:13:50 +0000 (15:13 +0200)] 
login: remove obsolete and confusing comment

Reported-by: Jan Pazdziora <jpazdziora@redhat.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agolscpu: add bios_family
Huang Shijie [Tue, 15 Jun 2021 10:06:39 +0000 (10:06 +0000)] 
lscpu: add bios_family

In the arm platform, we do not have the "CPU family" as X86.
In the linux kernel, it is hardcode to set the "CPU architecuture:8"
which should be changed for arm v9 in future.

This patch adds "bios_family" field, which we can get from the DMI table.
In the ampere Altra platform, we can get the new lscpu output:
    ----------------------------------------------------------------
Architecture:                    aarch64
CPU op-mode(s):                  32-bit, 64-bit
Byte Order:                      Little Endian
CPU(s):                          160
On-line CPU(s) list:             0-159
Vendor ID:                       ARM
BIOS Vendor ID:                  Ampere(R)
Model name:                      Neoverse-N1
BIOS Model name:                 Ampere(R) Altra(R) Processor Q00-00 CPU @ 3.0GHz
BIOS CPU family:                 257
Model:                           1
Thread(s) per core:              1
    ----------------------------------------------------------------

[kzak@redhat.com: - s/sprintf/snprintf/]

Signed-off-by: Huang Shijie <shijie@os.amperecomputing.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agolscpu: get the processor information by DMI
Huang Shijie [Tue, 15 Jun 2021 10:06:38 +0000 (10:06 +0000)] 
lscpu: get the processor information by DMI

The patch :367c85c47286 ("lscpu: use SMBIOS tables on ARM for lscpu")
relies on the existence of "/sys/firmware/dmi/entries/4-0/raw",
which may not exist in standard linux kernel.

But "/sys/firmware/dmi/tables/DMI" should exist and can provide the required
processor information.

This patch uses "/sys/firmware/dmi/tables/DMI"
to get the processor information:

Before this patch, in Ampere Altra platform, the lscpu output is:
   ---------------------------------------------
Architecture:                    aarch64
CPU op-mode(s):                  32-bit, 64-bit
Byte Order:                      Little Endian
CPU(s):                          160
On-line CPU(s) list:             0-159
Vendor ID:                       ARM
Model name:                      Neoverse-N1
Model:                           1
Thread(s) per core:              1
Core(s) per socket:              80
Socket(s):                       2
    ........................................
   ---------------------------------------------

After this patch, we can use get the lscpu output
in Ampere Altra platform:
   ---------------------------------------------
Architecture:                    aarch64
CPU op-mode(s):                  32-bit, 64-bit
Byte Order:                      Little Endian
CPU(s):                          160
On-line CPU(s) list:             0-159
Vendor ID:                       ARM
BIOS Vendor ID:                  Ampere(R)
Model name:                      Neoverse-N1
BIOS Model name:                 Ampere(R) Altra(R) Processor Q00-00 CPU @ 3.0GHz
Model:                           1
Thread(s) per core:              1
Core(s) per socket:              80
Socket(s):                       2
    ........................................
   ---------------------------------------------

[kzak@redhat.com: - s/sprintf/snprintf/]

Signed-off-by: Huang Shijie <shijie@os.amperecomputing.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agolibblkid: fix and cleanup blkid_safe_string()
Karel Zak [Wed, 16 Jun 2021 08:46:40 +0000 (10:46 +0200)] 
libblkid: fix and cleanup blkid_safe_string()

* Don't use 'size_t len' variable for utf8_encoded_valid_unichar()
  return code as it returns negative numbers on invalid utf8 sequence.

* Don't rely only on \0, but check the current position against output
  buffer size.

* Accept hex encoding like the original version.

* Use else-if to avoid unnecessary 'continue'.

Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agomkswap: fix holes detection (infinite loop and/or stack-buffer-underflow)
Karel Zak [Tue, 15 Jun 2021 10:04:43 +0000 (12:04 +0200)] 
mkswap: fix holes detection (infinite loop and/or stack-buffer-underflow)

Reported-by: Brian Lane <bcl@redhat.com>
Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=1971877
Fix: https://github.com/karelzak/util-linux/issues/1348
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agolib/loopdev: perform retry on EAGAIN
Karel Zak [Tue, 15 Jun 2021 08:34:46 +0000 (10:34 +0200)] 
lib/loopdev: perform retry on EAGAIN

Suggested-by: Ingo Franzki <ifranzki@linux.ibm.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agolibblkid: Optimize the blkid_safe_string() function
Karel Zak [Tue, 15 Jun 2021 08:25:24 +0000 (10:25 +0200)] 
libblkid: Optimize the blkid_safe_string() function

Processing whitespace characters. Allows valid ASCII, valid UTF-8.
Replace everything else with '_'

Co-Author: changlianzhi <changlianzhi@uniontech.com>
Signed-off-by: changlianzhi <changlianzhi@uniontech.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agolib/strutils: make test_strutils_normalize() more robust
Karel Zak [Tue, 15 Jun 2021 08:25:06 +0000 (10:25 +0200)] 
lib/strutils: make test_strutils_normalize() more robust

Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agolib/strutils: improve normalize_whitespace()
Karel Zak [Mon, 14 Jun 2021 14:24:59 +0000 (16:24 +0200)] 
lib/strutils: improve normalize_whitespace()

Let's make it possible to use the function to normalize the string
between two buffers (from source to destination).

Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agoMerge branch 'document-selinux-nosuid' of https://github.com/topimiettinen/util-linux
Karel Zak [Mon, 14 Jun 2021 10:48:08 +0000 (12:48 +0200)] 
Merge branch 'document-selinux-nosuid' of https://github.com/topimiettinen/util-linux

* 'document-selinux-nosuid' of https://github.com/topimiettinen/util-linux:
  mount.8.adoc: document SELinux use of nosuid mount flag

4 years agomount.8.adoc: document SELinux use of nosuid mount flag
Topi Miettinen [Sat, 12 Jun 2021 08:34:36 +0000 (11:34 +0300)] 
mount.8.adoc: document SELinux use of nosuid mount flag

Using mount flag `nosuid` also affects SELinux domain transitions but
this has not been documented well.

Signed-off-by: Topi Miettinen <toiwoton@gmail.com>
4 years agodmesg: fix indentation in man page
Platon Pronko [Fri, 11 Jun 2021 18:20:58 +0000 (21:20 +0300)] 
dmesg: fix indentation in man page

Double-semicolon at the end of the option line results in description
being indented extra tab to the right. Replacing them with double-colons
allows all options to be displayed at the same indent level.

4 years agolib/path: fix possible leak when use ul_path_read_string() [coverity scan]
Karel Zak [Fri, 11 Jun 2021 13:43:36 +0000 (15:43 +0200)] 
lib/path: fix possible leak when use ul_path_read_string() [coverity scan]

Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agohwclock: close adjtime on write error [coverity scan]
Karel Zak [Fri, 11 Jun 2021 13:17:42 +0000 (15:17 +0200)] 
hwclock: close adjtime on write error [coverity scan]

Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agonewgrp: fix memory leak [coverity scan]
Karel Zak [Fri, 11 Jun 2021 13:10:22 +0000 (15:10 +0200)] 
newgrp: fix memory leak [coverity scan]

Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agodmesg: fix possible memory leak [coverity scan]
Karel Zak [Thu, 10 Jun 2021 11:44:25 +0000 (13:44 +0200)] 
dmesg: fix possible memory leak [coverity scan]

Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agofindmnt: (verify) fix memory leak [asan]
Karel Zak [Thu, 10 Jun 2021 11:35:05 +0000 (13:35 +0200)] 
findmnt: (verify) fix memory leak [asan]

Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agofindmnt: (verify) fix cache related memory leaks on --nocanonicalize [coverity scan]
Karel Zak [Thu, 10 Jun 2021 11:28:35 +0000 (13:28 +0200)] 
findmnt: (verify) fix cache related memory leaks on --nocanonicalize [coverity scan]

Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agolibblkid: check for ioctl macro rather than for header file
Karel Zak [Wed, 9 Jun 2021 14:12:13 +0000 (16:12 +0200)] 
libblkid: check for ioctl macro rather than for header file

libblkid/src/probe.c:1012:22: error: ‘BLKGETZONESZ’ undeclared (first use in this function)
 1012 |   if (!ioctl(pr->fd, BLKGETZONESZ, &zone_size_sector))
      |                      ^~~~~~~~~~~~

Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agobuild-sys: make autogen.sh output more user friendly
Karel Zak [Wed, 9 Jun 2021 14:09:16 +0000 (16:09 +0200)] 
build-sys: make autogen.sh output more user friendly

Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agobuild-sys: be verbose about missing gettext
Karel Zak [Wed, 9 Jun 2021 13:54:09 +0000 (15:54 +0200)] 
build-sys: be verbose about missing gettext

Reported-by: Qais Yousef <qais.yousef@arm.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
4 years agolsblk: sort list of columns
Karel Zak [Wed, 9 Jun 2021 09:09:33 +0000 (11:09 +0200)] 
lsblk: sort list of columns

It's better to maintain sorted list and it's also better for --help output.

Signed-off-by: Karel Zak <kzak@redhat.com>