X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=automount.h;h=5b623691d4c9a5c09e9d4ba6d708e9a3fdab392a;hp=e7d778c7bbd0018af6ad7c7d8776adec288af12f;hb=25e870b5f79f158ba6ac0b715248b0c3d3549325;hpb=a7334b0952ab66c17ee787e36e6d2c5ceb387de6 diff --git a/automount.h b/automount.h index e7d778c7b..5b623691d 100644 --- a/automount.h +++ b/automount.h @@ -28,38 +28,36 @@ typedef struct Automount Automount; typedef enum AutomountState { AUTOMOUNT_DEAD, - AUTOMOUNT_START_PRE, - AUTOMOUNT_START_POST, AUTOMOUNT_WAITING, AUTOMOUNT_RUNNING, - AUTOMOUNT_STOP_PRE, - AUTOMOUNT_STOP_POST, AUTOMOUNT_MAINTAINANCE, - _AUTOMOUNT_STATE_MAX + _AUTOMOUNT_STATE_MAX, + _AUTOMOUNT_STATE_INVALID = -1 } AutomountState; -typedef enum AutomountExecCommand { - AUTOMOUNT_EXEC_START_PRE, - AUTOMOUNT_EXEC_START_POST, - AUTOMOUNT_EXEC_STOP_PRE, - AUTOMOUNT_EXEC_STOP_POST, - _AUTOMOUNT_EXEC_MAX -} AutomountExecCommand; - struct Automount { Meta meta; - AutomountState state; - char *path; - - ExecCommand* exec_command[_AUTOMOUNT_EXEC_MAX]; - ExecContext exec_context; + AutomountState state, deserialized_state; - pid_t contol_pid; + char *where; Mount *mount; + + int pipe_fd; + Watch pipe_watch; + dev_t dev_id; + + Set *tokens; + + bool failure:1; }; extern const UnitVTable automount_vtable; +int automount_send_ready(Automount *a, int status); + +const char* automount_state_to_string(AutomountState i); +AutomountState automount_state_from_string(const char *s); + #endif