Factor out some Dinit client functions tp a new header (dinit-client.h).
[oweals/dinit.git] / src / includes / control-cmds.h
1 // Dinit control command packet types
2
3 // Requests:
4
5 // Query protocol version:
6 constexpr static int DINIT_CP_QUERYVERSION = 0;
7
8 // Find (but don't load) a service:
9 constexpr static int DINIT_CP_FINDSERVICE = 1;
10
11 // Find or load a service:
12 constexpr static int DINIT_CP_LOADSERVICE = 2;
13
14 // Start or stop a service:
15 constexpr static int DINIT_CP_STARTSERVICE = 3;
16 constexpr static int DINIT_CP_STOPSERVICE  = 4;
17 constexpr static int DINIT_CP_WAKESERVICE = 5;
18 constexpr static int DINIT_CP_RELEASESERVICE = 6;
19
20 constexpr static int DINIT_CP_UNPINSERVICE = 7;
21
22 // List services:
23 constexpr static int DINIT_CP_LISTSERVICES = 8;
24
25 // Unload a service:
26 constexpr static int DINIT_CP_UNLOADSERVICE = 9;
27
28 // Shutdown:
29 constexpr static int DINIT_CP_SHUTDOWN = 10;
30  // followed by 1-byte shutdown type
31
32
33
34 // Replies:
35
36 // Reply: ACK/NAK to request
37 constexpr static int DINIT_RP_ACK = 50;
38 constexpr static int DINIT_RP_NAK = 51;
39
40 // Request was bad (connection will be closed)
41 constexpr static int DINIT_RP_BADREQ = 52;
42
43 // Connection being closed due to out-of-memory condition
44 constexpr static int DINIT_RP_OOM = 53;
45
46 // Start service replies:
47 constexpr static int DINIT_RP_SERVICELOADERR = 54;
48 constexpr static int DINIT_RP_SERVICEOOM = 55; // couldn't start due to out-of-memory
49
50 constexpr static int DINIT_RP_SSISSUED = 56;  // service start/stop was issued (includes 4-byte service handle)
51 constexpr static int DINIT_RP_SSREDUNDANT = 57;  // service was already started/stopped (or for stop, not loaded)
52
53 // Query version response:
54 constexpr static int DINIT_RP_CPVERSION = 58;
55
56 // Service record loaded/found
57 constexpr static int DINIT_RP_SERVICERECORD = 59;
58 //     followed by 4-byte service handle, 1-byte service state
59
60 // Couldn't find/load service
61 constexpr static int DINIT_RP_NOSERVICE = 60;
62
63 // Service is already started/stopped
64 constexpr static int DINIT_RP_ALREADYSS = 61;
65
66 // Information on a service / list complete:
67 constexpr static int DINIT_RP_SVCINFO = 62;
68 constexpr static int DINIT_RP_LISTDONE = 63;
69
70 // Information:
71
72 // Service event occurred (4-byte service handle, 1 byte event code)
73 constexpr static int DINIT_IP_SERVICEEVENT = 100;
74
75 // rollback completed
76 constexpr static int DINIT_ROLLBACK_COMPLETED = 101;