forked from pool/systemd
.
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=708
This commit is contained in:
parent
6930be2245
commit
3f7ac6f17c
@ -0,0 +1,54 @@
|
|||||||
|
From 3a8a916338d8446b938f3cf40f6aae0c611892e3 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lennart Poettering <lennart@poettering.net>
|
||||||
|
Date: Mon, 7 Jul 2014 11:47:10 +0200
|
||||||
|
Subject: [PATCH] util: consider 0x7F a control chracter (which it is: DEL)
|
||||||
|
|
||||||
|
Let's better be safe than sorry.
|
||||||
|
---
|
||||||
|
src/shared/util.c | 12 ++++++++++--
|
||||||
|
1 file changed, 10 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git src/shared/util.c src/shared/util.c
|
||||||
|
index 3d875c7..d25ee66 100644
|
||||||
|
--- src/shared/util.c
|
||||||
|
+++ src/shared/util.c
|
||||||
|
@@ -1608,8 +1608,9 @@ int read_one_char(FILE *f, char *ret, usec_t t, bool *need_nl) {
|
||||||
|
return -ETIMEDOUT;
|
||||||
|
}
|
||||||
|
|
||||||
|
+ errno = 0;
|
||||||
|
if (!fgets(line, sizeof(line), f))
|
||||||
|
- return -EIO;
|
||||||
|
+ return errno ? -errno : -EIO;
|
||||||
|
|
||||||
|
truncate_nl(line);
|
||||||
|
|
||||||
|
@@ -5355,6 +5356,9 @@ bool string_is_safe(const char *p) {
|
||||||
|
if (*t > 0 && *t < ' ')
|
||||||
|
return false;
|
||||||
|
|
||||||
|
+ if (*t == 127)
|
||||||
|
+ return false;
|
||||||
|
+
|
||||||
|
if (strchr("\\\"\'", *t))
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
@@ -5371,10 +5375,14 @@ bool string_has_cc(const char *p) {
|
||||||
|
|
||||||
|
assert(p);
|
||||||
|
|
||||||
|
- for (t = p; *t; t++)
|
||||||
|
+ for (t = p; *t; t++) {
|
||||||
|
if (*t > 0 && *t < ' ' && *t != '\t')
|
||||||
|
return true;
|
||||||
|
|
||||||
|
+ if (*t == 127)
|
||||||
|
+ return true;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
--
|
||||||
|
1.7.9.2
|
||||||
|
|
130
0002-util-don-t-consider-tabs-special-in-string_has_cc-an.patch
Normal file
130
0002-util-don-t-consider-tabs-special-in-string_has_cc-an.patch
Normal file
@ -0,0 +1,130 @@
|
|||||||
|
From 6294aa76d818e831de4592b41a37e225fd0871f9 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lennart Poettering <lennart@poettering.net>
|
||||||
|
Date: Mon, 7 Jul 2014 12:04:55 +0200
|
||||||
|
Subject: [PATCH] util: don't consider tabs special in string_has_cc() anymore
|
||||||
|
|
||||||
|
Instead, take a list of exceptions to our usual CC check
|
||||||
|
---
|
||||||
|
src/hostname/hostnamed.c | 3 +--
|
||||||
|
src/shared/env-util.c | 4 +++-
|
||||||
|
src/shared/fileio.c | 2 +-
|
||||||
|
src/shared/util.c | 19 ++++++++++---------
|
||||||
|
src/shared/util.h | 5 +++--
|
||||||
|
5 files changed, 18 insertions(+), 15 deletions(-)
|
||||||
|
|
||||||
|
diff --git src/hostname/hostnamed.c src/hostname/hostnamed.c
|
||||||
|
index 14629dd..514554d 100644
|
||||||
|
--- src/hostname/hostnamed.c
|
||||||
|
+++ src/hostname/hostnamed.c
|
||||||
|
@@ -550,8 +550,7 @@ static int set_machine_info(Context *c, sd_bus *bus, sd_bus_message *m, int prop
|
||||||
|
|
||||||
|
if (prop == PROP_ICON_NAME && !filename_is_safe(name))
|
||||||
|
return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, "Invalid icon name '%s'", name);
|
||||||
|
- if (prop == PROP_PRETTY_HOSTNAME &&
|
||||||
|
- (string_has_cc(name) || chars_intersect(name, "\t")))
|
||||||
|
+ if (prop == PROP_PRETTY_HOSTNAME && string_has_cc(name, NULL))
|
||||||
|
return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, "Invalid pretty host name '%s'", name);
|
||||||
|
if (prop == PROP_CHASSIS && !valid_chassis(name))
|
||||||
|
return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, "Invalid chassis '%s'", name);
|
||||||
|
diff --git src/shared/env-util.c src/shared/env-util.c
|
||||||
|
index b2e4553..20b208f 100644
|
||||||
|
--- src/shared/env-util.c
|
||||||
|
+++ src/shared/env-util.c
|
||||||
|
@@ -78,7 +78,9 @@ bool env_value_is_valid(const char *e) {
|
||||||
|
if (!utf8_is_valid(e))
|
||||||
|
return false;
|
||||||
|
|
||||||
|
- if (string_has_cc(e))
|
||||||
|
+ /* bash allows tabs in environment variables, and so should
|
||||||
|
+ * we */
|
||||||
|
+ if (string_has_cc(e, "\t"))
|
||||||
|
return false;
|
||||||
|
|
||||||
|
/* POSIX says the overall size of the environment block cannot
|
||||||
|
diff --git src/shared/fileio.c src/shared/fileio.c
|
||||||
|
index fb1c1bc..b1de590 100644
|
||||||
|
--- src/shared/fileio.c
|
||||||
|
+++ src/shared/fileio.c
|
||||||
|
@@ -738,7 +738,7 @@ static void write_env_var(FILE *f, const char *v) {
|
||||||
|
p++;
|
||||||
|
fwrite(v, 1, p-v, f);
|
||||||
|
|
||||||
|
- if (string_has_cc(p) || chars_intersect(p, WHITESPACE "\'\"\\`$")) {
|
||||||
|
+ if (string_has_cc(p, NULL) || chars_intersect(p, WHITESPACE "\'\"\\`$")) {
|
||||||
|
fputc('\"', f);
|
||||||
|
|
||||||
|
for (; *p; p++) {
|
||||||
|
diff --git src/shared/util.c src/shared/util.c
|
||||||
|
index d25ee66..d223ecf 100644
|
||||||
|
--- src/shared/util.c
|
||||||
|
+++ src/shared/util.c
|
||||||
|
@@ -5350,16 +5350,14 @@ bool filename_is_safe(const char *p) {
|
||||||
|
bool string_is_safe(const char *p) {
|
||||||
|
const char *t;
|
||||||
|
|
||||||
|
- assert(p);
|
||||||
|
+ if (!p)
|
||||||
|
+ return false;
|
||||||
|
|
||||||
|
for (t = p; *t; t++) {
|
||||||
|
if (*t > 0 && *t < ' ')
|
||||||
|
return false;
|
||||||
|
|
||||||
|
- if (*t == 127)
|
||||||
|
- return false;
|
||||||
|
-
|
||||||
|
- if (strchr("\\\"\'", *t))
|
||||||
|
+ if (strchr("\\\"\'\0x7f", *t))
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -5367,16 +5365,19 @@ bool string_is_safe(const char *p) {
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
- * Check if a string contains control characters.
|
||||||
|
- * Spaces and tabs are not considered control characters.
|
||||||
|
+ * Check if a string contains control characters. If 'ok' is non-NULL
|
||||||
|
+ * it may be a string containing additional CCs to be considered OK.
|
||||||
|
*/
|
||||||
|
-bool string_has_cc(const char *p) {
|
||||||
|
+bool string_has_cc(const char *p, const char *ok) {
|
||||||
|
const char *t;
|
||||||
|
|
||||||
|
assert(p);
|
||||||
|
|
||||||
|
for (t = p; *t; t++) {
|
||||||
|
- if (*t > 0 && *t < ' ' && *t != '\t')
|
||||||
|
+ if (ok && strchr(ok, *t))
|
||||||
|
+ return false;
|
||||||
|
+
|
||||||
|
+ if (*t > 0 && *t < ' ')
|
||||||
|
return true;
|
||||||
|
|
||||||
|
if (*t == 127)
|
||||||
|
diff --git src/shared/util.h src/shared/util.h
|
||||||
|
index e23069c..8544940 100644
|
||||||
|
--- src/shared/util.h
|
||||||
|
+++ src/shared/util.h
|
||||||
|
@@ -382,7 +382,8 @@ bool fstype_is_network(const char *fstype);
|
||||||
|
int chvt(int vt);
|
||||||
|
|
||||||
|
int read_one_char(FILE *f, char *ret, usec_t timeout, bool *need_nl);
|
||||||
|
-int ask(char *ret, const char *replies, const char *text, ...) _printf_(3, 4);
|
||||||
|
+int ask_char(char *ret, const char *replies, const char *text, ...) _printf_(3, 4);
|
||||||
|
+int ask_string(char **ret, const char *text, ...) _printf_(2, 3);
|
||||||
|
|
||||||
|
int reset_terminal_fd(int fd, bool switch_to_text);
|
||||||
|
int reset_terminal(const char *name);
|
||||||
|
@@ -692,7 +693,7 @@ _alloc_(2, 3) static inline void *memdup_multiply(const void *p, size_t a, size_
|
||||||
|
bool filename_is_safe(const char *p) _pure_;
|
||||||
|
bool path_is_safe(const char *p) _pure_;
|
||||||
|
bool string_is_safe(const char *p) _pure_;
|
||||||
|
-bool string_has_cc(const char *p) _pure_;
|
||||||
|
+bool string_has_cc(const char *p, const char *ok) _pure_;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check if a string contains any glob patterns.
|
||||||
|
--
|
||||||
|
1.7.9.2
|
||||||
|
|
@ -0,0 +1,52 @@
|
|||||||
|
Based on 037c26d0aeb750ca9c8d605884ea1db7baecfea8 Mon Sep 17 00:00:00 2001
|
||||||
|
Based on 9a00f57a5ba7ed431e6bac8d8b36518708503b4e Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lennart Poettering <lennart@poettering.net>
|
||||||
|
Date: Mon, 7 Jul 2014 14:59:06 +0200
|
||||||
|
Subject: [PATCH] architecture: add string table entries for mips-le archs
|
||||||
|
which were missing
|
||||||
|
|
||||||
|
---
|
||||||
|
src/shared/architecture.c | 2 ++
|
||||||
|
src/shared/architecture.h | 4 ++++
|
||||||
|
2 files changed, 6 insertions(+)
|
||||||
|
|
||||||
|
diff --git src/shared/architecture.c src/shared/architecture.c
|
||||||
|
index 6cdca4e..dc45f35 100644
|
||||||
|
--- src/shared/architecture.c
|
||||||
|
+++ src/shared/architecture.c
|
||||||
|
@@ -153,7 +153,9 @@ static const char *const architecture_table[_ARCHITECTURE_MAX] = {
|
||||||
|
[ARCHITECTURE_SPARC] = "sparc",
|
||||||
|
[ARCHITECTURE_SPARC64] = "sparc64",
|
||||||
|
[ARCHITECTURE_MIPS] = "mips",
|
||||||
|
+ [ARCHITECTURE_MIPS_LE] = "mips-le",
|
||||||
|
[ARCHITECTURE_MIPS64] = "mips64",
|
||||||
|
+ [ARCHITECTURE_MIPS64_LE] = "mips64-le",
|
||||||
|
[ARCHITECTURE_ALPHA] = "alpha",
|
||||||
|
[ARCHITECTURE_ARM] = "arm",
|
||||||
|
[ARCHITECTURE_ARM_BE] = "arm-be",
|
||||||
|
diff --git src/shared/architecture.h src/shared/architecture.h
|
||||||
|
index 20e848b..0807924 100644
|
||||||
|
--- src/shared/architecture.h
|
||||||
|
+++ src/shared/architecture.h
|
||||||
|
@@ -23,6 +23,8 @@
|
||||||
|
|
||||||
|
#include "util.h"
|
||||||
|
|
||||||
|
+/* A cleaned up architecture definition */
|
||||||
|
+
|
||||||
|
typedef enum Architecture {
|
||||||
|
ARCHITECTURE_X86 = 0,
|
||||||
|
ARCHITECTURE_X86_64,
|
||||||
|
@@ -38,7 +40,9 @@ typedef enum Architecture {
|
||||||
|
ARCHITECTURE_SPARC,
|
||||||
|
ARCHITECTURE_SPARC64,
|
||||||
|
ARCHITECTURE_MIPS,
|
||||||
|
+ ARCHITECTURE_MIPS_LE,
|
||||||
|
ARCHITECTURE_MIPS64,
|
||||||
|
+ ARCHITECTURE_MIPS64_LE,
|
||||||
|
ARCHITECTURE_ALPHA,
|
||||||
|
ARCHITECTURE_ARM,
|
||||||
|
ARCHITECTURE_ARM_BE,
|
||||||
|
--
|
||||||
|
1.7.9.2
|
||||||
|
|
@ -0,0 +1,67 @@
|
|||||||
|
Based on 4774e357268e4a1e9fa82adb0563a538932a4c8e Mon Sep 17 00:00:00 2001
|
||||||
|
From: Miguel Angel Ajo <mangelajo@redhat.com>
|
||||||
|
Date: Mon, 7 Jul 2014 14:20:36 +0200
|
||||||
|
Subject: [PATCH] core: Added support for ERRNO NOTIFY_SOCKET message parsing,
|
||||||
|
and added StatusErrno dbus property along StatusText to
|
||||||
|
allow notification of numeric status condition while
|
||||||
|
degraded service operation or any other special situation.
|
||||||
|
|
||||||
|
---
|
||||||
|
src/core/dbus-service.c | 1 +
|
||||||
|
src/core/service.c | 17 +++++++++++++++++
|
||||||
|
src/core/service.h | 1 +
|
||||||
|
3 files changed, 19 insertions(+)
|
||||||
|
|
||||||
|
diff --git src/core/dbus-service.c src/core/dbus-service.c
|
||||||
|
index 093289f..5a881e8 100644
|
||||||
|
--- src/core/dbus-service.c
|
||||||
|
+++ src/core/dbus-service.c
|
||||||
|
@@ -60,6 +60,7 @@ const sd_bus_vtable bus_service_vtable[] = {
|
||||||
|
SD_BUS_PROPERTY("ControlPID", "u", bus_property_get_pid, offsetof(Service, control_pid), SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE),
|
||||||
|
SD_BUS_PROPERTY("BusName", "s", NULL, offsetof(Service, bus_name), SD_BUS_VTABLE_PROPERTY_CONST),
|
||||||
|
SD_BUS_PROPERTY("StatusText", "s", NULL, offsetof(Service, status_text), SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE),
|
||||||
|
+ SD_BUS_PROPERTY("StatusErrno", "i", NULL, offsetof(Service, status_errno), SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE),
|
||||||
|
SD_BUS_PROPERTY("Result", "s", property_get_result, offsetof(Service, result), SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE),
|
||||||
|
BUS_EXEC_STATUS_VTABLE("ExecMain", offsetof(Service, main_exec_status), SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE),
|
||||||
|
BUS_EXEC_COMMAND_LIST_VTABLE("ExecStartPre", offsetof(Service, exec_command[SERVICE_EXEC_START_PRE]), SD_BUS_VTABLE_PROPERTY_EMITS_INVALIDATION),
|
||||||
|
diff --git src/core/service.c src/core/service.c
|
||||||
|
index 0b19767..ace45e2 100644
|
||||||
|
--- src/core/service.c
|
||||||
|
+++ src/core/service.c
|
||||||
|
@@ -2637,6 +2637,23 @@ static void service_notify_message(Unit *u, pid_t pid, char **tags) {
|
||||||
|
free(t);
|
||||||
|
}
|
||||||
|
|
||||||
|
+ /* Interpret ERRNO= */
|
||||||
|
+ e = strv_find_prefix(tags, "ERRNO=");
|
||||||
|
+ if (e) {
|
||||||
|
+ int status_errno;
|
||||||
|
+
|
||||||
|
+ if (safe_atoi(e + 6, &status_errno) < 0)
|
||||||
|
+ log_warning_unit(u->id, "Failed to parse ERRNO= field in notification message: %s", e);
|
||||||
|
+ else {
|
||||||
|
+ log_debug_unit(u->id, "%s: got %s", u->id, e);
|
||||||
|
+
|
||||||
|
+ if (s->status_errno != status_errno) {
|
||||||
|
+ s->status_errno = status_errno;
|
||||||
|
+ notify_dbus = true;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
/* Interpret WATCHDOG= */
|
||||||
|
if (strv_find(tags, "WATCHDOG=1")) {
|
||||||
|
log_debug_unit(u->id, "%s: got WATCHDOG=1", u->id);
|
||||||
|
--- src/core/service.h
|
||||||
|
+++ src/core/service.h 2014-07-08 12:54:39.238736046 +0200
|
||||||
|
@@ -187,6 +187,7 @@ struct Service {
|
||||||
|
char *bus_name;
|
||||||
|
|
||||||
|
char *status_text;
|
||||||
|
+ int status_errno;
|
||||||
|
|
||||||
|
RateLimit start_limit;
|
||||||
|
StartLimitAction start_limit_action;
|
||||||
|
--
|
||||||
|
1.7.9.2
|
||||||
|
|
@ -0,0 +1,25 @@
|
|||||||
|
From 2040ccf171404b709acb0ecf1d1f17b87c5d05f0 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lennart Poettering <lennart@poettering.net>
|
||||||
|
Date: Mon, 7 Jul 2014 17:32:44 +0200
|
||||||
|
Subject: [PATCH] service: don't accept negative ERRNO= notification messages
|
||||||
|
|
||||||
|
---
|
||||||
|
src/core/service.c | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git src/core/service.c src/core/service.c
|
||||||
|
index 5c54a34..d5aff99 100644
|
||||||
|
--- src/core/service.c
|
||||||
|
+++ src/core/service.c
|
||||||
|
@@ -2637,7 +2637,7 @@ static void service_notify_message(Unit *u, pid_t pid, char **tags) {
|
||||||
|
if (e) {
|
||||||
|
int status_errno;
|
||||||
|
|
||||||
|
- if (safe_atoi(e + 6, &status_errno) < 0)
|
||||||
|
+ if (safe_atoi(e + 6, &status_errno) < 0 || status_errno < 0)
|
||||||
|
log_warning_unit(u->id, "Failed to parse ERRNO= field in notification message: %s", e);
|
||||||
|
else {
|
||||||
|
log_debug_unit(u->id, "%s: got %s", u->id, e);
|
||||||
|
--
|
||||||
|
1.7.9.2
|
||||||
|
|
@ -0,0 +1,37 @@
|
|||||||
|
Based on b4af5a803aa71a57733ca46fef29b7afb20a626c Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lennart Poettering <lennart@poettering.net>
|
||||||
|
Date: Mon, 7 Jul 2014 17:33:26 +0200
|
||||||
|
Subject: [PATCH] systemctl: show StatusErrno value in "systemctl status"
|
||||||
|
|
||||||
|
---
|
||||||
|
src/systemctl/systemctl.c | 5 +++++
|
||||||
|
1 file changed, 5 insertions(+)
|
||||||
|
|
||||||
|
--- src/systemctl/systemctl.c
|
||||||
|
+++ src/systemctl/systemctl.c 2014-07-08 10:57:30.170735691 +0000
|
||||||
|
@@ -2710,6 +2710,7 @@ typedef struct UnitStatusInfo {
|
||||||
|
const char *status_text;
|
||||||
|
const char *pid_file;
|
||||||
|
bool running:1;
|
||||||
|
+ int status_errno;
|
||||||
|
|
||||||
|
usec_t start_timestamp;
|
||||||
|
usec_t exit_timestamp;
|
||||||
|
@@ -2982,6 +2983,8 @@ static void print_status_info(
|
||||||
|
|
||||||
|
if (i->status_text)
|
||||||
|
printf(" Status: \"%s\"\n", i->status_text);
|
||||||
|
+ if (i->status_errno > 0)
|
||||||
|
+ printf(" Error: %i (%s)\n", i->status_errno, strerror(i->status_errno));
|
||||||
|
|
||||||
|
if (i->control_group &&
|
||||||
|
(i->main_pid > 0 || i->control_pid > 0 || cg_is_empty_recursive(SYSTEMD_CGROUP_CONTROLLER, i->control_group, false) == 0)) {
|
||||||
|
@@ -3203,6 +3206,8 @@ static int status_property(const char *n
|
||||||
|
i->exit_code = (int) j;
|
||||||
|
else if (streq(name, "ExecMainStatus"))
|
||||||
|
i->exit_status = (int) j;
|
||||||
|
+ else if (streq(name, "StatusErrno"))
|
||||||
|
+ i->status_errno = (int) j;
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
@ -0,0 +1,29 @@
|
|||||||
|
From 8cfdb077b8e3da1c47fc1d735d051f21f33144c1 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lennart Poettering <lennart@poettering.net>
|
||||||
|
Date: Mon, 7 Jul 2014 17:33:46 +0200
|
||||||
|
Subject: [PATCH] service: flush status text and errno values each time a
|
||||||
|
service is started
|
||||||
|
|
||||||
|
We shouldn't show status texts from previous service starts
|
||||||
|
---
|
||||||
|
src/core/service.c | 4 ++++
|
||||||
|
1 file changed, 4 insertions(+)
|
||||||
|
|
||||||
|
diff --git src/core/service.c src/core/service.c
|
||||||
|
index d5aff99..0f542ed 100644
|
||||||
|
--- src/core/service.c
|
||||||
|
+++ src/core/service.c
|
||||||
|
@@ -1699,6 +1699,10 @@ static int service_start(Unit *u) {
|
||||||
|
s->main_pid_alien = false;
|
||||||
|
s->forbid_restart = false;
|
||||||
|
|
||||||
|
+ free(s->status_text);
|
||||||
|
+ s->status_text = NULL;
|
||||||
|
+ s->status_errno = 0;
|
||||||
|
+
|
||||||
|
service_enter_start_pre(s);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
--
|
||||||
|
1.7.9.2
|
||||||
|
|
@ -0,0 +1,36 @@
|
|||||||
|
Based on a669ea9860900d5cdebbc4cb9aaea72db7e28a02 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Tom Gundersen <teg@jklm.no>
|
||||||
|
Date: Mon, 7 Jul 2014 14:50:16 +0200
|
||||||
|
Subject: [PATCH] udev: link_config - ignore errors due to missing MAC address
|
||||||
|
|
||||||
|
Otherwis, we get misleading error messages on links with MACs.
|
||||||
|
|
||||||
|
Reported by Leonid Isaev.
|
||||||
|
---
|
||||||
|
src/udev/net/link-config.c | 8 ++++++--
|
||||||
|
1 file changed, 6 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
--- src/udev/net/link-config.c
|
||||||
|
+++ src/udev/net/link-config.c 2014-07-08 10:44:19.450735575 +0000
|
||||||
|
@@ -440,7 +440,9 @@ int link_config_apply(link_config_ctx *c
|
||||||
|
case MACPOLICY_PERSISTENT:
|
||||||
|
if (!mac_is_permanent(device)) {
|
||||||
|
r = get_mac(device, false, &generated_mac);
|
||||||
|
- if (r < 0)
|
||||||
|
+ if (r == -ENOENT)
|
||||||
|
+ break;
|
||||||
|
+ else if (r < 0)
|
||||||
|
return r;
|
||||||
|
mac = &generated_mac;
|
||||||
|
}
|
||||||
|
@@ -448,7 +450,9 @@ int link_config_apply(link_config_ctx *c
|
||||||
|
case MACPOLICY_RANDOM:
|
||||||
|
if (!mac_is_random(device)) {
|
||||||
|
r = get_mac(device, true, &generated_mac);
|
||||||
|
- if (r < 0)
|
||||||
|
+ if (r == -ENOENT)
|
||||||
|
+ break;
|
||||||
|
+ else if (r < 0)
|
||||||
|
return r;
|
||||||
|
mac = &generated_mac;
|
||||||
|
}
|
@ -1,3 +1,21 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Jul 8 10:59:26 UTC 2014 - werner@suse.de
|
||||||
|
|
||||||
|
- Port and add upstream patches
|
||||||
|
0001-util-consider-0x7F-a-control-chracter-which-it-is-DE.patch
|
||||||
|
0002-util-don-t-consider-tabs-special-in-string_has_cc-an.patch
|
||||||
|
0003-architecture-add-string-table-entries-for-mips-le-ar.patch
|
||||||
|
0004-core-Added-support-for-ERRNO-NOTIFY_SOCKET-message-p.patch
|
||||||
|
0005-service-don-t-accept-negative-ERRNO-notification-mes.patch
|
||||||
|
0006-systemctl-show-StatusErrno-value-in-systemctl-status.patch
|
||||||
|
0007-service-flush-status-text-and-errno-values-each-time.patch
|
||||||
|
|
||||||
|
------------------------------------------------------------------
|
||||||
|
Tue Jul 8 10:41:31 UTC 2014 - werner@suse.de
|
||||||
|
|
||||||
|
- Add upstream patch
|
||||||
|
1049-udev-link_config-ignore-errors-due-to-missing-MAC-ad.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Jul 7 13:06:35 UTC 2014 - werner@suse.de
|
Mon Jul 7 13:06:35 UTC 2014 - werner@suse.de
|
||||||
|
|
||||||
|
@ -653,6 +653,20 @@ Patch319: 0002-namespace-fix-uninitialized-memory-access.patch
|
|||||||
Patch320: 0001-machine-don-t-return-uninitialized-variable.patch
|
Patch320: 0001-machine-don-t-return-uninitialized-variable.patch
|
||||||
# PATCH-FIX-UPSTREAM added at 2014/07/07
|
# PATCH-FIX-UPSTREAM added at 2014/07/07
|
||||||
Patch321: 0002-vconsole-setup-run-setfont-before-loadkeys.patch
|
Patch321: 0002-vconsole-setup-run-setfont-before-loadkeys.patch
|
||||||
|
# PATCH-FIX-UPSTREAM added at 2014/07/08
|
||||||
|
Patch322: 0001-util-consider-0x7F-a-control-chracter-which-it-is-DE.patch
|
||||||
|
# PATCH-FIX-UPSTREAM added at 2014/07/08
|
||||||
|
Patch323: 0002-util-don-t-consider-tabs-special-in-string_has_cc-an.patch
|
||||||
|
# PATCH-FIX-UPSTREAM added at 2014/07/08
|
||||||
|
Patch324: 0003-architecture-add-string-table-entries-for-mips-le-ar.patch
|
||||||
|
# PATCH-FIX-UPSTREAM added at 2014/07/08
|
||||||
|
Patch325: 0004-core-Added-support-for-ERRNO-NOTIFY_SOCKET-message-p.patch
|
||||||
|
# PATCH-FIX-UPSTREAM added at 2014/07/08
|
||||||
|
Patch326: 0005-service-don-t-accept-negative-ERRNO-notification-mes.patch
|
||||||
|
# PATCH-FIX-UPSTREAM added at 2014/07/08
|
||||||
|
Patch327: 0006-systemctl-show-StatusErrno-value-in-systemctl-status.patch
|
||||||
|
# PATCH-FIX-UPSTREAM added at 2014/07/08
|
||||||
|
Patch328: 0007-service-flush-status-text-and-errno-values-each-time.patch
|
||||||
|
|
||||||
# UDEV PATCHES
|
# UDEV PATCHES
|
||||||
# ============
|
# ============
|
||||||
@ -756,6 +770,8 @@ Patch1046: 1046-fix-duplicated-rules-with-layer3-interfaces.patch
|
|||||||
Patch1047: 1047-udev-net_setup_link-builtin-should-print-the-reason-.patch
|
Patch1047: 1047-udev-net_setup_link-builtin-should-print-the-reason-.patch
|
||||||
# PATCH-FIX-UPSTREAM 1048-udev-net_setup_link-add-a-bit-more-logging.patch
|
# PATCH-FIX-UPSTREAM 1048-udev-net_setup_link-add-a-bit-more-logging.patch
|
||||||
Patch1048: 1048-udev-net_setup_link-add-a-bit-more-logging.patch
|
Patch1048: 1048-udev-net_setup_link-add-a-bit-more-logging.patch
|
||||||
|
# PATCH-FIX-UPSTREAM 1049-udev-link_config-ignore-errors-due-to-missing-MAC-ad.patch
|
||||||
|
Patch1049: 1049-udev-link_config-ignore-errors-due-to-missing-MAC-ad.patch
|
||||||
|
|
||||||
%description
|
%description
|
||||||
Systemd is a system and service manager, compatible with SysV and LSB
|
Systemd is a system and service manager, compatible with SysV and LSB
|
||||||
@ -1235,6 +1251,13 @@ cp %{SOURCE7} m4/
|
|||||||
%patch319 -p0
|
%patch319 -p0
|
||||||
%patch320 -p0
|
%patch320 -p0
|
||||||
%patch321 -p0
|
%patch321 -p0
|
||||||
|
%patch322 -p0
|
||||||
|
%patch323 -p0
|
||||||
|
%patch324 -p0
|
||||||
|
%patch325 -p0
|
||||||
|
%patch326 -p0
|
||||||
|
%patch327 -p0
|
||||||
|
%patch328 -p0
|
||||||
|
|
||||||
# udev patches
|
# udev patches
|
||||||
%patch1001 -p1
|
%patch1001 -p1
|
||||||
@ -1292,6 +1315,7 @@ cp %{SOURCE7} m4/
|
|||||||
%patch1046 -p1
|
%patch1046 -p1
|
||||||
%patch1047 -p0
|
%patch1047 -p0
|
||||||
%patch1048 -p0
|
%patch1048 -p0
|
||||||
|
%patch1049 -p0
|
||||||
|
|
||||||
# ensure generate files are removed
|
# ensure generate files are removed
|
||||||
rm -f units/emergency.service
|
rm -f units/emergency.service
|
||||||
|
@ -1,3 +1,21 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Jul 8 10:59:26 UTC 2014 - werner@suse.de
|
||||||
|
|
||||||
|
- Port and add upstream patches
|
||||||
|
0001-util-consider-0x7F-a-control-chracter-which-it-is-DE.patch
|
||||||
|
0002-util-don-t-consider-tabs-special-in-string_has_cc-an.patch
|
||||||
|
0003-architecture-add-string-table-entries-for-mips-le-ar.patch
|
||||||
|
0004-core-Added-support-for-ERRNO-NOTIFY_SOCKET-message-p.patch
|
||||||
|
0005-service-don-t-accept-negative-ERRNO-notification-mes.patch
|
||||||
|
0006-systemctl-show-StatusErrno-value-in-systemctl-status.patch
|
||||||
|
0007-service-flush-status-text-and-errno-values-each-time.patch
|
||||||
|
|
||||||
|
------------------------------------------------------------------
|
||||||
|
Tue Jul 8 10:41:31 UTC 2014 - werner@suse.de
|
||||||
|
|
||||||
|
- Add upstream patch
|
||||||
|
1049-udev-link_config-ignore-errors-due-to-missing-MAC-ad.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Jul 7 13:06:35 UTC 2014 - werner@suse.de
|
Mon Jul 7 13:06:35 UTC 2014 - werner@suse.de
|
||||||
|
|
||||||
|
24
systemd.spec
24
systemd.spec
@ -648,6 +648,20 @@ Patch319: 0002-namespace-fix-uninitialized-memory-access.patch
|
|||||||
Patch320: 0001-machine-don-t-return-uninitialized-variable.patch
|
Patch320: 0001-machine-don-t-return-uninitialized-variable.patch
|
||||||
# PATCH-FIX-UPSTREAM added at 2014/07/07
|
# PATCH-FIX-UPSTREAM added at 2014/07/07
|
||||||
Patch321: 0002-vconsole-setup-run-setfont-before-loadkeys.patch
|
Patch321: 0002-vconsole-setup-run-setfont-before-loadkeys.patch
|
||||||
|
# PATCH-FIX-UPSTREAM added at 2014/07/08
|
||||||
|
Patch322: 0001-util-consider-0x7F-a-control-chracter-which-it-is-DE.patch
|
||||||
|
# PATCH-FIX-UPSTREAM added at 2014/07/08
|
||||||
|
Patch323: 0002-util-don-t-consider-tabs-special-in-string_has_cc-an.patch
|
||||||
|
# PATCH-FIX-UPSTREAM added at 2014/07/08
|
||||||
|
Patch324: 0003-architecture-add-string-table-entries-for-mips-le-ar.patch
|
||||||
|
# PATCH-FIX-UPSTREAM added at 2014/07/08
|
||||||
|
Patch325: 0004-core-Added-support-for-ERRNO-NOTIFY_SOCKET-message-p.patch
|
||||||
|
# PATCH-FIX-UPSTREAM added at 2014/07/08
|
||||||
|
Patch326: 0005-service-don-t-accept-negative-ERRNO-notification-mes.patch
|
||||||
|
# PATCH-FIX-UPSTREAM added at 2014/07/08
|
||||||
|
Patch327: 0006-systemctl-show-StatusErrno-value-in-systemctl-status.patch
|
||||||
|
# PATCH-FIX-UPSTREAM added at 2014/07/08
|
||||||
|
Patch328: 0007-service-flush-status-text-and-errno-values-each-time.patch
|
||||||
|
|
||||||
# UDEV PATCHES
|
# UDEV PATCHES
|
||||||
# ============
|
# ============
|
||||||
@ -751,6 +765,8 @@ Patch1046: 1046-fix-duplicated-rules-with-layer3-interfaces.patch
|
|||||||
Patch1047: 1047-udev-net_setup_link-builtin-should-print-the-reason-.patch
|
Patch1047: 1047-udev-net_setup_link-builtin-should-print-the-reason-.patch
|
||||||
# PATCH-FIX-UPSTREAM 1048-udev-net_setup_link-add-a-bit-more-logging.patch
|
# PATCH-FIX-UPSTREAM 1048-udev-net_setup_link-add-a-bit-more-logging.patch
|
||||||
Patch1048: 1048-udev-net_setup_link-add-a-bit-more-logging.patch
|
Patch1048: 1048-udev-net_setup_link-add-a-bit-more-logging.patch
|
||||||
|
# PATCH-FIX-UPSTREAM 1049-udev-link_config-ignore-errors-due-to-missing-MAC-ad.patch
|
||||||
|
Patch1049: 1049-udev-link_config-ignore-errors-due-to-missing-MAC-ad.patch
|
||||||
|
|
||||||
%description
|
%description
|
||||||
Systemd is a system and service manager, compatible with SysV and LSB
|
Systemd is a system and service manager, compatible with SysV and LSB
|
||||||
@ -1230,6 +1246,13 @@ cp %{SOURCE7} m4/
|
|||||||
%patch319 -p0
|
%patch319 -p0
|
||||||
%patch320 -p0
|
%patch320 -p0
|
||||||
%patch321 -p0
|
%patch321 -p0
|
||||||
|
%patch322 -p0
|
||||||
|
%patch323 -p0
|
||||||
|
%patch324 -p0
|
||||||
|
%patch325 -p0
|
||||||
|
%patch326 -p0
|
||||||
|
%patch327 -p0
|
||||||
|
%patch328 -p0
|
||||||
|
|
||||||
# udev patches
|
# udev patches
|
||||||
%patch1001 -p1
|
%patch1001 -p1
|
||||||
@ -1287,6 +1310,7 @@ cp %{SOURCE7} m4/
|
|||||||
%patch1046 -p1
|
%patch1046 -p1
|
||||||
%patch1047 -p0
|
%patch1047 -p0
|
||||||
%patch1048 -p0
|
%patch1048 -p0
|
||||||
|
%patch1049 -p0
|
||||||
|
|
||||||
# ensure generate files are removed
|
# ensure generate files are removed
|
||||||
rm -f units/emergency.service
|
rm -f units/emergency.service
|
||||||
|
Loading…
Reference in New Issue
Block a user