17 #ifndef RCL__VALIDATE_ENCLAVE_NAME_H_
18 #define RCL__VALIDATE_ENCLAVE_NAME_H_
25 #include "rmw/validate_namespace.h"
26 #include "rmw/validate_node_name.h"
28 #include "rcl/macros.h"
30 #include "rcl/visibility_control.h"
33 #define RCL_ENCLAVE_NAME_VALID RMW_NAMESPACE_VALID
36 #define RCL_ENCLAVE_NAME_INVALID_IS_EMPTY_STRING RMW_NAMESPACE_INVALID_IS_EMPTY_STRING
39 #define RCL_ENCLAVE_NAME_INVALID_NOT_ABSOLUTE RMW_NAMESPACE_INVALID_NOT_ABSOLUTE
42 #define RCL_ENCLAVE_NAME_INVALID_ENDS_WITH_FORWARD_SLASH \
43 RMW_NAMESPACE_INVALID_ENDS_WITH_FORWARD_SLASH
46 #define RCL_ENCLAVE_NAME_INVALID_CONTAINS_UNALLOWED_CHARACTERS \
47 RMW_NAMESPACE_INVALID_CONTAINS_UNALLOWED_CHARACTERS
50 #define RCL_ENCLAVE_NAME_INVALID_CONTAINS_REPEATED_FORWARD_SLASH \
51 RMW_NAMESPACE_INVALID_CONTAINS_REPEATED_FORWARD_SLASH
54 #define RCL_ENCLAVE_NAME_INVALID_NAME_TOKEN_STARTS_WITH_NUMBER \
55 RMW_NAMESPACE_INVALID_NAME_TOKEN_STARTS_WITH_NUMBER
58 #define RCL_ENCLAVE_NAME_INVALID_TOO_LONG RMW_NAMESPACE_INVALID_TOO_LONG
61 #define RCL_ENCLAVE_NAME_MAX_LENGTH RMW_NODE_NAME_MAX_NAME_LENGTH
80 int * validation_result,
81 size_t * invalid_index);
100 const char * enclave,
101 size_t enclave_length,
102 int * validation_result,
103 size_t * invalid_index);
rmw_ret_t rcl_ret_t
The type that holds an rcl return code.
RCL_PUBLIC RCL_WARN_UNUSED rcl_ret_t rcl_validate_enclave_name_with_size(const char *enclave, size_t enclave_length, int *validation_result, size_t *invalid_index)
Determine if a given enclave name is valid.
RCL_PUBLIC RCL_WARN_UNUSED rcl_ret_t rcl_validate_enclave_name(const char *enclave, int *validation_result, size_t *invalid_index)
Determine if a given enclave name is valid.
RCL_PUBLIC RCL_WARN_UNUSED const char * rcl_enclave_name_validation_result_string(int validation_result)
Return a validation result description, or NULL if unknown or RCL_ENCLAVE_NAME_VALID.