Compare commits
56 Commits
Author | SHA1 | Date |
---|---|---|
Karel Zak | c87ed81c2c | |
Karel Zak | 09904cbd56 | |
Karel Zak | 5fa93ec5e0 | |
Karel Zak | 3bf1f5a44f | |
Karel Zak | 4ffd39d553 | |
Karel Zak | a228e53a4b | |
Fedora Release Engineering | a04c11370c | |
Florian Weimer | d65ce0b32c | |
Karel Zak | 260ccc24c5 | |
Karel Zak | c96992b25e | |
Fedora Release Engineering | dd1f0e5a82 | |
Python Maint | f64c455630 | |
Karel Zak | 1f18765a68 | |
Zbigniew Jędrzejewski-Szmek | 6c5649c0b6 | |
Karel Zak | 6578411a87 | |
Zbigniew Jędrzejewski-Szmek | 3b965f951d | |
Zbigniew Jędrzejewski-Szmek | c409cb5073 | |
Karel Zak | f3b1a65177 | |
Karel Zak | 5abc3df64a | |
Zbigniew Jędrzejewski-Szmek | f9a78e1def | |
Karel Zak | f55af7b31a | |
Karel Zak | 93b5e7b623 | |
Fedora Release Engineering | b3ca809df8 | |
Karel Zak | 2abaf6eb96 | |
Fedora Release Engineering | f9f53d46a2 | |
Karel Zak | 31097faf0c | |
Karel Zak | e7be6ae5f5 | |
Richard W.M. Jones | cca6bc092d | |
Python Maint | e86e462be5 | |
Karel Zak | b50e3f3a07 | |
Karel Zak | f00635cf14 | |
Zbigniew Jędrzejewski-Szmek | 985b3cb330 | |
Zbigniew Jędrzejewski-Szmek | 05489e2334 | |
Robert Scheck | 2002e7d438 | |
Karel Zak | 8abfa74392 | |
Kelvin Fan | 1c853c1f4b | |
Karel Zak | b188598d35 | |
Tom Stellard | 08aad7c190 | |
Karel Zak | 5977e189d6 | |
Karel Zak | 347549f079 | |
Karel Zak | c48435329a | |
Tom Stellard | b441300c92 | |
Karel Zak | b0e9e3bcb8 | |
Karel Zak | 16f25ffc54 | |
Fedora Release Engineering | 5aecaa99fe | |
Karel Zak | f991f6faa9 | |
Karel Zak | 98af691bc7 | |
Miro Hrončok | ed9b0d3627 | |
Karel Zak | acc3919c15 | |
Karel Zak | e998a685f7 | |
Troy Dawson | 098671aa4d | |
Karel Zak | fe0e3c7437 | |
Karel Zak | 7c81cc769f | |
Kalev Lember | 580f0fece0 | |
Karel Zak | 9a75633915 | |
Karel Zak | f1bf9845c3 |
|
@ -76,3 +76,17 @@
|
|||
/util-linux-2.35-rc2.tar.xz
|
||||
/util-linux-2.35.tar.xz
|
||||
/util-linux-2.35.1.tar.xz
|
||||
/util-linux-2.35.2.tar.xz
|
||||
/util-linux-2.36.tar.xz
|
||||
/util-linux-2.36.1.tar.xz
|
||||
/util-linux-2.36.2.tar.xz
|
||||
/util-linux-2.37-rc2.tar.xz
|
||||
/util-linux-2.37.tar.xz
|
||||
/util-linux-2.37.2.tar.xz
|
||||
/util-linux-2.38-rc1.tar.xz
|
||||
/util-linux-2.38-rc3.tar.xz
|
||||
/util-linux-2.38.tar.xz
|
||||
/util-linux-2.38.1.tar.xz
|
||||
/util-linux-2.39-rc1.tar.xz
|
||||
/util-linux-2.39-rc2.tar.xz
|
||||
/util-linux-2.39-rc3.tar.xz
|
||||
|
|
|
@ -1,55 +0,0 @@
|
|||
From 9418ba6d05feed6061f5343741b1bc56e7bde663 Mon Sep 17 00:00:00 2001
|
||||
From: Karel Zak <kzak@redhat.com>
|
||||
Date: Fri, 20 Dec 2019 15:05:33 +0100
|
||||
Subject: [PATCH] agetty: keep freed issue file pointer zeroized
|
||||
|
||||
References: https://bugzilla.redhat.com/show_bug.cgi?id=1784536
|
||||
Signed-off-by: Karel Zak <kzak@redhat.com>
|
||||
---
|
||||
term-utils/agetty.c | 15 +++++++++++----
|
||||
1 file changed, 11 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/term-utils/agetty.c b/term-utils/agetty.c
|
||||
index 3c20acc98..dfc4921f5 100644
|
||||
--- a/term-utils/agetty.c
|
||||
+++ b/term-utils/agetty.c
|
||||
@@ -1820,8 +1820,12 @@ static int issuefile_read_stream(
|
||||
if (fstat(fileno(f), &st) || !S_ISREG(st.st_mode))
|
||||
return 1;
|
||||
|
||||
- if (!ie->output)
|
||||
- ie->output = open_memstream(&ie->mem, &ie->mem_sz);
|
||||
+ if (!ie->output) {
|
||||
+ free(ie->mem);
|
||||
+ ie->mem_sz = 0;
|
||||
+ ie->mem = NULL;
|
||||
+ ie->output = open_memstream(&ie->mem, &ie->mem_sz);
|
||||
+ }
|
||||
|
||||
while ((c = getc(f)) != EOF) {
|
||||
if (c == '\\')
|
||||
@@ -1965,8 +1969,10 @@ done:
|
||||
if (netlink_groups != 0)
|
||||
open_netlink();
|
||||
#endif
|
||||
- if (ie->output)
|
||||
+ if (ie->output) {
|
||||
fclose(ie->output);
|
||||
+ ie->output = NULL;
|
||||
+ }
|
||||
}
|
||||
|
||||
/* This is --show-issue backend, executed by normal user on the current
|
||||
@@ -1985,7 +1991,8 @@ static void show_issue(struct options *op)
|
||||
|
||||
if (ie.mem_sz)
|
||||
write_all(STDOUT_FILENO, ie.mem, ie.mem_sz);
|
||||
-
|
||||
+ if (ie.output)
|
||||
+ fclose(ie.output);
|
||||
free(ie.mem);
|
||||
}
|
||||
|
||||
--
|
||||
2.21.0
|
||||
|
|
@ -1,134 +0,0 @@
|
|||
From 00e53f17c8462cb34ece08cc10db60a7da29a305 Mon Sep 17 00:00:00 2001
|
||||
From: Karel Zak <kzak@redhat.com>
|
||||
Date: Tue, 4 Feb 2020 15:11:19 +0100
|
||||
Subject: [PATCH] libfdisk: (script) accept sector-size, ignore unknown headers
|
||||
|
||||
- add sector-size between supported headers (already in --dump output)
|
||||
|
||||
- report unknown headers by -ENOTSUP
|
||||
|
||||
- ignore ENOTSUP in sfdisk (but print warning) and in fdisk_script_read_file()
|
||||
|
||||
Addresses: https://github.com/karelzak/util-linux/issues/949
|
||||
Signed-off-by: Karel Zak <kzak@redhat.com>
|
||||
---
|
||||
disk-utils/sfdisk.c | 6 +++++-
|
||||
libfdisk/src/script.c | 49 +++++++++++++++++++++++--------------------
|
||||
2 files changed, 31 insertions(+), 24 deletions(-)
|
||||
|
||||
diff --git a/disk-utils/sfdisk.c b/disk-utils/sfdisk.c
|
||||
index bb6e1c6df..c0bea7046 100644
|
||||
--- a/disk-utils/sfdisk.c
|
||||
+++ b/disk-utils/sfdisk.c
|
||||
@@ -1782,7 +1782,11 @@ static int command_fdisk(struct sfdisk *sf, int argc, char **argv)
|
||||
}
|
||||
|
||||
rc = fdisk_script_read_line(dp, stdin, buf, sizeof(buf));
|
||||
- if (rc < 0) {
|
||||
+ if (rc == -ENOTSUP) {
|
||||
+ buf[sizeof(buf) - 1] = '\0';
|
||||
+ fdisk_warnx(sf->cxt, _("Unknown script header '%s' -- ignore."), buf);
|
||||
+ continue;
|
||||
+ } else if (rc < 0) {
|
||||
DBG(PARSE, ul_debug("script parsing failed, trying sfdisk specific commands"));
|
||||
buf[sizeof(buf) - 1] = '\0';
|
||||
rc = loop_control_commands(sf, dp, buf);
|
||||
diff --git a/libfdisk/src/script.c b/libfdisk/src/script.c
|
||||
index a21771b6a..d3e67fa9c 100644
|
||||
--- a/libfdisk/src/script.c
|
||||
+++ b/libfdisk/src/script.c
|
||||
@@ -805,8 +805,12 @@ static inline int is_header_line(const char *s)
|
||||
/* parses "<name>: value", note modifies @s*/
|
||||
static int parse_line_header(struct fdisk_script *dp, char *s)
|
||||
{
|
||||
- int rc = -EINVAL;
|
||||
+ size_t i;
|
||||
char *name, *value;
|
||||
+ static const char *supported[] = {
|
||||
+ "label", "unit", "label-id", "device", "grain",
|
||||
+ "first-lba", "last-lba", "table-length", "sector-size"
|
||||
+ };
|
||||
|
||||
DBG(SCRIPT, ul_debugobj(dp, " parse header '%s'", s));
|
||||
|
||||
@@ -816,7 +820,7 @@ static int parse_line_header(struct fdisk_script *dp, char *s)
|
||||
name = s;
|
||||
value = strchr(s, ':');
|
||||
if (!value)
|
||||
- goto done;
|
||||
+ return -EINVAL;
|
||||
*value = '\0';
|
||||
value++;
|
||||
|
||||
@@ -825,32 +829,30 @@ static int parse_line_header(struct fdisk_script *dp, char *s)
|
||||
ltrim_whitespace((unsigned char *) value);
|
||||
rtrim_whitespace((unsigned char *) value);
|
||||
|
||||
+ if (!*name || !*value)
|
||||
+ return -EINVAL;
|
||||
+
|
||||
+ /* check header name */
|
||||
+ for (i = 0; i < ARRAY_SIZE(supported); i++) {
|
||||
+ if (strcmp(name, supported[i]) == 0)
|
||||
+ break;
|
||||
+ }
|
||||
+ if (i == ARRAY_SIZE(supported))
|
||||
+ return -ENOTSUP;
|
||||
+
|
||||
+ /* header specific actions */
|
||||
if (strcmp(name, "label") == 0) {
|
||||
if (dp->cxt && !fdisk_get_label(dp->cxt, value))
|
||||
- goto done; /* unknown label name */
|
||||
+ return -EINVAL; /* unknown label name */
|
||||
dp->force_label = 1;
|
||||
+
|
||||
} else if (strcmp(name, "unit") == 0) {
|
||||
if (strcmp(value, "sectors") != 0)
|
||||
- goto done; /* only "sectors" supported */
|
||||
- } else if (strcmp(name, "label-id") == 0
|
||||
- || strcmp(name, "device") == 0
|
||||
- || strcmp(name, "grain") == 0
|
||||
- || strcmp(name, "first-lba") == 0
|
||||
- || strcmp(name, "last-lba") == 0
|
||||
- || strcmp(name, "table-length") == 0) {
|
||||
- ; /* whatever is possible */
|
||||
- } else
|
||||
- goto done; /* unknown header */
|
||||
+ return -EINVAL; /* only "sectors" supported */
|
||||
|
||||
- if (*name && *value)
|
||||
- rc = fdisk_script_set_header(dp, name, value);
|
||||
-done:
|
||||
- if (rc)
|
||||
- DBG(SCRIPT, ul_debugobj(dp, "header parse error: "
|
||||
- "[rc=%d, name='%s', value='%s']",
|
||||
- rc, name, value));
|
||||
- return rc;
|
||||
+ }
|
||||
|
||||
+ return fdisk_script_set_header(dp, name, value);
|
||||
}
|
||||
|
||||
/* returns zero terminated string with next token and @str is updated */
|
||||
@@ -1363,7 +1365,8 @@ int fdisk_script_set_fgets(struct fdisk_script *dp,
|
||||
*
|
||||
* Reads next line into dump.
|
||||
*
|
||||
- * Returns: 0 on success, <0 on error, 1 when nothing to read.
|
||||
+ * Returns: 0 on success, <0 on error, 1 when nothing to read. For unknown headers
|
||||
+ * returns -ENOTSUP, it's usually safe to ignore this error.
|
||||
*/
|
||||
int fdisk_script_read_line(struct fdisk_script *dp, FILE *f, char *buf, size_t bufsz)
|
||||
{
|
||||
@@ -1428,7 +1431,7 @@ int fdisk_script_read_file(struct fdisk_script *dp, FILE *f)
|
||||
|
||||
while (!feof(f)) {
|
||||
rc = fdisk_script_read_line(dp, f, buf, sizeof(buf));
|
||||
- if (rc)
|
||||
+ if (rc && rc != -ENOTSUP)
|
||||
break;
|
||||
}
|
||||
|
||||
--
|
||||
2.24.1
|
||||
|
|
@ -1,34 +0,0 @@
|
|||
From 61b384b36105fe682ddf16b9379f446d935603bc Mon Sep 17 00:00:00 2001
|
||||
From: Karel Zak <kzak@redhat.com>
|
||||
Date: Tue, 4 Feb 2020 16:17:42 +0100
|
||||
Subject: [PATCH] fstrim: do not use Protect setting in systemd service
|
||||
|
||||
The ProtectHome= and ProtectSystem= settings mounts all stuff for the service in read-only mode.
|
||||
|
||||
The fstrim ioctl operates on read-only mountpoint file descriptor, but
|
||||
on some read-only filesystem the operation can fail, so since
|
||||
2d22ac64e4 we check for read-only volumes and skip it.
|
||||
|
||||
References: Upstream: http://github.com/karelzak/util-linux/commit/2d22ac64e4d6e6732640f38b7232b5bcdc84a877
|
||||
Addresses: https://github.com/karelzak/util-linux/issues/948
|
||||
Signed-off-by: Karel Zak <kzak@redhat.com>
|
||||
---
|
||||
sys-utils/fstrim.service.in | 2 --
|
||||
1 file changed, 2 deletions(-)
|
||||
|
||||
diff --git a/sys-utils/fstrim.service.in b/sys-utils/fstrim.service.in
|
||||
index a8b631730..b58728ef4 100644
|
||||
--- a/sys-utils/fstrim.service.in
|
||||
+++ b/sys-utils/fstrim.service.in
|
||||
@@ -6,8 +6,6 @@ ConditionVirtualization=!container
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=@sbindir@/fstrim --fstab --verbose --quiet
|
||||
-ProtectSystem=strict
|
||||
-ProtectHome=read-only
|
||||
PrivateDevices=no
|
||||
PrivateNetwork=yes
|
||||
PrivateUsers=no
|
||||
--
|
||||
2.24.1
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
diff -up util-linux-2.28/login-utils/login.c.kzak util-linux-2.28/login-utils/login.c
|
||||
--- util-linux-2.28/login-utils/login.c.kzak 2016-03-08 14:28:16.724156218 +0100
|
||||
+++ util-linux-2.28/login-utils/login.c 2016-04-26 12:45:29.235326017 +0200
|
||||
@@ -510,7 +510,7 @@ static void log_lastlog(struct login_con
|
||||
sa.sa_handler = SIG_IGN;
|
||||
sigaction(SIGXFSZ, &sa, &oldsa_xfsz);
|
||||
|
||||
- fd = open(_PATH_LASTLOG, O_RDWR, 0);
|
||||
+ fd = open(_PATH_LASTLOG, O_RDWR | O_CREAT, 0);
|
||||
if (fd < 0)
|
||||
goto done;
|
||||
|
|
@ -1,148 +0,0 @@
|
|||
From 651c5d428c2ef103ee8c5b1a310d6f29f0304744 Mon Sep 17 00:00:00 2001
|
||||
From: Karel Zak <kzak@redhat.com>
|
||||
Date: Tue, 27 Mar 2018 10:40:13 +0200
|
||||
Subject: [PATCH] column: fix leading space characters bug
|
||||
|
||||
The bug has been introduced during column(1) rewrite. The function
|
||||
read_input() need to skip leading space only temporary to detect empty
|
||||
lines, but the rest of the code has to use the original buffer (line).
|
||||
I've tried to fix one of the symptoms by 5c7b67fbbf41c973ca8d49b1e8bdba22dbb917aa
|
||||
(alter), but this solution is unnecessary and too complex.
|
||||
|
||||
Changes:
|
||||
|
||||
* don't ignore leading space
|
||||
* remove unnecessary stuff introduced by 5c7b67fbbf41c973ca8d49b1e8bdba22dbb917aa
|
||||
* fix regression test with incorrect separator
|
||||
|
||||
Addresses: https://github.com/karelzak/util-linux/issues/575
|
||||
Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=1560283
|
||||
Signed-off-by: Karel Zak <kzak@redhat.com>
|
||||
---
|
||||
tests/expected/column/table-input-separator-space | 2 +-
|
||||
tests/ts/column/table | 2 +-
|
||||
text-utils/column.c | 36 ++---------------------
|
||||
4 files changed, 5 insertions(+), 38 deletions(-)
|
||||
|
||||
diff --git a/tests/expected/column/table-input-separator-space b/tests/expected/column/table-input-separator-space
|
||||
index 8a6513c11..25d9b5ab0 100644
|
||||
--- a/tests/expected/column/table-input-separator-space
|
||||
+++ b/tests/expected/column/table-input-separator-space
|
||||
@@ -1,5 +1,5 @@
|
||||
AAA BBBB C DDDD
|
||||
-BBB CCCC DDD
|
||||
+ BBB CCCC DDD
|
||||
AA BB DD
|
||||
AAAA B CC D
|
||||
AA CC DD
|
||||
diff --git a/tests/ts/column/table b/tests/ts/column/table
|
||||
index 27b52e7c8..5c89d5eaf 100755
|
||||
--- a/tests/ts/column/table
|
||||
+++ b/tests/ts/column/table
|
||||
@@ -37,7 +37,7 @@ $TS_CMD_COLUMN --separator ',' --table $TS_SELF/files/table-sep >> $TS_OUTPUT 2>
|
||||
ts_finalize_subtest
|
||||
|
||||
ts_init_subtest "input-separator-space"
|
||||
-$TS_CMD_COLUMN --separator ',' --table $TS_SELF/files/table-sep-space >> $TS_OUTPUT 2>&1
|
||||
+$TS_CMD_COLUMN --separator "$(echo -e '\t')" --table $TS_SELF/files/table-sep-space >> $TS_OUTPUT 2>&1
|
||||
ts_finalize_subtest
|
||||
|
||||
ts_init_subtest "long"
|
||||
diff --git a/text-utils/column.c b/text-utils/column.c
|
||||
index 89d46d280..195814328 100644
|
||||
--- a/text-utils/column.c
|
||||
+++ b/text-utils/column.c
|
||||
@@ -86,7 +86,6 @@ struct column_control {
|
||||
const char *tree_parent;
|
||||
|
||||
wchar_t *input_separator;
|
||||
- char *input_separator_raw;
|
||||
const char *output_separator;
|
||||
|
||||
wchar_t **ents; /* input entries */
|
||||
@@ -96,7 +95,6 @@ struct column_control {
|
||||
unsigned int greedy :1,
|
||||
json :1,
|
||||
header_repeat :1,
|
||||
- input_sep_space : 1, /* input separator contains space chars */
|
||||
tab_noheadings :1;
|
||||
};
|
||||
|
||||
@@ -470,19 +468,7 @@ static int read_input(struct column_control *ctl, FILE *fp)
|
||||
char *buf = NULL;
|
||||
size_t bufsz = 0;
|
||||
size_t maxents = 0;
|
||||
- int rc = 0, is_space_sep = 0;
|
||||
-
|
||||
- /* Check if columns separator contains spaces chars */
|
||||
- if (ctl->mode == COLUMN_MODE_TABLE && ctl->input_separator_raw) {
|
||||
- char *p;
|
||||
-
|
||||
- for (p = ctl->input_separator_raw; *p; p++) {
|
||||
- if (isspace(*p)) {
|
||||
- is_space_sep = 1;
|
||||
- break;
|
||||
- }
|
||||
- }
|
||||
- }
|
||||
+ int rc = 0;
|
||||
|
||||
/* Read input */
|
||||
do {
|
||||
@@ -496,19 +482,6 @@ static int read_input(struct column_control *ctl, FILE *fp)
|
||||
err(EXIT_FAILURE, _("read failed"));
|
||||
}
|
||||
str = (char *) skip_space(buf);
|
||||
-
|
||||
- /* The table columns separator could be a space. In this case
|
||||
- * don't skip the separator if at begin of the line. For example:
|
||||
- *
|
||||
- * echo -e "\tcol1\tcol2\nrow\t1\t2" \
|
||||
- * | column -t -s "$(echo -e '\t')" --table-columns A,B,C
|
||||
- */
|
||||
- if (is_space_sep && str > buf) {
|
||||
- char *x = strpbrk(buf, ctl->input_separator_raw);
|
||||
- if (x && x < str)
|
||||
- str = x;
|
||||
- }
|
||||
-
|
||||
if (str) {
|
||||
p = strchr(str, '\n');
|
||||
if (p)
|
||||
@@ -517,13 +490,13 @@ static int read_input(struct column_control *ctl, FILE *fp)
|
||||
if (!str || !*str)
|
||||
continue;
|
||||
|
||||
- wcs = mbs_to_wcs(str);
|
||||
+ wcs = mbs_to_wcs(buf);
|
||||
if (!wcs) {
|
||||
/*
|
||||
* Convert broken sequences to \x<hex> and continue.
|
||||
*/
|
||||
size_t tmpsz = 0;
|
||||
- char *tmp = mbs_invalid_encode(str, &tmpsz);
|
||||
+ char *tmp = mbs_invalid_encode(buf, &tmpsz);
|
||||
|
||||
if (!tmp)
|
||||
err(EXIT_FAILURE, _("read failed"));
|
||||
@@ -720,7 +693,6 @@ int main(int argc, char **argv)
|
||||
|
||||
ctl.output_separator = " ";
|
||||
ctl.input_separator = mbs_to_wcs("\t ");
|
||||
- ctl.input_separator_raw = xstrdup("\t ");
|
||||
|
||||
while ((c = getopt_long(argc, argv, "c:dE:eH:hi:JN:n:O:o:p:R:r:s:T:tVW:x", longopts, NULL)) != -1) {
|
||||
|
||||
@@ -775,9 +747,7 @@ int main(int argc, char **argv)
|
||||
break;
|
||||
case 's':
|
||||
free(ctl.input_separator);
|
||||
- free(ctl.input_separator_raw);
|
||||
ctl.input_separator = mbs_to_wcs(optarg);
|
||||
- ctl.input_separator_raw = xstrdup(optarg);
|
||||
ctl.greedy = 0;
|
||||
break;
|
||||
case 'T':
|
||||
--
|
||||
2.14.3
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
diff --git a/include/pathnames.h b/include/pathnames.h
|
||||
index 3845d4c33..fac3a0783 100644
|
||||
--- a/include/pathnames.h
|
||||
+++ b/include/pathnames.h
|
||||
@@ -41,7 +41,7 @@
|
||||
#ifndef _PATH_MAILDIR
|
||||
# define _PATH_MAILDIR "/var/spool/mail"
|
||||
#endif
|
||||
-#define _PATH_MOTDFILE "/usr/share/misc/motd:/run/motd:/etc/motd"
|
||||
+#define _PATH_MOTDFILE "/usr/share/misc/motd:/run/motd:/run/motd.d:/etc/motd:/etc/motd.d"
|
||||
#ifndef _PATH_NOLOGIN
|
||||
# define _PATH_NOLOGIN "/etc/nologin"
|
||||
#endif
|
|
@ -0,0 +1,12 @@
|
|||
diff -up util-linux-2.36/login-utils/login.c.kzak util-linux-2.36/login-utils/login.c
|
||||
--- util-linux-2.36/login-utils/login.c.kzak 2020-07-23 14:13:26.777030764 +0200
|
||||
+++ util-linux-2.36/login-utils/login.c 2020-07-23 14:11:22.793686983 +0200
|
||||
@@ -585,7 +585,7 @@ static void log_lastlog(struct login_con
|
||||
sa.sa_handler = SIG_IGN;
|
||||
sigaction(SIGXFSZ, &sa, &oldsa_xfsz);
|
||||
|
||||
- fd = open(_PATH_LASTLOG, O_RDWR, 0);
|
||||
+ fd = open(_PATH_LASTLOG, O_RDWR | O_CREAT, 0);
|
||||
if (fd < 0)
|
||||
goto done;
|
||||
offset = cxt->pwd->pw_uid * sizeof(ll);
|
2
sources
2
sources
|
@ -1 +1 @@
|
|||
SHA512 (util-linux-2.35.1.tar.xz) = 6e27e08bfc02378970f015decfea5a52d6c342c4c8f4ac48dd07d248485eb797e506d91d290dbbca344c3e5cfe1fc150db80a23d510367427232f5abeabe591a
|
||||
SHA512 (util-linux-2.39-rc3.tar.xz) = 8a93d32a5ceb38d50a4b2c8bfa48bcab7ec9b758c89b5a1a4f7fd74558dce37385bd7ea203345148d4389de4ea60ec42058f9d7889a8075d3e616773d085427e
|
||||
|
|
|
@ -1,8 +0,0 @@
|
|||
#
|
||||
# Enter raw device bindings here.
|
||||
#
|
||||
# An example would be:
|
||||
# ACTION=="add", KERNEL=="sda", RUN+="/usr/bin/raw /dev/raw/raw1 %N"
|
||||
# to bind /dev/raw/raw1 to /dev/sda, or
|
||||
# ACTION=="add", ENV{MAJOR}=="8", ENV{MINOR}=="1", RUN+="/usr/bin/raw /dev/raw/raw2 %M %m"
|
||||
# to bind /dev/raw/raw2 to the device with major 8, minor 1.
|
|
@ -7,7 +7,6 @@ password include system-auth
|
|||
# pam_selinux.so close should be the first session rule
|
||||
session required pam_selinux.so close
|
||||
session required pam_loginuid.so
|
||||
session optional pam_console.so
|
||||
# pam_selinux.so open should only be followed by sessions to be executed in the user context
|
||||
session required pam_selinux.so open
|
||||
session required pam_namespace.so
|
||||
|
|
585
util-linux.spec
585
util-linux.spec
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1 @@
|
|||
d /run/uuidd 2775 uuidd uuidd
|
Loading…
Reference in New Issue