summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2012-01-04 15:35:30 +0100
committerLennart Poettering <lennart@poettering.net>2012-01-04 15:35:30 +0100
commit94fb446e55babb713fb24850455627acf30d999b (patch)
treeb69d30f7e36ce6b288fb3df5f2d699c83a1f835e
parente91af489a25e8bb65016a63f533ae28a505119ef (diff)
journald: store _SYSTEMD_UNIT= instead of _SYSTEMD_SERVICE= field, since processes might also be related to mount, swap or socket units, not just services
-rw-r--r--Makefile.am4
-rw-r--r--man/sd_pid_get_session.xml27
-rw-r--r--src/journal/journald.c12
-rw-r--r--src/journal/sd-journal.h1
-rw-r--r--src/login/libsystemd-login.sym2
-rw-r--r--src/login/sd-login.c6
-rw-r--r--src/login/sd-login.h6
-rw-r--r--src/logs-show.c2
8 files changed, 30 insertions, 30 deletions
diff --git a/Makefile.am b/Makefile.am
index 6c0fd055d0..21cac4e56f 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1912,7 +1912,7 @@ MANPAGES_ALIAS += \
man/sd_session_get_uid.3 \
man/sd_session_get_seat.3 \
man/sd_pid_get_owner_uid.3 \
- man/sd_pid_get_service.3 \
+ man/sd_pid_get_unit.3 \
man/sd_uid_is_on_seat.3 \
man/sd_uid_get_sessions.3 \
man/sd_uid_get_seats.3 \
@@ -1927,7 +1927,7 @@ man/sd_login_monitor_get_fd.3: man/sd_login_monitor_new.3
man/sd_session_get_uid.3: man/sd_session_is_active.3
man/sd_session_get_seat.3: man/sd_session_is_active.3
man/sd_pid_get_owner_uid.3: man/sd_pid_get_session.3
-man/sd_pid_get_service.3: man/sd_pid_get_session.3
+man/sd_pid_get_unit.3: man/sd_pid_get_session.3
man/sd_uid_is_on_seat.3: man/sd_uid_get_state.3
man/sd_uid_get_sessions.3: man/sd_uid_get_state.3
man/sd_uid_get_seats.3: man/sd_uid_get_state.3
diff --git a/man/sd_pid_get_session.xml b/man/sd_pid_get_session.xml
index 4086c5a826..bd95804628 100644
--- a/man/sd_pid_get_session.xml
+++ b/man/sd_pid_get_session.xml
@@ -44,7 +44,7 @@
<refnamediv>
<refname>sd_pid_get_session</refname>
- <refname>sd_pid_get_service</refname>
+ <refname>sd_pid_get_unit</refname>
<refname>sd_pid_get_owner_uid</refname>
<refpurpose>Determine session, service or owner of a session of a specific PID</refpurpose>
</refnamediv>
@@ -60,9 +60,9 @@
</funcprototype>
<funcprototype>
- <funcdef>int <function>sd_pid_get_service</function></funcdef>
+ <funcdef>int <function>sd_pid_get_unit</function></funcdef>
<paramdef>pid_t <parameter>pid</parameter></paramdef>
- <paramdef>char** <parameter>service</parameter></paramdef>
+ <paramdef>char** <parameter>unit</parameter></paramdef>
</funcprototype>
<funcprototype>
@@ -90,15 +90,16 @@
<citerefentry><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
call after use.</para>
- <para><function>sd_pid_get_service()</function> may be
- used to determine the system service identifier of a
- process identified by the specified process
- identifier. The service name is a short string,
- suitable for usage in file system paths. Note that not
- all processes are part of a service (e.g. user
- processes, or kernel threads). For processes not being
- part of a system service this function will fail. The
- returned string needs to be freed with the libc
+ <para><function>sd_pid_get_unit()</function> may be
+ used to determine the systemd unit (i.e. system
+ service) identifier of a process identified by the
+ specified process identifier. The unit name is a short
+ string, suitable for usage in file system paths. Note
+ that not all processes are part of a unit/service
+ (e.g. user processes, or kernel threads). For
+ processes not being part of a systemd unit/system
+ service this function will fail. The returned string
+ needs to be freed with the libc
<citerefentry><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
call after use.</para>
@@ -126,7 +127,7 @@
<title>Notes</title>
<para>The <function>sd_pid_get_session()</function>,
- <function>sd_pid_get_service()</function>, and
+ <function>sd_pid_get_pid()</function>, and
<function>sd_pid_get_owner_uid()</function> interfaces
are available as shared library, which can be compiled
and linked to with the
diff --git a/src/journal/journald.c b/src/journal/journald.c
index 47fe6edb0c..b029ab9781 100644
--- a/src/journal/journald.c
+++ b/src/journal/journald.c
@@ -431,7 +431,7 @@ static void dispatch_message_real(Server *s,
*comm = NULL, *cmdline = NULL, *hostname = NULL,
*audit_session = NULL, *audit_loginuid = NULL,
*exe = NULL, *cgroup = NULL, *session = NULL,
- *owner_uid = NULL, *service = NULL;
+ *owner_uid = NULL, *unit = NULL;
char idbuf[33];
sd_id128_t id;
@@ -515,12 +515,12 @@ static void dispatch_message_real(Server *s,
IOVEC_SET_STRING(iovec[n++], session);
}
- if (sd_pid_get_service(ucred->pid, &t) >= 0) {
- service = strappend("_SYSTEMD_SERVICE=", t);
+ if (sd_pid_get_unit(ucred->pid, &t) >= 0) {
+ unit = strappend("_SYSTEMD_UNIT=", t);
free(t);
- if (service)
- IOVEC_SET_STRING(iovec[n++], service);
+ if (unit)
+ IOVEC_SET_STRING(iovec[n++], unit);
}
if (sd_pid_get_owner_uid(ucred->uid, &owner) >= 0)
@@ -596,7 +596,7 @@ retry:
free(cgroup);
free(session);
free(owner_uid);
- free(service);
+ free(unit);
}
static void dispatch_message(Server *s,
diff --git a/src/journal/sd-journal.h b/src/journal/sd-journal.h
index d7e2528a35..87da17ddc6 100644
--- a/src/journal/sd-journal.h
+++ b/src/journal/sd-journal.h
@@ -35,7 +35,6 @@
* - OR of matches is borked...
* - extend hash tables table as we go
* - accelerate looking for "all hostnames" and suchlike.
- * - hookup with systemctl
* - handle incomplete header
*
* - local deserializer
diff --git a/src/login/libsystemd-login.sym b/src/login/libsystemd-login.sym
index bac46f4064..15e505e83b 100644
--- a/src/login/libsystemd-login.sym
+++ b/src/login/libsystemd-login.sym
@@ -36,5 +36,5 @@ local:
LIBSYSTEMD_LOGIN_38 {
global:
- sd_pid_get_service;
+ sd_pid_get_unit;
} LIBSYSTEMD_LOGIN_31;
diff --git a/src/login/sd-login.c b/src/login/sd-login.c
index e857ae08d2..8893b1de80 100644
--- a/src/login/sd-login.c
+++ b/src/login/sd-login.c
@@ -121,11 +121,11 @@ _public_ int sd_pid_get_session(pid_t pid, char **session) {
return 0;
}
-_public_ int sd_pid_get_service(pid_t pid, char **service) {
+_public_ int sd_pid_get_unit(pid_t pid, char **unit) {
int r;
char *cgroup, *p;
- if (!service)
+ if (!unit)
return -EINVAL;
r = pid_get_cgroup(pid, NULL, &cgroup);
@@ -144,7 +144,7 @@ _public_ int sd_pid_get_service(pid_t pid, char **service) {
if (!p)
return -ENOMEM;
- *service = p;
+ *unit = p;
return 0;
}
diff --git a/src/login/sd-login.h b/src/login/sd-login.h
index 1d8a55e906..00de6716b0 100644
--- a/src/login/sd-login.h
+++ b/src/login/sd-login.h
@@ -53,9 +53,9 @@ int sd_pid_get_session(pid_t pid, char **session);
* return an error for system processes. */
int sd_pid_get_owner_uid(pid_t pid, uid_t *uid);
-/* Get service name from PID. This will return an error for
- * non-service processes. */
-int sd_pid_get_service(pid_t, char **service);
+/* Get systemd unit (i.e. service) name from PID. This will return an
+ * error for non-service processes. */
+int sd_pid_get_unit(pid_t, char **unit);
/* Get state from uid. Possible states: offline, lingering, online, active */
int sd_uid_get_state(uid_t uid, char**state);
diff --git a/src/logs-show.c b/src/logs-show.c
index d178f95f94..e28fe8fa21 100644
--- a/src/logs-show.c
+++ b/src/logs-show.c
@@ -359,7 +359,7 @@ int show_journal_by_service(
if (!prefix)
prefix = "";
- if (asprintf(&m, "_SYSTEMD_SERVICE=%s", service) < 0) {
+ if (asprintf(&m, "_SYSTEMD_UNIT=%s", service) < 0) {
r = -ENOMEM;
goto finish;
}