]> git.ipfire.org Git - thirdparty/systemd.git/blame - automount.h
first attempt in implementinging execution logic
[thirdparty/systemd.git] / automount.h
CommitLineData
5cb5a6ff
LP
1/*-*- Mode: C; c-basic-offset: 8 -*-*/
2
3#ifndef fooautomounthfoo
4#define fooautomounthfoo
5
6typedef struct Automount Automount;
7
8#include "name.h"
9
10typedef enum AutomountState {
11 AUTOMOUNT_DEAD,
12 AUTOMOUNT_START_PRE,
13 AUTOMOUNT_START_POST,
14 AUTOMOUNT_WAITING,
15 AUTOMOUNT_RUNNING,
16 AUTOMOUNT_STOP_PRE,
17 AUTOMOUNT_STOP_POST,
18 AUTOMOUNT_MAINTAINANCE,
19 _AUTOMOUNT_STATE_MAX
20} AutomountState;
21
22typedef enum AutomountExecCommand {
23 AUTOMOUNT_EXEC_START_PRE,
24 AUTOMOUNT_EXEC_START_POST,
25 AUTOMOUNT_EXEC_STOP_PRE,
26 AUTOMOUNT_EXEC_STOP_POST,
27 _AUTOMOUNT_EXEC_MAX
28} AutomountExecCommand;
29
30struct Automount {
31 Meta meta;
32
33 AutomountState state;
34 char *path;
35
36 ExecCommand* exec_command[_AUTOMOUNT_EXEC_MAX];
37 ExecContext exec_context;
38
39 pid_t contol_pid;
40
41 Mount *mount;
42};
43
44extern const NameVTable automount_vtable;
45
46#endif