|  | /* Automatically generated nanopb header */ | 
|  | /* Generated by nanopb-0.4.5 */ | 
|  |  | 
|  | #ifndef PB_SCHEMA_CONFIG_PB_H_INCLUDED | 
|  | #define PB_SCHEMA_CONFIG_PB_H_INCLUDED | 
|  | #include <pb.h> | 
|  |  | 
|  | #if PB_PROTO_HEADER_VERSION != 40 | 
|  | #error Regenerate this file with the current version of nanopb generator. | 
|  | #endif | 
|  |  | 
|  | /* Enum definitions */ | 
|  | typedef enum _schema_ConfigurationResponse_ErrorCode { | 
|  | schema_ConfigurationResponse_ErrorCode_NO_ERROR = 0, | 
|  | schema_ConfigurationResponse_ErrorCode_UNKNOWN = 2 | 
|  | } schema_ConfigurationResponse_ErrorCode; | 
|  |  | 
|  | /* Struct definitions */ | 
|  | /* Report success or failure of previous ConfigurationRequest */ | 
|  | typedef struct _schema_ConfigurationResponse { | 
|  | schema_ConfigurationResponse_ErrorCode error; | 
|  | pb_callback_t msg; | 
|  | uint64_t version; /* Version of the LSM */ | 
|  | uint32_t kernel_version; /* LINUX_VERSION_CODE */ | 
|  | } schema_ConfigurationResponse; | 
|  |  | 
|  | /* Collect information about running containers */ | 
|  | typedef struct _schema_ContainerCollectorConfig { | 
|  | bool enabled; | 
|  | } schema_ContainerCollectorConfig; | 
|  |  | 
|  | typedef struct _schema_ExecuteCollectorConfig { | 
|  | bool enabled; | 
|  | /* truncate argv/envp if cumulative length exceeds limit */ | 
|  | uint32_t argv_limit; | 
|  | uint32_t envp_limit; | 
|  | /* If specified, only report the named environment variables.  An | 
|  | empty envp_allowlist indicates that all environment variables | 
|  | should be reported up to a cumulative total of envp_limit bytes. */ | 
|  | pb_callback_t envp_allowlist; | 
|  | } schema_ExecuteCollectorConfig; | 
|  |  | 
|  | /* Collect information about executable memory mappings. */ | 
|  | typedef struct _schema_MemExecCollectorConfig { | 
|  | bool enabled; | 
|  | } schema_MemExecCollectorConfig; | 
|  |  | 
|  | /* Convey configuration information to Guest LSM */ | 
|  | typedef struct _schema_ConfigurationRequest { | 
|  | bool has_container_config; | 
|  | schema_ContainerCollectorConfig container_config; | 
|  | bool has_execute_config; | 
|  | schema_ExecuteCollectorConfig execute_config; | 
|  | bool has_memexec_config; | 
|  | schema_MemExecCollectorConfig memexec_config; | 
|  | } schema_ConfigurationRequest; | 
|  |  | 
|  |  | 
|  | /* Helper constants for enums */ | 
|  | #define _schema_ConfigurationResponse_ErrorCode_MIN schema_ConfigurationResponse_ErrorCode_NO_ERROR | 
|  | #define _schema_ConfigurationResponse_ErrorCode_MAX schema_ConfigurationResponse_ErrorCode_UNKNOWN | 
|  | #define _schema_ConfigurationResponse_ErrorCode_ARRAYSIZE ((schema_ConfigurationResponse_ErrorCode)(schema_ConfigurationResponse_ErrorCode_UNKNOWN+1)) | 
|  |  | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | extern "C" { | 
|  | #endif | 
|  |  | 
|  | /* Initializer values for message structs */ | 
|  | #define schema_ContainerCollectorConfig_init_default {0} | 
|  | #define schema_ExecuteCollectorConfig_init_default {0, 0, 0, {{NULL}, NULL}} | 
|  | #define schema_MemExecCollectorConfig_init_default {0} | 
|  | #define schema_ConfigurationRequest_init_default {false, schema_ContainerCollectorConfig_init_default, false, schema_ExecuteCollectorConfig_init_default, false, schema_MemExecCollectorConfig_init_default} | 
|  | #define schema_ConfigurationResponse_init_default {_schema_ConfigurationResponse_ErrorCode_MIN, {{NULL}, NULL}, 0, 0} | 
|  | #define schema_ContainerCollectorConfig_init_zero {0} | 
|  | #define schema_ExecuteCollectorConfig_init_zero  {0, 0, 0, {{NULL}, NULL}} | 
|  | #define schema_MemExecCollectorConfig_init_zero  {0} | 
|  | #define schema_ConfigurationRequest_init_zero    {false, schema_ContainerCollectorConfig_init_zero, false, schema_ExecuteCollectorConfig_init_zero, false, schema_MemExecCollectorConfig_init_zero} | 
|  | #define schema_ConfigurationResponse_init_zero   {_schema_ConfigurationResponse_ErrorCode_MIN, {{NULL}, NULL}, 0, 0} | 
|  |  | 
|  | /* Field tags (for use in manual encoding/decoding) */ | 
|  | #define schema_ConfigurationResponse_error_tag   1 | 
|  | #define schema_ConfigurationResponse_msg_tag     2 | 
|  | #define schema_ConfigurationResponse_version_tag 3 | 
|  | #define schema_ConfigurationResponse_kernel_version_tag 4 | 
|  | #define schema_ContainerCollectorConfig_enabled_tag 1 | 
|  | #define schema_ExecuteCollectorConfig_enabled_tag 1 | 
|  | #define schema_ExecuteCollectorConfig_argv_limit_tag 2 | 
|  | #define schema_ExecuteCollectorConfig_envp_limit_tag 3 | 
|  | #define schema_ExecuteCollectorConfig_envp_allowlist_tag 4 | 
|  | #define schema_MemExecCollectorConfig_enabled_tag 1 | 
|  | #define schema_ConfigurationRequest_container_config_tag 1 | 
|  | #define schema_ConfigurationRequest_execute_config_tag 2 | 
|  | #define schema_ConfigurationRequest_memexec_config_tag 3 | 
|  |  | 
|  | /* Struct field encoding specification for nanopb */ | 
|  | #define schema_ContainerCollectorConfig_FIELDLIST(X, a) \ | 
|  | X(a, STATIC,   SINGULAR, BOOL,     enabled,           1) | 
|  | #define schema_ContainerCollectorConfig_CALLBACK NULL | 
|  | #define schema_ContainerCollectorConfig_DEFAULT NULL | 
|  |  | 
|  | #define schema_ExecuteCollectorConfig_FIELDLIST(X, a) \ | 
|  | X(a, STATIC,   SINGULAR, BOOL,     enabled,           1) \ | 
|  | X(a, STATIC,   SINGULAR, UINT32,   argv_limit,        2) \ | 
|  | X(a, STATIC,   SINGULAR, UINT32,   envp_limit,        3) \ | 
|  | X(a, CALLBACK, REPEATED, STRING,   envp_allowlist,    4) | 
|  | #define schema_ExecuteCollectorConfig_CALLBACK pb_default_field_callback | 
|  | #define schema_ExecuteCollectorConfig_DEFAULT NULL | 
|  |  | 
|  | #define schema_MemExecCollectorConfig_FIELDLIST(X, a) \ | 
|  | X(a, STATIC,   SINGULAR, BOOL,     enabled,           1) | 
|  | #define schema_MemExecCollectorConfig_CALLBACK NULL | 
|  | #define schema_MemExecCollectorConfig_DEFAULT NULL | 
|  |  | 
|  | #define schema_ConfigurationRequest_FIELDLIST(X, a) \ | 
|  | X(a, STATIC,   OPTIONAL, MESSAGE,  container_config,   1) \ | 
|  | X(a, STATIC,   OPTIONAL, MESSAGE,  execute_config,    2) \ | 
|  | X(a, STATIC,   OPTIONAL, MESSAGE,  memexec_config,    3) | 
|  | #define schema_ConfigurationRequest_CALLBACK NULL | 
|  | #define schema_ConfigurationRequest_DEFAULT NULL | 
|  | #define schema_ConfigurationRequest_container_config_MSGTYPE schema_ContainerCollectorConfig | 
|  | #define schema_ConfigurationRequest_execute_config_MSGTYPE schema_ExecuteCollectorConfig | 
|  | #define schema_ConfigurationRequest_memexec_config_MSGTYPE schema_MemExecCollectorConfig | 
|  |  | 
|  | #define schema_ConfigurationResponse_FIELDLIST(X, a) \ | 
|  | X(a, STATIC,   SINGULAR, UENUM,    error,             1) \ | 
|  | X(a, CALLBACK, SINGULAR, STRING,   msg,               2) \ | 
|  | X(a, STATIC,   SINGULAR, UINT64,   version,           3) \ | 
|  | X(a, STATIC,   SINGULAR, UINT32,   kernel_version,    4) | 
|  | #define schema_ConfigurationResponse_CALLBACK pb_default_field_callback | 
|  | #define schema_ConfigurationResponse_DEFAULT NULL | 
|  |  | 
|  | extern const pb_msgdesc_t schema_ContainerCollectorConfig_msg; | 
|  | extern const pb_msgdesc_t schema_ExecuteCollectorConfig_msg; | 
|  | extern const pb_msgdesc_t schema_MemExecCollectorConfig_msg; | 
|  | extern const pb_msgdesc_t schema_ConfigurationRequest_msg; | 
|  | extern const pb_msgdesc_t schema_ConfigurationResponse_msg; | 
|  |  | 
|  | /* Defines for backwards compatibility with code written before nanopb-0.4.0 */ | 
|  | #define schema_ContainerCollectorConfig_fields &schema_ContainerCollectorConfig_msg | 
|  | #define schema_ExecuteCollectorConfig_fields &schema_ExecuteCollectorConfig_msg | 
|  | #define schema_MemExecCollectorConfig_fields &schema_MemExecCollectorConfig_msg | 
|  | #define schema_ConfigurationRequest_fields &schema_ConfigurationRequest_msg | 
|  | #define schema_ConfigurationResponse_fields &schema_ConfigurationResponse_msg | 
|  |  | 
|  | /* Maximum encoded size of messages (where known) */ | 
|  | /* schema_ExecuteCollectorConfig_size depends on runtime parameters */ | 
|  | /* schema_ConfigurationRequest_size depends on runtime parameters */ | 
|  | /* schema_ConfigurationResponse_size depends on runtime parameters */ | 
|  | #define schema_ContainerCollectorConfig_size     2 | 
|  | #define schema_MemExecCollectorConfig_size       2 | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | } /* extern "C" */ | 
|  | #endif | 
|  |  | 
|  | #endif |