blob: ba71ce218a41b6ccc22823d29f8d93b838cf9e53 [file] [log] [blame]
/*
* Copyright 2021 Google LLC
* SPDX-License-Identifier: MIT
*/
#ifndef RENDER_SERVER_H
#define RENDER_SERVER_H
#include "render_common.h"
enum render_server_state {
RENDER_SERVER_STATE_RUN,
RENDER_SERVER_STATE_SUBPROCESS,
};
struct render_server {
enum render_server_state state;
/* only initialized in subprocesses */
struct render_context_args *context_args;
/* options */
int client_fd;
const char *worker_seccomp_bpf;
const char *worker_seccomp_minijail_policy;
bool worker_seccomp_minijail_log;
struct render_worker_jail *worker_jail;
/* only one client in the current design */
struct render_client *client;
};
bool
render_server_main(int argc, char **argv, struct render_context_args *ctx_args);
#endif /* RENDER_SERVER_H */