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-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 ;
} ;
# define NSJAIL__ID_MAP__INIT \
{ PROTOBUF_C_MESSAGE_INIT ( & nsjail__id_map__descriptor ) \
2017-05-27 06:09:08 +08:00
, NULL , NULL , 1u }
2017-05-26 23:50:28 +08:00
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-26 23:50:28 +08:00
size_t n_newuidmap ;
Nsjail__IdMap * * newuidmap ;
size_t n_newgidmap ;
Nsjail__IdMap * * newgidmap ;
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-26 07:55:02 +08:00
# define NSJAIL__NS_JAIL_CONFIG__INIT \
{ PROTOBUF_C_MESSAGE_INIT ( & nsjail__ns_jail_config__descriptor ) \
2017-05-27 06:09:08 +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 , 0 , 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-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-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-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 */