* `RFKILL_EVENT_SIZE_V1` is defined as sizeof(struct rfkill_event), so let's use %zu
* cast `len` to size_t to make it usable with %zu
Signed-off-by: Karel Zak <kzak@redhat.com>
* rename MANPAGES_EXTRA= to ADOCFILES_COMMON=
* keep track about individual adoc files by dist_noinst_DATA=
This variable is not effected by automake conditions, so the files
are always distributed.
Signed-off-by: Karel Zak <kzak@redhat.com>
* 'master' of https://github.com/arbego/util-linux:
Fixed wrongful time_t=long assumptions in hwclock.c and timeutils.c
Changed int64_t casts to long long int casts
Fixed format strings and type casts in hwclock to work with 64-bit time_t on 32-bit linux
It's possible that lscpu does not print any caches if full caches size
is zero. In this case we do not need the header.
Addresses: https://github.com/karelzak/util-linux/issues/1207
Signed-off-by: Karel Zak <kzak@redhat.com>
* 'topic/po4a' of https://github.com/mariobl/util-linux:
mount.a.adoc: Fix markup
Asciidoc: Add missing macro definition in uclampset.1
Asciidoc: Fix markup in example man page
Asciidoc: Fix markup
Asciidoc: Remove artifact from merge conflict
Asciidoc: Convert man-common/README to Markdown
po-man: Fix the example man page
po-man: Fix typos in po-man/README.md
po-man: Update the example man page
po-man: Add po-man/README.md
po-man: Add (incomplete) de.po for testing purposes
po-man: Add (incomplete) de.po for testing purposes
po-man: Adjust paths in po4a.cfg and update .pot file
po-man: Move Po4a config file and translation template to po-man
Because the headings are aligned with tabs the fields must
always be a multiple of 8 characters. Moreover if the field
values are shorter than 8 characters, extra tabs must be
inserted before the succeding field to keep alignment.
swapon parses /proc/swaps, generated by the Linux kernel in
mm/swapfile.c. Its function swap_show() and its recent fix in
commit 6f7939405f61de7d0da7f6c90182e96c4f5ff6c1 were used as
inspiration for this commit.
Additionally inform the translators about the requirements of
formatting and relationship between the heading and entry strings.
The prlimit description are always defined as static strings, but it
seems better to make the code more readable and robust for static
analyzers and readers.
Fix also missing gettext() call for description help.
Fixes: https://github.com/karelzak/util-linux/issues/1277
Signed-off-by: Karel Zak <kzak@redhat.com>
* don't use dist_noinst_DATA= for generated man pages (use man_MANS=)
* make asciidoctor optional
* add --disable-asciidoc to explicitly disable man pages
Addresses: https://github.com/karelzak/util-linux/issues/1257
Signed-off-by: Karel Zak <kzak@redhat.com>
We need to evaluate "include::" directive relatively to project
top-level source directory rather than to the current document
location.
Signed-off-by: Karel Zak <kzak@redhat.com>
The symlinks are generated by asciidoctor and current dist_man_MANS
depends on order (nan page before man link). This solutions is useless
when execute "make -j". The real solution is to keep man pages in
separate variable and use only this variable evaluate what we need to
generate.
Signed-off-by: Karel Zak <kzak@redhat.com>
For example for hierarchy:
$ findmnt -oTARGET,ID,PARENT
TARGET ID PARENT
/mnt/A 802 62
└─/mnt/A/B 937 802
├─/mnt/A/B/C 964 937
│ └─/mnt/A/B/C 991 964
└─/mnt/A/B 1018 937
└─/mnt/A/B 1045 1018
we need umount in order (id): 1045, 1018, 991, 964, 937, 802. The current
code first tries 991 in 937 branch.
Reported-by: Lennart Poettering <lennart@poettering.net>
Signed-off-by: Karel Zak <kzak@redhat.com>
Besides some formatting tweaks, I've changed »lsblk(1)« into »lsblk(8)«
in the SEE ALSO section of mount.8.adoc. At least Archlinux and Debian
ship lsblk as a system administration command.
To build: meson build && ninja -C build
To run tests: ninja -C build check
To install for packaging: DESTDIR=/var/tmp/inst ninja -C build install
To install for realz: sudo ninja -C build install
v2:
- Optional items are now based on the 'feature' feature in meson.
Built libraries which are disabled turn into disabler() objects
and also poison any executables which link to them.
What is there:
- building of the binaries and libs and the python module
- installation of binaries, libs, python module, localization files,
man pages, pkgconfig files
- running of tests
- most options to configure build equivalently to the
./configure settings
Partially implemented:
- disabling of stuff when things missing. In the C code, the defines
are all used, so that should be fine. In the build system, some
files should be skipped, but that is probably not always done properly.
Getting this right might require some testing of various build option
combinations to get the details right.
Not implemented:
- static builds of fdisk and other binaries
- things marked with XXX or FIXME
- ???
Differences:
- .la files are not created. They are useless and everybody hates them.
- Requires.private in pkgconfig files are not present in the
autogenerated .pc file. Not sure if they should be there or not. If
necessary, they can be added by hand.
- man pages and systemd units are installed by the install target. Not
sure why 'make install' doesn't do that.
- the split between / and /usr is probably wrong. But it's all pointless
anyway, so maybe we could simplify things but not implementing it at
all under meson?
The function read_buffer() implements read and clear functionally, but
we do not differentiate between these actions in main() for error
messages, and one generic "dmesg: read kernel buffer failed" is used
in all cases. That's a bug.
This patch removes the "clear" action from read_buffer() and keeps it
for buffer reading only. The "clear" action is implemented in main()
by separate klogctl(SYSLOG_ACTION_CLEAR) for cases. It means also for
"dmesg --read-clear"; we do not use SYSLOG_ACTION_READ_CLEAR anymore.
Now "clear+read" is:
* syslog: SYSLOG_ACTION_READ_ALL + SYSLOG_ACTION_CLEAR
* kmsg: /dev/kmsg read() + SYSLOG_ACTION_CLEAR
In old versions "dmesg --syslog --read-clear" (syalog backed) was
implemented by logctl(SYSLOG_ACTION_READ_CLEAR) and it returns no
data for non-root users (due to EPERM), "dmesg --read-clear" (kmsg)
returns data and EPERM for the "clear" action.
Now the command "dmesg --syslog --read-clear" and "dmesg --read-clear"
behaves in the same way -- returns data and EPERM for the "clear"
action.
Fixes: https://github.com/karelzak/util-linux/issues/1255
Signed-off-by: Karel Zak <kzak@redhat.com>
>>> CID 365738: Uninitialized variables (UNINIT)
>>> Using uninitialized value "ret". Field "ret" is uninitialized.
326 return ret;
Signed-off-by: Karel Zak <kzak@redhat.com>
The previous commit 7a08784ab0 reduced
number of situation when we need fallback when kbytes calculated for
shmall pages, but there is still possible to see overflows.
This patch add fallback also for kbytes.
Signed-off-by: Karel Zak <kzak@redhat.com>
Avoid computing the number of bytes in shmall, by only
computing and printing the number of Kbytes. This avoids
some overflows, e.g.
$ echo "4503599627370496" > /proc/sys/kernel/shmall
$ ipcs -l | grep 'max total shared memory'
Before:
max total shared memory (kbytes) = 18014398509481980
After:
max total shared memory (kbytes) = 18014398509481984
$ echo "99993599627370500" > /proc/sys/kernel/shmall
99993599627370500
$ ipcs -l | grep 'max total shared memory'
Before:
max total shared memory (kbytes) = 18014398509481980
After:
max total shared memory (kbytes) = 399974398509482000
v1->v2:
Print the non-overflow KB value only for IPC_UNIT_KB and
IPC_UNIT_DEFAULT.
This way --bytes and --human options will still get an expected
output
(but not avoiding the overflow).
Signed-off-by: Vasilis Liaskovitis <vliaskovitis@suse.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
It seems like overkill to provide this #ifdef. For example coreutils
use "char *" for all selinux contexts (since 2014).
Signed-off-by: Karel Zak <kzak@redhat.com>
* '2020wk47' of https://github.com/kerolasa/util-linux:
build-sys: sort various lists in configure.ac
mkswap: tell how to fix insecure permissions and owner in warning
lsipc: make default output byte sizes to be in human units
man: add missing backslash to caret printing macro
lscpu: fix variable shadowing
uuidgen: give hint in usage() what uuid namepaces can be used
uuidgen: use errx() rather than fprintf() when priting errors
libuuid: simplify uuid_is_null() check
uuidparse: use uuid type definitions from libuuid header
uuidparse: use libuuid function to test nil uuid
The man-page indicates that mount expects UUIDs to be lower case.
Mention that NTFS and FAT volume IDs are to be specified in upper case.
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Recent request to make ipcs(1) list sizes in human format caused the
observation lsipc(1) is not doing that either. This commit changes sizes to
human format, assuming --bytes option is not used.
Reference: https://github.com/karelzak/util-linux/issues/1199
Signed-off-by: Sami Kerola <kerolasa@iki.fi>
sys-utils/lscpu-virt.c: In function ‘lscpu_read_virtualization’:
sys-utils/lscpu-virt.c:574:9: warning: declaration of ‘buf’ shadows a previous local [-Wshadow]
574 | char buf[256];
| ^~~
sys-utils/lscpu-virt.c:506:7: note: shadowed declaration is here
506 | char buf[BUFSIZ];
| ^~~
Signed-off-by: Sami Kerola <kerolasa@iki.fi>