|
root / src / contract_linux_stubs.c
contract_linux_stubs.c C 51 lines 1.8 KB
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
/*
 * contract_linux_stubs.c — Linux stub implementations for Hammerhead libcontract FFI
 *
 * These stubs allow zyginit to compile and link on Linux for development.
 * All functions return error codes indicating contracts are not available.
 * On Hammerhead, DO NOT compile this file — link with -lcontract instead.
 */

#include <stddef.h>

/* Template management */
int ct_tmpl_activate(int fd) { return -1; }
int ct_tmpl_clear(int fd) { return -1; }
int ct_tmpl_set_informative(int fd, int events) { return -1; }
int ct_tmpl_set_critical(int fd, int events) { return -1; }

/* Process contract template */
int ct_pr_tmpl_set_fatal(int fd, int events) { return -1; }
int ct_pr_tmpl_set_param(int fd, int params) { return -1; }

/* Contract status */
int ct_status_read(int fd, int detail, void **statp) { return -1; }
void ct_status_free(void *stathdl) { }
int ct_status_get_id(void *stathdl) { return -1; }
int ct_status_get_holder(void *stathdl) { return -1; }
int ct_status_get_state(void *stathdl) { return -1; }
int ct_pr_status_get_members(void *stathdl, void **members, unsigned int *n) {
    (void)stathdl;
    if (members != NULL) *members = NULL;
    if (n != NULL) *n = 0;
    return 0;
}

/* Contract control */
int ct_ctl_abandon(int fd) { return -1; }
int ct_ctl_adopt(int fd) { return -1; }

/* Contract events */
int ct_event_read(int fd, void **evtp) { return -1; }
void ct_event_free(void *evthdl) { }
int ct_event_get_ctid(void *evthdl) { return -1; }
int ct_event_get_type(void *evthdl) { return -1; }
int ct_event_get_flags(void *evthdl) { return -1; }

/* Process contract event details */
int ct_pr_event_get_exitstatus(void *evthdl, int *status) { return -1; }
int ct_pr_event_get_pid(void *evthdl, int *pid) { return -1; }

/* POSIX — sigsend (Hammerhead-specific) */
int sigsend(int idtype, int id, int sig) { return -1; }