2017-05-26 07:55:02 +08:00
/* Generated by the protocol buffer compiler. DO NOT EDIT! */
/* Generated from: config.proto */
# ifndef PROTOBUF_C_config_2eproto__INCLUDED
# define PROTOBUF_C_config_2eproto__INCLUDED
# include <protobuf-c/protobuf-c.h>
PROTOBUF_C__BEGIN_DECLS
# if PROTOBUF_C_VERSION_NUMBER < 1000000
2017-05-26 08:24:36 +08:00
# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
2017-05-26 07:55:02 +08:00
# elif 1002001 < PROTOBUF_C_MIN_COMPILER_VERSION
2017-05-26 08:24:36 +08:00
# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
2017-05-26 07:55:02 +08:00
# endif
2017-05-26 23:50:28 +08:00
typedef struct _Nsjail__IdMap Nsjail__IdMap ;
2017-05-27 07:16:12 +08:00
typedef struct _Nsjail__MountPt Nsjail__MountPt ;
2017-05-27 08:24:41 +08:00
typedef struct _Nsjail__Exe Nsjail__Exe ;
2017-05-26 07:55:02 +08:00
typedef struct _Nsjail__NsJailConfig Nsjail__NsJailConfig ;
/* --- enums --- */
2017-05-26 10:37:50 +08:00
typedef enum _Nsjail__Mode {
NSJAIL__MODE__LISTEN = 0 ,
NSJAIL__MODE__ONCE = 1 ,
NSJAIL__MODE__RERUN = 2 ,
NSJAIL__MODE__EXECVE = 3 PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE ( NSJAIL__MODE )
} Nsjail__Mode ;
2017-05-26 20:08:09 +08:00
typedef enum _Nsjail__LogLevel {
NSJAIL__LOG_LEVEL__DEBUG = 0 ,
NSJAIL__LOG_LEVEL__INFO = 1 ,
NSJAIL__LOG_LEVEL__WARNING = 2 ,
NSJAIL__LOG_LEVEL__ERROR = 3 ,
NSJAIL__LOG_LEVEL__FATAL = 4 PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE ( NSJAIL__LOG_LEVEL )
} Nsjail__LogLevel ;
2017-05-26 10:37:50 +08:00
2017-05-26 07:55:02 +08:00
/* --- messages --- */
2017-05-26 23:50:28 +08:00
struct _Nsjail__IdMap {
ProtobufCMessage base ;
2017-05-27 06:09:08 +08:00
char * inside_id ;
char * outside_id ;
2017-05-26 23:50:28 +08:00
uint32_t count ;
2017-05-27 06:33:25 +08:00
protobuf_c_boolean use_newidmap ;
2017-05-26 23:50:28 +08:00
} ;
2017-05-27 06:16:28 +08:00
extern char nsjail__id_map__inside_id__default_value [ ] ;
extern char nsjail__id_map__outside_id__default_value [ ] ;
2017-05-26 23:50:28 +08:00
# define NSJAIL__ID_MAP__INIT \
{ PROTOBUF_C_MESSAGE_INIT ( & nsjail__id_map__descriptor ) \
2017-05-27 06:33:25 +08:00
, nsjail__id_map__inside_id__default_value , nsjail__id_map__outside_id__default_value , 1u , 0 }
2017-05-26 23:50:28 +08:00
2017-05-27 07:16:12 +08:00
struct _Nsjail__MountPt {
ProtobufCMessage base ;
char * src ;
char * dst ;
char * fstype ;
char * options ;
protobuf_c_boolean is_bind ;
protobuf_c_boolean is_ro ;
protobuf_c_boolean has_is_dir ;
protobuf_c_boolean is_dir ;
} ;
extern char nsjail__mount_pt__options__default_value [ ] ;
# define NSJAIL__MOUNT_PT__INIT \
{ PROTOBUF_C_MESSAGE_INIT ( & nsjail__mount_pt__descriptor ) \
, NULL , NULL , NULL , nsjail__mount_pt__options__default_value , 0 , 0 , 0 , 0 }
2017-05-27 08:24:41 +08:00
struct _Nsjail__Exe {
ProtobufCMessage base ;
char * path ;
size_t n_arg ;
char * * arg ;
} ;
# define NSJAIL__EXE__INIT \
{ PROTOBUF_C_MESSAGE_INIT ( & nsjail__exe__descriptor ) \
, NULL , 0 , NULL }
2017-05-26 08:24:36 +08:00
struct _Nsjail__NsJailConfig {
ProtobufCMessage base ;
2017-05-26 10:37:50 +08:00
Nsjail__Mode mode ;
2017-05-27 06:09:08 +08:00
char * chroot_dir ;
2017-05-26 11:01:22 +08:00
protobuf_c_boolean is_root_rw ;
2017-05-27 06:09:08 +08:00
char * hostname ;
char * cwd ;
2017-05-26 11:01:22 +08:00
uint32_t port ;
2017-05-27 06:09:08 +08:00
char * bindhost ;
2017-05-26 11:01:22 +08:00
uint32_t max_conns_per_ip ;
2017-05-26 11:12:01 +08:00
uint32_t time_limit ;
protobuf_c_boolean daemon ;
2017-05-27 06:09:08 +08:00
char * log_file ;
2017-05-26 21:22:59 +08:00
protobuf_c_boolean has_log_level ;
2017-05-26 20:08:09 +08:00
Nsjail__LogLevel log_level ;
protobuf_c_boolean keep_env ;
protobuf_c_boolean silent ;
protobuf_c_boolean skip_setsid ;
size_t n_pass_fd ;
int32_t * pass_fd ;
protobuf_c_boolean pivot_root_only ;
protobuf_c_boolean disable_no_new_privs ;
uint64_t rlimit_as ;
uint64_t rlimit_core ;
uint64_t rlimit_cpu ;
uint64_t rlimit_fsize ;
uint64_t rlimit_nofile ;
protobuf_c_boolean has_rlimit_nproc ;
uint64_t rlimit_nproc ;
protobuf_c_boolean has_rlimit_stack ;
uint64_t rlimit_stack ;
2017-05-26 23:50:28 +08:00
protobuf_c_boolean persona_addr_compat_layout ;
protobuf_c_boolean persona_mmap_page_zero ;
protobuf_c_boolean persona_read_implies_exec ;
protobuf_c_boolean persona_addr_limit_3gb ;
protobuf_c_boolean persona_addr_no_randomize ;
protobuf_c_boolean clone_newnet ;
protobuf_c_boolean clone_newuser ;
protobuf_c_boolean clone_newns ;
protobuf_c_boolean clone_newpid ;
protobuf_c_boolean clone_newipc ;
protobuf_c_boolean clone_newuts ;
protobuf_c_boolean clone_newcgroup ;
2017-05-27 05:26:07 +08:00
size_t n_uidmap ;
Nsjail__IdMap * * uidmap ;
size_t n_gidmap ;
Nsjail__IdMap * * gidmap ;
2017-05-27 07:16:12 +08:00
size_t n_mount ;
Nsjail__MountPt * * mount ;
2017-05-27 07:35:00 +08:00
protobuf_c_boolean mount_proc ;
char * seccomp_policy_file ;
char * seccomp_string ;
2017-05-27 08:09:21 +08:00
uint64_t cgroup_mem_max ;
char * cgroup_mem_mount ;
char * cgroup_mem_parent ;
uint64_t cgroup_pids_max ;
char * cgroup_pids_mount ;
char * cgroup_pids_parent ;
protobuf_c_boolean iface_no_lo ;
char * macvlan_iface ;
char * macvlan_vs_ip ;
char * macvlan_vs_nm ;
char * macvlan_vs_gw ;
2017-05-27 08:24:41 +08:00
Nsjail__Exe * exec_bin ;
2017-05-26 07:55:02 +08:00
} ;
2017-05-27 06:09:08 +08:00
extern char nsjail__ns_jail_config__hostname__default_value [ ] ;
extern char nsjail__ns_jail_config__cwd__default_value [ ] ;
extern char nsjail__ns_jail_config__bindhost__default_value [ ] ;
2017-05-27 08:09:21 +08:00
extern char nsjail__ns_jail_config__cgroup_mem_mount__default_value [ ] ;
extern char nsjail__ns_jail_config__cgroup_mem_parent__default_value [ ] ;
extern char nsjail__ns_jail_config__cgroup_pids_mount__default_value [ ] ;
extern char nsjail__ns_jail_config__cgroup_pids_parent__default_value [ ] ;
extern char nsjail__ns_jail_config__macvlan_vs_ip__default_value [ ] ;
extern char nsjail__ns_jail_config__macvlan_vs_nm__default_value [ ] ;
extern char nsjail__ns_jail_config__macvlan_vs_gw__default_value [ ] ;
2017-05-26 07:55:02 +08:00
# define NSJAIL__NS_JAIL_CONFIG__INIT \
{ PROTOBUF_C_MESSAGE_INIT ( & nsjail__ns_jail_config__descriptor ) \
2017-05-27 08:24:41 +08:00
, NSJAIL__MODE__ONCE , NULL , 0 , nsjail__ns_jail_config__hostname__default_value , nsjail__ns_jail_config__cwd__default_value , 0u , nsjail__ns_jail_config__bindhost__default_value , 0u , 600u , 0 , NULL , 0 , 0 , 0 , 0 , 0 , 0 , NULL , 0 , 0 , 512ull , 0ull , 600ull , 1ull , 32ull , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 1 , 1 , 1 , 1 , 1 , 1 , 0 , 0 , NULL , 0 , NULL , 0 , NULL , 1 , NULL , NULL , 0ull , nsjail__ns_jail_config__cgroup_mem_mount__default_value , nsjail__ns_jail_config__cgroup_mem_parent__default_value , 0ull , nsjail__ns_jail_config__cgroup_pids_mount__default_value , nsjail__ns_jail_config__cgroup_pids_parent__default_value , 0 , NULL , nsjail__ns_jail_config__macvlan_vs_ip__default_value , nsjail__ns_jail_config__macvlan_vs_nm__default_value , nsjail__ns_jail_config__macvlan_vs_gw__default_value , NULL }
2017-05-26 07:55:02 +08:00
2017-05-26 23:50:28 +08:00
/* Nsjail__IdMap methods */
void nsjail__id_map__init ( Nsjail__IdMap * message ) ;
size_t nsjail__id_map__get_packed_size ( const Nsjail__IdMap * message ) ;
size_t nsjail__id_map__pack ( const Nsjail__IdMap * message , uint8_t * out ) ;
size_t nsjail__id_map__pack_to_buffer ( const Nsjail__IdMap * message , ProtobufCBuffer * buffer ) ;
Nsjail__IdMap * nsjail__id_map__unpack
( ProtobufCAllocator * allocator , size_t len , const uint8_t * data ) ;
void nsjail__id_map__free_unpacked ( Nsjail__IdMap * message , ProtobufCAllocator * allocator ) ;
2017-05-27 07:16:12 +08:00
/* Nsjail__MountPt methods */
void nsjail__mount_pt__init ( Nsjail__MountPt * message ) ;
size_t nsjail__mount_pt__get_packed_size ( const Nsjail__MountPt * message ) ;
size_t nsjail__mount_pt__pack ( const Nsjail__MountPt * message , uint8_t * out ) ;
size_t nsjail__mount_pt__pack_to_buffer ( const Nsjail__MountPt * message , ProtobufCBuffer * buffer ) ;
Nsjail__MountPt * nsjail__mount_pt__unpack
( ProtobufCAllocator * allocator , size_t len , const uint8_t * data ) ;
void nsjail__mount_pt__free_unpacked ( Nsjail__MountPt * message , ProtobufCAllocator * allocator ) ;
2017-05-27 08:24:41 +08:00
/* Nsjail__Exe methods */
void nsjail__exe__init ( Nsjail__Exe * message ) ;
size_t nsjail__exe__get_packed_size ( const Nsjail__Exe * message ) ;
size_t nsjail__exe__pack ( const Nsjail__Exe * message , uint8_t * out ) ;
size_t nsjail__exe__pack_to_buffer ( const Nsjail__Exe * message , ProtobufCBuffer * buffer ) ;
Nsjail__Exe * nsjail__exe__unpack ( ProtobufCAllocator * allocator , size_t len , const uint8_t * data ) ;
void nsjail__exe__free_unpacked ( Nsjail__Exe * message , ProtobufCAllocator * allocator ) ;
2017-05-26 07:55:02 +08:00
/* Nsjail__NsJailConfig methods */
2017-05-26 08:24:36 +08:00
void nsjail__ns_jail_config__init ( Nsjail__NsJailConfig * message ) ;
size_t nsjail__ns_jail_config__get_packed_size ( const Nsjail__NsJailConfig * message ) ;
size_t nsjail__ns_jail_config__pack ( const Nsjail__NsJailConfig * message , uint8_t * out ) ;
2017-05-26 07:55:02 +08:00
size_t nsjail__ns_jail_config__pack_to_buffer
2017-05-26 08:24:36 +08:00
( const Nsjail__NsJailConfig * message , ProtobufCBuffer * buffer ) ;
Nsjail__NsJailConfig * nsjail__ns_jail_config__unpack
( ProtobufCAllocator * allocator , size_t len , const uint8_t * data ) ;
void nsjail__ns_jail_config__free_unpacked
( Nsjail__NsJailConfig * message , ProtobufCAllocator * allocator ) ;
2017-05-26 07:55:02 +08:00
/* --- per-message closures --- */
2017-05-26 23:50:28 +08:00
typedef void ( * Nsjail__IdMap_Closure )
( const Nsjail__IdMap * message , void * closure_data ) ;
2017-05-27 07:16:12 +08:00
typedef void ( * Nsjail__MountPt_Closure )
( const Nsjail__MountPt * message , void * closure_data ) ;
2017-05-27 08:24:41 +08:00
typedef void ( * Nsjail__Exe_Closure )
( const Nsjail__Exe * message , void * closure_data ) ;
2017-05-26 07:55:02 +08:00
typedef void ( * Nsjail__NsJailConfig_Closure )
2017-05-26 08:24:36 +08:00
( const Nsjail__NsJailConfig * message , void * closure_data ) ;
2017-05-26 07:55:02 +08:00
/* --- services --- */
/* --- descriptors --- */
2017-05-26 10:37:50 +08:00
extern const ProtobufCEnumDescriptor nsjail__mode__descriptor ;
2017-05-26 20:08:09 +08:00
extern const ProtobufCEnumDescriptor nsjail__log_level__descriptor ;
2017-05-26 23:50:28 +08:00
extern const ProtobufCMessageDescriptor nsjail__id_map__descriptor ;
2017-05-27 07:16:12 +08:00
extern const ProtobufCMessageDescriptor nsjail__mount_pt__descriptor ;
2017-05-27 08:24:41 +08:00
extern const ProtobufCMessageDescriptor nsjail__exe__descriptor ;
2017-05-26 07:55:02 +08:00
extern const ProtobufCMessageDescriptor nsjail__ns_jail_config__descriptor ;
PROTOBUF_C__END_DECLS
2017-05-26 08:24:36 +08:00
# endif /* PROTOBUF_C_config_2eproto__INCLUDED */