]>
Commit | Line | Data |
---|---|---|
53e1b683 | 1 | /* SPDX-License-Identifier: LGPL-2.1+ */ |
56599585 LP |
2 | #pragma once |
3 | ||
56599585 LP |
4 | #include <sys/types.h> |
5 | ||
6 | #include "sd-bus.h" | |
7 | #include "sd-event.h" | |
8 | ||
9 | #include "list.h" | |
10 | ||
11 | typedef struct Operation Operation; | |
12 | ||
13 | #include "machined.h" | |
14 | ||
15 | #define OPERATIONS_MAX 64 | |
16 | ||
17 | struct Operation { | |
18 | Manager *manager; | |
795c5d31 | 19 | Machine *machine; |
56599585 LP |
20 | pid_t pid; |
21 | sd_bus_message *message; | |
22 | int errno_fd; | |
03c2b288 | 23 | int extra_fd; |
56599585 | 24 | sd_event_source *event_source; |
03c2b288 | 25 | int (*done)(Operation *o, int ret, sd_bus_error *error); |
56599585 | 26 | LIST_FIELDS(Operation, operations); |
795c5d31 | 27 | LIST_FIELDS(Operation, operations_by_machine); |
56599585 LP |
28 | }; |
29 | ||
03c2b288 | 30 | int operation_new(Manager *manager, Machine *machine, pid_t child, sd_bus_message *message, int errno_fd, Operation **ret); |
56599585 | 31 | Operation *operation_free(Operation *o); |