/*
- Copyright 2017 IoT.bzh
+ Copyright (C) 2015-2020 IoT.bzh
author: José Bollo <jose.bollo@iot.bzh>
#pragma once
-extern const char SysD_State_Inactive[];
-extern const char SysD_State_Activating[];
-extern const char SysD_State_Active[];
-extern const char SysD_State_Deactivating[];
-extern const char SysD_State_Reloading[];
-extern const char SysD_State_Failed[];
+enum SysD_State {
+ SysD_State_INVALID,
+ SysD_State_Inactive,
+ SysD_State_Activating,
+ SysD_State_Active,
+ SysD_State_Deactivating,
+ SysD_State_Reloading,
+ SysD_State_Failed
+};
+
+enum SysD_Job_State {
+ SysD_Job_State_INVALID,
+ SysD_Job_State_Waiting,
+ SysD_Job_State_Running
+};
+
+struct sd_bus;
+extern int systemd_get_bus(int isuser, struct sd_bus **ret);
+extern void systemd_set_bus(int isuser, struct sd_bus *bus);
extern int systemd_get_units_dir(char *path, size_t pathlen, int isuser);
extern int systemd_get_unit_path(char *path, size_t pathlen, int isuser, const char *unit, const char *uext);
extern int systemd_unit_stop_pid(int isuser, unsigned pid);
extern int systemd_unit_pid_of_dpath(int isuser, const char *dpath);
-extern const char *systemd_unit_state_of_dpath(int isuser, const char *dpath);
+extern enum SysD_State systemd_unit_state_of_dpath(int isuser, const char *dpath);
extern int systemd_unit_list(int isuser, int (*callback)(void *closure, const char *name, const char *path, int isuser), void *closure);
extern int systemd_unit_list_all(int (*callback)(void *closure, const char *name, const char *path, int isuser), void *closure);
+extern const char *systemd_state_name(enum SysD_State state);
+