forked from pool/systemd
.
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=818
This commit is contained in:
parent
5b2b7202a8
commit
33440c6c02
94
0001-systemctl-let-list-units-unit-files-honour-type.patch
Normal file
94
0001-systemctl-let-list-units-unit-files-honour-type.patch
Normal file
@ -0,0 +1,94 @@
|
||||
Based on 6c71341aeecc3d092ed90f66e1b2c481b8e260ff Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
|
||||
Date: Wed, 29 Oct 2014 22:46:30 -0400
|
||||
Subject: [PATCH] systemctl: let list-{units,unit-files } honour --type
|
||||
|
||||
The docs don't clarify what is expected, but I don't see any reason
|
||||
why --type should be ignored.
|
||||
|
||||
Also restucture the compund conditions into separate clauses for
|
||||
easier reading.
|
||||
---
|
||||
src/systemctl/systemctl.c | 48 ++++++++++++++++++++++++++++++++++-----------
|
||||
1 file changed, 37 insertions(+), 11 deletions(-)
|
||||
|
||||
--- src/systemctl/systemctl.c
|
||||
+++ src/systemctl/systemctl.c 2014-11-18 00:00:00.000000000 +0000
|
||||
@@ -305,21 +305,37 @@ static int compare_unit_info(const void
|
||||
}
|
||||
|
||||
static bool output_show_unit(const UnitInfo *u, char **patterns) {
|
||||
- const char *dot;
|
||||
-
|
||||
if (!strv_isempty(patterns)) {
|
||||
char **pattern;
|
||||
|
||||
STRV_FOREACH(pattern, patterns)
|
||||
if (fnmatch(*pattern, u->id, FNM_NOESCAPE) == 0)
|
||||
- return true;
|
||||
+ goto next;
|
||||
return false;
|
||||
}
|
||||
|
||||
- return (!arg_types || ((dot = strrchr(u->id, '.')) &&
|
||||
- strv_find(arg_types, dot+1))) &&
|
||||
- (arg_all || !(streq(u->active_state, "inactive")
|
||||
- || u->following[0]) || u->job_id > 0);
|
||||
+next:
|
||||
+ if (arg_types) {
|
||||
+ const char *dot;
|
||||
+
|
||||
+ dot = strrchr(u->id, '.');
|
||||
+ if (!dot)
|
||||
+ return false;
|
||||
+
|
||||
+ if (!strv_find(arg_types, dot+1))
|
||||
+ return false;
|
||||
+ }
|
||||
+
|
||||
+ if (arg_all)
|
||||
+ return true;
|
||||
+
|
||||
+ if (u->job_id > 0)
|
||||
+ return true;
|
||||
+
|
||||
+ if (streq(u->active_state, "inactive") || u->following[0])
|
||||
+ return false;
|
||||
+
|
||||
+ return true;
|
||||
}
|
||||
|
||||
static void output_units_list(const UnitInfo *unit_infos, unsigned c) {
|
||||
@@ -1019,18 +1035,28 @@ static int compare_unit_file_list(const
|
||||
}
|
||||
|
||||
static bool output_show_unit_file(const UnitFileList *u, char **patterns) {
|
||||
- const char *dot;
|
||||
-
|
||||
if (!strv_isempty(patterns)) {
|
||||
char **pattern;
|
||||
|
||||
STRV_FOREACH(pattern, patterns)
|
||||
if (fnmatch(*pattern, basename(u->path), FNM_NOESCAPE) == 0)
|
||||
- return true;
|
||||
+ goto next;
|
||||
return false;
|
||||
}
|
||||
|
||||
- return !arg_types || ((dot = strrchr(u->path, '.')) && strv_find(arg_types, dot+1));
|
||||
+next:
|
||||
+ if (!strv_isempty(arg_types)) {
|
||||
+ const char *dot;
|
||||
+
|
||||
+ dot = strrchr(u->path, '.');
|
||||
+ if (!dot)
|
||||
+ return false;
|
||||
+
|
||||
+ if (!strv_find(arg_types, dot+1))
|
||||
+ return false;
|
||||
+ }
|
||||
+
|
||||
+ return true;
|
||||
}
|
||||
|
||||
static void output_unit_file_list(const UnitFileList *units, unsigned c) {
|
28
0002-systemctl-obey-state-in-list-unit-files.patch
Normal file
28
0002-systemctl-obey-state-in-list-unit-files.patch
Normal file
@ -0,0 +1,28 @@
|
||||
From fec1530e6b5b8d6dc352c7338010357126e84621 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
|
||||
Date: Wed, 29 Oct 2014 22:51:00 -0400
|
||||
Subject: [PATCH] systemctl: obey --state in list-unit-files
|
||||
|
||||
---
|
||||
src/systemctl/systemctl.c | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git src/systemctl/systemctl.c src/systemctl/systemctl.c
|
||||
index b71040b..8481a9b 100644
|
||||
--- src/systemctl/systemctl.c
|
||||
+++ src/systemctl/systemctl.c
|
||||
@@ -1268,6 +1268,11 @@ next:
|
||||
return false;
|
||||
}
|
||||
|
||||
+ if (!strv_isempty(arg_states)) {
|
||||
+ if (!strv_find(arg_states, unit_file_state_to_string(u->state)))
|
||||
+ return false;
|
||||
+ }
|
||||
+
|
||||
return true;
|
||||
}
|
||||
|
||||
--
|
||||
1.7.9.2
|
||||
|
@ -1,3 +1,12 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue Nov 18 10:26:08 UTC 2014 - werner@suse.de
|
||||
|
||||
- Add upstream patches
|
||||
0001-systemctl-let-list-units-unit-files-honour-type.patch
|
||||
0002-systemctl-obey-state-in-list-unit-files.patch
|
||||
which allows to use --type in the systemctl command list-units
|
||||
and list-unit-files.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Nov 18 10:10:28 UTC 2014 - werner@suse.de
|
||||
|
||||
|
@ -1037,6 +1037,10 @@ Patch503: 0003-utf8-when-looking-at-the-next-unichar-honour-the-siz.patch
|
||||
Patch504: 0001-keymap-Add-support-for-IBM-ThinkPad-X41-Tablet.patch
|
||||
# PATCH-FIX-UPSTREAM added at 2014/11/18
|
||||
Patch505: 0002-keymap-Fix-special-keys-on-ThinkPad-X60-X61-Tablet.patch
|
||||
# PATCH-FIX-UPSTREAM added at 2014/11/18
|
||||
Patch506: 0001-systemctl-let-list-units-unit-files-honour-type.patch
|
||||
# PATCH-FIX-UPSTREAM added at 2014/11/18
|
||||
Patch507: 0002-systemctl-obey-state-in-list-unit-files.patch
|
||||
|
||||
# UDEV PATCHES
|
||||
# ============
|
||||
@ -1903,6 +1907,8 @@ cp %{SOURCE7} m4/
|
||||
%patch503 -p0
|
||||
%patch504 -p0
|
||||
%patch505 -p0
|
||||
%patch506 -p0
|
||||
%patch507 -p0
|
||||
|
||||
# udev patches
|
||||
%patch1001 -p1
|
||||
|
@ -1,3 +1,12 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue Nov 18 10:26:08 UTC 2014 - werner@suse.de
|
||||
|
||||
- Add upstream patches
|
||||
0001-systemctl-let-list-units-unit-files-honour-type.patch
|
||||
0002-systemctl-obey-state-in-list-unit-files.patch
|
||||
which allows to use --type in the systemctl command list-units
|
||||
and list-unit-files.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Nov 18 10:10:28 UTC 2014 - werner@suse.de
|
||||
|
||||
|
@ -1032,6 +1032,10 @@ Patch503: 0003-utf8-when-looking-at-the-next-unichar-honour-the-siz.patch
|
||||
Patch504: 0001-keymap-Add-support-for-IBM-ThinkPad-X41-Tablet.patch
|
||||
# PATCH-FIX-UPSTREAM added at 2014/11/18
|
||||
Patch505: 0002-keymap-Fix-special-keys-on-ThinkPad-X60-X61-Tablet.patch
|
||||
# PATCH-FIX-UPSTREAM added at 2014/11/18
|
||||
Patch506: 0001-systemctl-let-list-units-unit-files-honour-type.patch
|
||||
# PATCH-FIX-UPSTREAM added at 2014/11/18
|
||||
Patch507: 0002-systemctl-obey-state-in-list-unit-files.patch
|
||||
|
||||
# UDEV PATCHES
|
||||
# ============
|
||||
@ -1898,6 +1902,8 @@ cp %{SOURCE7} m4/
|
||||
%patch503 -p0
|
||||
%patch504 -p0
|
||||
%patch505 -p0
|
||||
%patch506 -p0
|
||||
%patch507 -p0
|
||||
|
||||
# udev patches
|
||||
%patch1001 -p1
|
||||
|
Loading…
Reference in New Issue
Block a user