Commit Graph

13008 Commits

Author SHA1 Message Date
Stanislav Brabec d16afd8d15 agetty: Return old behavior with empty logname
c094fcd37 introduced a behavior change: When Return is entered with empty
logname, nothing happens. As it confuses users, return back the old
behavior: re-prompt.

Signed-off-by: Stanislav Brabec <sbrabec@suse.cz>
2018-11-21 10:48:05 +01:00
Andreas Henriksson b7fb72090b libblkid: Fix hidding typo
Spelling error spotted by lintian.

Signed-off-by: Andreas Henriksson <andreas@fatal.se>
2018-11-21 10:48:00 +01:00
Andreas Henriksson 0f7a57f58b fstrim: Add Documentation key to fstrim.service 2018-11-21 10:47:40 +01:00
Andreas Henriksson c8d61f361c uuidd: Add Documentation key to uuidd.service 2018-11-21 10:47:31 +01:00
Sami Kerola 7004da3d73 fstrim: use long options in systemd service file
Long options are more user friendly.

Signed-off-by: Sami Kerola <kerolasa@iki.fi>
2018-11-21 10:47:14 +01:00
Laurent Vivier f0af42b517 unshare: allow to set user ID and group ID
This patch introduces two new parameters to set the
user ID and the group ID of the program to be executed.
Setting group ID also drops supplementary groups.

The option names used are the same as for nsenter,
-S, --setuid and -G, --setgid.

Signed-off-by: Laurent Vivier <laurent@vivier.eu>
2018-11-12 11:52:15 +01:00
Laurent Vivier bf8834d4f4 unshare: allow to set a new root
This patch instroduces two new parameters to set the new
root and the new working directory in this new root.

This allows to combine "unshare chroot" in one command,
and doing like this the /proc filesystem is correctly
mounted in the new root with "--mount-proc".

The new parameters are -R, --root and -w, --wd. The names
are the same as for nsenter, except for "-r" that is already
used by "--map-root-user" and replaced by "-R".

Signed-off-by: Laurent Vivier <laurent@vivier.eu>
2018-11-12 11:52:14 +01:00
Christian Hesse f8ee3af9fa agetty: fix output of escaped characters
Signed-off-by: Christian Hesse <mail@eworm.de>
2018-11-12 11:32:28 +01:00
Milan Broz 1741d2ea57 libblkid: fix detection of dm-integrity superblock
Some new features in Linux kernel 4.19 for dm-integrity use metadata
format version 2, patch adds it to detection.

Signed-off-by: Milan Broz <gmazyland@gmail.com>
2018-11-12 11:32:24 +01:00
Samuel Thibault d7a412fe0a agetty: fix portability issues
Signed-off-by: Karel Zak <kzak@redhat.com>
2018-11-12 11:31:17 +01:00
Justin Chen e1686b25ac rtcwake: use poweroff if shutdown is not found
Some systems do not have the shutdown command. Use poweroff as an
alternative.

Signed-off-by: Justin Chen <justinpopo6@gmail.com>
2018-11-06 12:34:02 +01:00
Karel Zak 06993ebb11 build-sys: release++ (v2.33)
Signed-off-by: Karel Zak <kzak@redhat.com>
2018-11-06 12:08:46 +01:00
Karel Zak a592edc4b6 docs: update v2.33-ReleaseNotes
Signed-off-by: Karel Zak <kzak@redhat.com>
2018-11-06 12:06:56 +01:00
Karel Zak 26d2d1c559 docs: update AUTHORS file
Signed-off-by: Karel Zak <kzak@redhat.com>
2018-11-06 12:03:34 +01:00
Karel Zak 8f9f4431b2 po: merge changes
Signed-off-by: Karel Zak <kzak@redhat.com>
2018-11-06 12:00:00 +01:00
Yuri Chornoivan 24f25d2d88 po: update uk.po (from translationproject.org) 2018-11-06 11:43:56 +01:00
Rafael Fontenelle cbb5b175af po: update pt_BR.po (from translationproject.org) 2018-11-06 11:43:56 +01:00
Jakub Bogusz ae41723297 po: update pl.po (from translationproject.org) 2018-11-06 11:43:56 +01:00
Takeshi Hamasaki 3c0a1d2cec po: update ja.po (from translationproject.org) 2018-11-06 11:43:56 +01:00
Frédéric Marchal c29f58940b po: update fr.po (from translationproject.org) 2018-11-06 11:43:56 +01:00
Antonio Ceballos Roa 3f4e6c013e po: update es.po (from translationproject.org) 2018-11-06 11:43:56 +01:00
Petr Písař df15152ea2 po: update cs.po (from translationproject.org) 2018-11-06 11:43:56 +01:00
Karel Zak a9b0f9b08e Merge branch 'spelling' of https://github.com/jwilk-forks/util-linux 2018-11-06 10:56:03 +01:00
Karel Zak a6f99be447 eject: use err() rather than abort()
Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=1645920
Signed-off-by: Karel Zak <kzak@redhat.com>
2018-11-05 10:35:24 +01:00
Jakub Wilk 84bf1f6842 docs: fix typos
Signed-off-by: Jakub Wilk <jwilk@jwilk.net>
2018-11-03 20:56:20 +01:00
Stanislav Brabec c094fcd373 agetty: when logname is erased, re-enable reloads
When user starts to enter logname, 8b58ffdd blocks issue reloads.
Reloads remain blocked even if user deletes all typed characters.

Make things visually consistent: If no characters are entered,
re-enable reloads.

Signed-off-by: Stanislav Brabec <sbrabec@suse.cz>
Signed-off-by: Karel Zak <kzak@redhat.com>
Reviewed-by: Lubomir Rintel <lkundrak@v3.sk>
Tested-by: Lubomir Rintel <lkundrak@v3.sk>
2018-10-31 09:35:48 +01:00
Karel Zak 84b27596f4 docs: add info about branches; update travis.yml
Signed-off-by: Karel Zak <kzak@redhat.com>
2018-10-24 13:02:59 +02:00
Masato Suzuki 8a7f4b5bfe blkzone: fix report zones sector offset check
To catch an offset error, an offset should be begger than or equal to
a device size in the condition.

Signed-off-by: Masato Suzuki <masato.suzuki@wdc.com>
2018-10-23 11:49:41 +02:00
Lubomir Rintel 8b58ffddf4 agetty: don't put the VC into canonical mode
The wait_for_term_input()'s select() needs to be tripped when the user
starts typing. Otherwise the reloads can abort an already in-progress login.

Coupled with \4 and \6 expansions that happen to be there on Fedora Server,
this means reload on every netlink event. With a couple of IPv6 routers
announcing their networks and temporary addresses in use can make it
sometimes virtually impossible to log in.

Seems like zero lflags do the job just fine on a Linux VT. Reset it to
canonical mode before running login.

Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
Signed-off-by: Stanislav Brabec <sbrabec@suse.cz>
Signed-off-by: Karel Zak <kzak@redhat.com>
2018-10-22 11:03:47 +02:00
Karel Zak 3f7e7e4d3c build-sys: release++ (v2.33-rc2)
Signed-off-by: Karel Zak <kzak@redhat.com>
2018-10-19 12:19:32 +02:00
Karel Zak b8ccaf5dec docs: update v2.33-ReleaseNotes
Signed-off-by: Karel Zak <kzak@redhat.com>
2018-10-19 12:18:07 +02:00
Karel Zak 2b9fde5bae docs: update AUTHORS file
Signed-off-by: Karel Zak <kzak@redhat.com>
2018-10-19 12:16:45 +02:00
Karel Zak da3223a3c0 po: merge changes
Signed-off-by: Karel Zak <kzak@redhat.com>
2018-10-19 12:14:52 +02:00
Karel Zak cdd538e383 agetty: don't use __u32
Signed-off-by: Karel Zak <kzak@redhat.com>
2018-10-11 14:22:08 +02:00
Karel Zak 056a370efb agetty: make output more robust
Signed-off-by: Karel Zak <kzak@redhat.com>
2018-10-11 13:29:39 +02:00
Karel Zak 980a6e431c agetty: cleanup issue output change, remove bool
Signed-off-by: Karel Zak <kzak@redhat.com>
2018-10-11 13:21:23 +02:00
Karel Zak ddbb3067b6 agetty: move all issue variables to struct
Signed-off-by: Karel Zak <kzak@redhat.com>
2018-10-11 13:12:02 +02:00
Stanislav Brabec 6522d88d08 agetty: Reload only if it is really needed
If netlink event arrives and related escapes are part of issue, agetty
reloads and re-display the prompt. Reload is triggered not only by IP
address change, but also by IPv6 RAs. In some environments it causes
reload several times in a minute, and even complicates the login.

To prevent this, reload only if a real change appears.

This consists of:
split print_issue_file() to several functions:

eval_issue_file() prints issue to memory. It does not affect terminal in
any way.

print_issue_file() prints issue file from memory.

cmp_issue_file() compares the issue file and returns true, if reload is
needed.

The implementation requires additional change:

do_prompt() does not evaluate the issue file. It is responsibility of
calling function.

Test suite:

Use issue that contais \4 and/or \6 escape.

After installing new instance, restart agetty by typing a letter and then
Enter 6 times.

To check whether reload happens, type a letter. When reload happens,
letter disappears.

1. Unplug network cable. Wait a while and re-plug network cable.
You should see 2 reloads on single stack and 3 reloads on dual stack.

2. Run a loop
while : ; do
	sed -i '$areload_test' /etc/issue
	agetty --reload
	sleep 3
	sed -i '/reload_test/d' /etc/issue
	agetty --reload
	sleep 3
done
You should see regular reload every 3 seconds.

3. Run a loop
while : ; do
	agetty --reload
	sleep 3
done
Before: You see regular reload every 3 seconds.
After: No reloads.

4. Run a loop
while : ; do
	ifconfig lo 127.0.0.1 netmask 255.0.0.0
	sleep 3
	ifconfig lo 127.0.0.2 netmask 255.0.0.0
	sleep 3
done
Before: You see regular reload every 3 seconds.
After: No reloads.

Signed-off-by: Stanislav Brabec <sbrabec@suse.cz>
2018-10-11 12:09:25 +02:00
Stanislav Brabec 36c55a8987 agetty: Watch only protocol requested by issue escapes
To decrease number of reloads, watch only protocol requested by \4 and \6
escapes in issue file.

Signed-off-by: Stanislav Brabec <sbrabec@suse.cz>
2018-10-11 12:09:25 +02:00
Stanislav Brabec c5955394a8 agetty: rename variable changed to triggered
changed variable name is not correct. It does not say that network
interface changed its address. It just says that the netlink message
processing was triggered.

Signed-off-by: Stanislav Brabec <sbrabec@suse.cz>
2018-10-11 12:09:25 +02:00
Karel Zak d482a0bd5c bash-completion: cleanup mount and umount --namespace
* use only PATHs rather than PIDs to namespaces

* add --namespace to umount too

Signed-off-by: Karel Zak <kzak@redhat.com>
2018-10-05 11:48:04 +02:00
Karel Zak 4c8a88dcce Merge branch '2018wk40' of https://github.com/kerolasa/util-linux
* '2018wk40' of https://github.com/kerolasa/util-linux:
  bash-completion: catch up with option changes
2018-10-05 11:42:59 +02:00
Karel Zak 4f7acf32b5 libmount: keep namespaces support optional
Reported-by: Ruediger Meier <sweet_f_a@gmx.de>
Signed-off-by: Karel Zak <kzak@redhat.com>
2018-10-05 11:35:45 +02:00
Karel Zak 7a3b35b966 build-sys: add USE_LIBMOUNT_SUPPORT_NAMESPACES
Signed-off-by: Karel Zak <kzak@redhat.com>
2018-10-05 11:02:26 +02:00
Sami Kerola 5feae697b0
bash-completion: catch up with option changes
Check what has changed in usage functions in between v2.32..a77bd80d5 and
update bash-completion files accordingly.

Signed-off-by: Sami Kerola <kerolasa@iki.fi>
2018-10-04 21:36:22 +01:00
Karel Zak a77bd80d5a sfdisk: disable --activate for Hybrid GPT/MBR
Addresses: https://github.com/karelzak/util-linux/issues/699
Signed-off-by: Karel Zak <kzak@redhat.com>
2018-10-04 14:06:45 +02:00
Karel Zak b4601f620c docs: add getopt to TODO
Addresses: https://github.com/karelzak/util-linux/issues/701
Signed-off-by: Karel Zak <kzak@redhat.com>
2018-10-04 12:54:05 +02:00
Karel Zak 49032ef7a4 sfdisk: be more verbose about PMBR on --activate
Addresses: https://github.com/karelzak/util-linux/issues/699
Signed-off-by: Karel Zak <kzak@redhat.com>
2018-10-04 12:40:10 +02:00
Patrick Steinhardt d2523d3dd2 rename: avoid undefined function prototype for `fpurge`
In case where the non-standard `fpurge` function is available, we
redefine `__fpurge` to `fpurge`. We can do so because the only
difference between both functions is that one returns an error code
while the other does not. But as we do not check the error code either
way, we do not care about which one of them we use.

The above redefinition happens unconditionally if we know that `fpurge`
exists. Most notably, we also redefine it if we already do have an
`__fpurge` function available that could be used. This causes problems
on musl-based platforms, where we detect availability of `fpurge` in
libc, but where no function declaration for it exists in "stdio_ext.h".
The compiler thus prints a warning due to an unknown function, even
though it will link just fine.

Avoid this warning by only redefining `__fpurge` to `fpurge` when
HAVE___FPURGE is not defined.

Signed-off-by: Patrick Steinhardt <ps@pks.im>
2018-10-04 11:56:37 +02:00
Patrick Steinhardt 6529212d5b lsblk: fix unknown type `stat` caused by missing header
The structure `blkdev_cxt` has a `struct stat` member embedded, whose
size may not be known on some systems because of a missing include for
"sys/stat.h". On glibc-based systems, this header is included
transitively via "sys/statvfs.h", but on musl-based systems it is not.

Fix the resulting compile error due to unknown size of the struct by
including "sys/stat.h".

Signed-off-by: Patrick Steinhardt <ps@pks.im>
2018-10-04 11:56:35 +02:00