chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
systemctl: show connection counters only for Accept=yes sockets
[elogind.git]
/
src
/
systemctl.c
diff --git
a/src/systemctl.c
b/src/systemctl.c
index 03143379030cf2d7e10213a6fc071dfe8d530262..dc6fb5ea40debad9f81cbd824dbdf7b8b5c486dd 100644
(file)
--- a/
src/systemctl.c
+++ b/
src/systemctl.c
@@
-947,6
+947,7
@@
typedef struct UnitStatusInfo {
/* Socket */
unsigned n_accepted;
unsigned n_connections;
/* Socket */
unsigned n_accepted;
unsigned n_connections;
+ bool accept;
/* Device */
const char *sysfs_path;
/* Device */
const char *sysfs_path;
@@
-997,7
+998,7
@@
static void print_status_info(UnitStatusInfo *i) {
if (i->status_text)
printf("\t Status: \"%s\"\n", i->status_text);
if (i->status_text)
printf("\t Status: \"%s\"\n", i->status_text);
- if (i->
id && endswith(i->id, ".socket")
)
+ if (i->
accept
)
printf("\tAccepted: %u; Connected: %u\n", i->n_accepted, i->n_connections);
if (i->main_pid > 0 || i->control_pid > 0) {
printf("\tAccepted: %u; Connected: %u\n", i->n_accepted, i->n_connections);
if (i->main_pid > 0 || i->control_pid > 0) {
@@
-1093,6
+1094,17
@@
static int status_property(const char *name, DBusMessageIter *iter, UnitStatusIn
break;
}
break;
}
+ case DBUS_TYPE_BOOLEAN: {
+ dbus_bool_t b;
+
+ dbus_message_iter_get_basic(iter, &b);
+
+ if (streq(name, "Accept"))
+ i->accept = b;
+
+ break;
+ }
+
case DBUS_TYPE_UINT32: {
uint32_t u;
case DBUS_TYPE_UINT32: {
uint32_t u;