blob: 1d8762975d86ce5c59bd9cbbc0b2f96237201f36 [file] [log] [blame]
#include <limits.h>
#include <errno.h>
#define ERRSTRING strerror (errno)
#define COMMAND_SIZE (PIPE_BUF - 4)
#define COMMAND_TEST 0 /* No wait, signal */
#define COMMAND_NEED 1 /* Wait, signal */
#define COMMAND_ROLLBACK 2 /* Wait, signal */
#define COMMAND_DUMP_LIST 3 /* No wait, no signal */
#define COMMAND_PROVIDE 4 /* Wait, signal */
#define SIG_PRESENT SIGUSR1 /* Service is available */
#define SIG_STOPPED SIGUSR1 /* Service was stopped OK */
#define SIG_NOT_PRESENT SIGUSR2 /* Not present, but that's OK */
#define SIG_FAILED SIGPOLL /* Startup failed */
#define SIG_NOT_STOPPED SIGPOLL /* Failed to stop */
#define SIG_NOT_CHILD SIGPOLL /* Not a child of init */
struct command_struct /* Must always be COMMAND_SIZE */
{
signed int command;
pid_t pid;
pid_t ppid;
char name[1];
};