chiark / gitweb /
sd-bus: don't look for a 64bit value when we only have 32bit value on reply cookie...
[elogind.git] / src / systemd / sd-login.h
index 961bd88ec72e3b69e010e668ae69f6070998fa49..d6cfbc31333ea6741405f1756bb2c5e52044db9d 100644 (file)
@@ -25,9 +25,7 @@
 #include <sys/types.h>
 #include <inttypes.h>
 
-#ifdef __cplusplus
-extern "C" {
-#endif
+#include "_sd-common.h"
 
 /*
  * A few points:
@@ -49,6 +47,8 @@ extern "C" {
  * See sd-login(3) for more information.
  */
 
+_SD_BEGIN_DECLARATIONS;
+
 /* Get session from PID. Note that 'shared' processes of a user are
  * not attached to a session, but only attached to a user. This will
  * return an error for system processes and 'shared' processes of a
@@ -95,9 +95,12 @@ int sd_uid_get_sessions(uid_t uid, int require_active, char ***sessions);
  * just return number of seats.*/
 int sd_uid_get_seats(uid_t uid, int require_active, char ***seats);
 
-/* Return 1 if the session is a active. */
+/* Return 1 if the session is active. */
 int sd_session_is_active(const char *session);
 
+/* Return 1 if the session is remote. */
+int sd_session_is_remote(const char *session);
+
 /* Get state from session. Possible states: online, active, closing
  * (This function is a more generic version of
  * sd_session_is_active().) */
@@ -121,6 +124,12 @@ int sd_session_get_class(const char *session, char **clazz);
 /* Determine the X11 display of this session. */
 int sd_session_get_display(const char *session, char **display);
 
+/* Determine the remote host of this session. */
+int sd_session_get_remote_host(const char *session, char **remote_host);
+
+/* Determine the remote user of this session (if provided by PAM). */
+int sd_session_get_remote_user(const char *session, char **remote_user);
+
 /* Determine the TTY of this session. */
 int sd_session_get_tty(const char *session, char **display);
 
@@ -144,6 +153,9 @@ int sd_seat_can_tty(const char *seat);
 /* Return whether the seat is graphics capable, i.e. suitable for showing graphical UIs */
 int sd_seat_can_graphical(const char *seat);
 
+/* Return the class of machine */
+int sd_machine_get_class(const char *machine, char **class);
+
 /* Get all seats, store in *seats. Returns the number of seats. If
  * seats is NULL only returns number of seats. */
 int sd_get_seats(char ***seats);
@@ -182,8 +194,6 @@ int sd_login_monitor_get_events(sd_login_monitor *m);
 /* Get timeout for poll(), as usec value relative to CLOCK_MONOTONIC's epoch */
 int sd_login_monitor_get_timeout(sd_login_monitor *m, uint64_t *timeout_usec);
 
-#ifdef __cplusplus
-}
-#endif
+_SD_END_DECLARATIONS;
 
 #endif