/* * 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 */