X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Flogin%2Flogind-dbus.c;h=70d2b1ffc0f9c463f3d0c14c500be2857eba788b;hp=971b447a7cacef640fdac75a0eb4f59f59b4218c;hb=f3f6ae7c983865ea37e8ddfbd676586e55280f1e;hpb=ee3f331e539dc37e88e558583c8a9a7a2383f5e0 diff --git a/src/login/logind-dbus.c b/src/login/logind-dbus.c index 971b447a7..70d2b1ffc 100644 --- a/src/login/logind-dbus.c +++ b/src/login/logind-dbus.c @@ -69,6 +69,9 @@ int manager_get_session_from_creds(Manager *m, sd_bus_message *message, const ch return r; r = sd_bus_creds_get_session(creds, &name); + if (r == -ENXIO) + return sd_bus_error_setf(error, BUS_ERROR_NO_SESSION_FOR_PID, + "Caller does not belong to any known session"); if (r < 0) return r; } @@ -1390,7 +1393,6 @@ static int method_flush_devices(sd_bus_message *message, void *userdata, sd_bus_ return sd_bus_reply_method_return(message, NULL); } -#if 0 /// elogind has its own variant in elogind-dbus.c static int have_multiple_sessions( Manager *m, uid_t uid) { @@ -1410,6 +1412,7 @@ static int have_multiple_sessions( return false; } +#if 0 /// elogind has its own variant in elogind-dbus.c static int bus_manager_log_shutdown( Manager *m, InhibitWhat w, @@ -1604,8 +1607,13 @@ int manager_dispatch_delayed(Manager *manager, bool timeout) { return 1; } +#endif // 0 +#if 0 /// elogind-dbus.c needs to access this static int manager_inhibit_timeout_handler( +#else +int manager_inhibit_timeout_handler( +#endif // 0 sd_event_source *s, uint64_t usec, void *userdata) { @@ -1620,6 +1628,7 @@ static int manager_inhibit_timeout_handler( return (r < 0) ? r : 0; } +#if 0 /// elogind has its own variant in elogind-dbus.c static int delay_shutdown_or_sleep( Manager *m, InhibitWhat w, @@ -1655,8 +1664,13 @@ static int delay_shutdown_or_sleep( return 0; } +#endif // 0 +#if 0 /// elogind-dbus.c needs to access this static int send_prepare_for(Manager *m, InhibitWhat w, bool _active) { +#else +int send_prepare_for(Manager *m, InhibitWhat w, bool _active) { +#endif // 0 static const char * const signal_name[_INHIBIT_WHAT_MAX] = { [INHIBIT_SHUTDOWN] = "PrepareForShutdown", @@ -1678,6 +1692,7 @@ static int send_prepare_for(Manager *m, InhibitWhat w, bool _active) { active); } +#if 0 /// elogind has its own variant in elogind-dbus.c int bus_manager_shutdown_or_sleep_now_or_later( Manager *m, const char *unit_name, @@ -1714,8 +1729,13 @@ int bus_manager_shutdown_or_sleep_now_or_later( return r; } +#endif // 0 +#if 0 /// elogind-dbus.c needs to access this static int verify_shutdown_creds( +#else +int verify_shutdown_creds( +#endif // 0 Manager *m, sd_bus_message *message, InhibitWhat w, @@ -1777,6 +1797,7 @@ static int verify_shutdown_creds( return 0; } +#if 0 /// elogind has its own variant in elogind-dbus.c static int method_do_shutdown_or_sleep( Manager *m, sd_bus_message *message,