1#ifndef MEMFD_CONTRACT_H
2#define MEMFD_CONTRACT_H
10#define CHECK(condition) \
13 fprintf(stderr, "%s:%d: %s (errno=%d)\n", __FILE__, __LINE__, #condition, errno); \
18#define MEMFD_APP "/applications/memfd-contract-test"
21void mf_pause(
int milliseconds);
22int mf_wait(
volatile int* flag,
int milliseconds);
23int mf_reap(pid_t child,
int milliseconds);
24int mf_byte(
int socket,
char expected);
25int mf_send_fd(
int socket,
int fd);
26int mf_receive_fd(
int socket);
27int mf_make(
size_t bytes);
28int mf_size(
int fd, off_t expected);
29int mf_contents(
int fd, off_t offset,
const void* expected,
size_t length);
30int memfd_creation(
void);
32int memfd_mappings(
void);
33int memfd_lifetime(
void);
35int memfd_exec(
int argc,
char** argv);