Add vlock option to issue prompt before invocation of pam stack
Resolves: RHEL-57035
This commit is contained in:
parent
59ee6ae0c0
commit
5c34fceb7c
84
kbd-2.0.4-vlock-add-prompt-option.patch
Normal file
84
kbd-2.0.4-vlock-add-prompt-option.patch
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
diff -up kbd-2.0.4/src/vlock/auth.c.orig kbd-2.0.4/src/vlock/auth.c
|
||||||
|
--- kbd-2.0.4/src/vlock/auth.c.orig 2016-12-19 16:01:51.000000000 +0100
|
||||||
|
+++ kbd-2.0.4/src/vlock/auth.c 2024-03-11 12:21:29.861328176 +0100
|
||||||
|
@@ -90,6 +90,12 @@ int get_password(pam_handle_t *pamh, con
|
||||||
|
}
|
||||||
|
fflush(stdout);
|
||||||
|
|
||||||
|
+ if (prompt) {
|
||||||
|
+ printf(_("Press ENTER to continue.\n"));
|
||||||
|
+ fflush(stdout);
|
||||||
|
+ (void )getchar();
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
/*
|
||||||
|
* No need to request a delay on failure via pam_fail_delay(3):
|
||||||
|
* authentication module should do it for us.
|
||||||
|
diff -up kbd-2.0.4/src/vlock/parse.c.orig kbd-2.0.4/src/vlock/parse.c
|
||||||
|
--- kbd-2.0.4/src/vlock/parse.c.orig 2016-12-19 16:01:51.000000000 +0100
|
||||||
|
+++ kbd-2.0.4/src/vlock/parse.c 2024-03-11 12:20:33.167302197 +0100
|
||||||
|
@@ -38,6 +38,13 @@
|
||||||
|
*/
|
||||||
|
int o_lock_all;
|
||||||
|
|
||||||
|
+/*
|
||||||
|
+ * This determines whether there will be prompt before invoking pam
|
||||||
|
+ * auth stack.
|
||||||
|
+ * 0 means no, 1 means yes.
|
||||||
|
+ */
|
||||||
|
+int prompt;
|
||||||
|
+
|
||||||
|
const char *
|
||||||
|
locked_name(void)
|
||||||
|
{
|
||||||
|
@@ -63,6 +70,8 @@ show_help(void)
|
||||||
|
" switch to other virtual consoles.\n"
|
||||||
|
"-a or --all: lock all virtual consoles by preventing other users\n"
|
||||||
|
" from switching virtual consoles.\n"
|
||||||
|
+ "-p or --prompt: wait for keypress before invoking pam auth stack,\n"
|
||||||
|
+ " useful for unlocking with smartcard setup.\n"
|
||||||
|
"-v or --version: Print the version number of vlock and exit.\n"
|
||||||
|
"-h or --help: Print this help message and exit.\n"),
|
||||||
|
progname, progname);
|
||||||
|
@@ -74,13 +83,14 @@ void parse(int ac, char *const av[])
|
||||||
|
static struct option long_options[] = {
|
||||||
|
{ "current", 0, 0, 'c' },
|
||||||
|
{ "all", 0, 0, 'a' },
|
||||||
|
+ { "prompt", 0, 0, 'p' },
|
||||||
|
{ "version", 0, 0, 'v' },
|
||||||
|
{ "help", 0, 0, 'h' },
|
||||||
|
{ 0, 0, 0, 0 },
|
||||||
|
};
|
||||||
|
int c;
|
||||||
|
|
||||||
|
- while ((c = getopt_long(ac, av, "acvh", long_options, 0)) != -1) {
|
||||||
|
+ while ((c = getopt_long(ac, av, "acpvh", long_options, 0)) != -1) {
|
||||||
|
switch (c) {
|
||||||
|
case 'c':
|
||||||
|
o_lock_all = 0;
|
||||||
|
@@ -88,6 +98,9 @@ void parse(int ac, char *const av[])
|
||||||
|
case 'a':
|
||||||
|
o_lock_all = 1;
|
||||||
|
break;
|
||||||
|
+ case 'p':
|
||||||
|
+ prompt = 1;
|
||||||
|
+ break;
|
||||||
|
case 'v':
|
||||||
|
fprintf(stderr, "%s\n", VERSION);
|
||||||
|
exit(EXIT_SUCCESS);
|
||||||
|
diff -up kbd-2.0.4/src/vlock/vlock.h.orig kbd-2.0.4/src/vlock/vlock.h
|
||||||
|
--- kbd-2.0.4/src/vlock/vlock.h.orig 2016-12-19 16:01:55.000000000 +0100
|
||||||
|
+++ kbd-2.0.4/src/vlock/vlock.h 2024-03-11 12:21:29.861328176 +0100
|
||||||
|
@@ -40,5 +40,12 @@ const char *locked_name(void);
|
||||||
|
*/
|
||||||
|
extern int o_lock_all;
|
||||||
|
|
||||||
|
+/*
|
||||||
|
+ * This determines whether there will be prompt before invoking pam
|
||||||
|
+ * auth stack.
|
||||||
|
+ * 0 means no, 1 means yes.
|
||||||
|
+ */
|
||||||
|
+extern int prompt;
|
||||||
|
+
|
||||||
|
/* Copy of the VT mode when the program was started. */
|
||||||
|
extern int is_vt;
|
9
kbd.spec
9
kbd.spec
@ -5,7 +5,7 @@
|
|||||||
|
|
||||||
Name: kbd
|
Name: kbd
|
||||||
Version: 2.6.4
|
Version: 2.6.4
|
||||||
Release: 6%{?dist}
|
Release: 7%{?dist}
|
||||||
Summary: Tools for configuring the console (keyboard, virtual terminals, etc.)
|
Summary: Tools for configuring the console (keyboard, virtual terminals, etc.)
|
||||||
License: GPL-2.0-or-later
|
License: GPL-2.0-or-later
|
||||||
URL: http://www.kbd-project.org/
|
URL: http://www.kbd-project.org/
|
||||||
@ -34,6 +34,9 @@ Patch5: kbd-2.0.2-unicode-start-font.patch
|
|||||||
Patch6: kbd-2.4.0-covscan-fixes.patch
|
Patch6: kbd-2.4.0-covscan-fixes.patch
|
||||||
# Patch7: initializes variable (SAST)
|
# Patch7: initializes variable (SAST)
|
||||||
Patch7: kbd-2.6.4-initialize-variable.patch
|
Patch7: kbd-2.6.4-initialize-variable.patch
|
||||||
|
# Patch8: adds vlock option to issue prompt before invocation of pam stack
|
||||||
|
# RHEL-RHEL-57035
|
||||||
|
Patch8: kbd-2.0.4-vlock-add-prompt-option.patch
|
||||||
|
|
||||||
BuildRequires: gcc, bison, flex, gettext, pam-devel, check-devel, automake
|
BuildRequires: gcc, bison, flex, gettext, pam-devel, check-devel, automake
|
||||||
BuildRequires: console-setup, xkeyboard-config
|
BuildRequires: console-setup, xkeyboard-config
|
||||||
@ -185,6 +188,10 @@ make check
|
|||||||
%{kbd_datadir}/keymaps/legacy
|
%{kbd_datadir}/keymaps/legacy
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Jan 10 2025 Vitezslav Crhonek <vcrhonek@redhat.com> - 2.6.4-7
|
||||||
|
- Add vlock option to issue prompt before invocation of pam stack
|
||||||
|
Resolves: RHEL-57035
|
||||||
|
|
||||||
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 2.6.4-6
|
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 2.6.4-6
|
||||||
- Bump release for October 2024 mass rebuild:
|
- Bump release for October 2024 mass rebuild:
|
||||||
Resolves: RHEL-64018
|
Resolves: RHEL-64018
|
||||||
|
Loading…
Reference in New Issue
Block a user