|
static int | _command_ctx_free (command_file_ctx_t *cc) |
|
static size_t | command_allow_unresolved (command_result_t *result, command_file_ctx_t *cc, UNUSED char *data, UNUSED size_t data_used, char *in, size_t inlen) |
| Determine if unresolved attributes are allowed. More...
|
|
static size_t | command_calc (command_result_t *result, command_file_ctx_t *cc, char *data, UNUSED size_t data_used, char *in, size_t inlen) |
| Perform calculations. More...
|
|
static size_t | command_calc_nary (command_result_t *result, command_file_ctx_t *cc, char *data, UNUSED size_t data_used, char *in, size_t inlen) |
| Perform calculations on multi-valued ops. More...
|
|
static size_t | command_cd (command_result_t *result, command_file_ctx_t *cc, char *data, UNUSED size_t data_used, char *in, size_t inlen) |
| Change the working directory. More...
|
|
static size_t | command_clear (command_result_t *result, UNUSED command_file_ctx_t *cc, char *data, size_t UNUSED data_used, UNUSED char *in, UNUSED size_t inlen) |
|
static size_t | command_comment (UNUSED command_result_t *result, UNUSED command_file_ctx_t *cc, UNUSED char *data, UNUSED size_t data_used, UNUSED char *in, UNUSED size_t inlen) |
| Placeholder function for comments. More...
|
|
static size_t | command_condition_normalise (command_result_t *result, command_file_ctx_t *cc, char *data, UNUSED size_t data_used, char *in, size_t inlen) |
| Parse and reprint a condition. More...
|
|
static size_t | command_count (command_result_t *result, command_file_ctx_t *cc, char *data, UNUSED size_t data_used, UNUSED char *in, UNUSED size_t inlen) |
|
static command_file_ctx_t * | command_ctx_alloc (TALLOC_CTX *ctx, command_config_t const *config, char const *path, char const *filename) |
|
static void | command_ctx_reset (command_file_ctx_t *cc, TALLOC_CTX *ctx) |
|
static size_t | command_decode_dns_label (command_result_t *result, command_file_ctx_t *cc, char *data, UNUSED size_t data_used, char *in, size_t inlen) |
|
static size_t | command_decode_pair (command_result_t *result, command_file_ctx_t *cc, char *data, size_t data_used, char *in, size_t inlen) |
|
static size_t | command_decode_proto (command_result_t *result, command_file_ctx_t *cc, char *data, size_t data_used, char *in, size_t inlen) |
|
static size_t | command_dictionary_attribute_parse (command_result_t *result, command_file_ctx_t *cc, char *data, UNUSED size_t data_used, char *in, UNUSED size_t inlen) |
| Parse a dictionary attribute, writing "ok" to the data buffer is everything was ok. More...
|
|
static size_t | command_dictionary_dump (command_result_t *result, command_file_ctx_t *cc, UNUSED char *data, size_t data_used, UNUSED char *in, UNUSED size_t inlen) |
| Print the currently loaded dictionary. More...
|
|
static size_t | command_encode_dns_label (command_result_t *result, command_file_ctx_t *cc, char *data, UNUSED size_t data_used, char *in, UNUSED size_t inlen) |
|
static size_t | command_encode_pair (command_result_t *result, command_file_ctx_t *cc, char *data, UNUSED size_t data_used, char *in, size_t inlen) |
|
static size_t | command_encode_proto (command_result_t *result, command_file_ctx_t *cc, char *data, UNUSED size_t data_used, char *in, size_t inlen) |
|
static size_t | command_encode_raw (command_result_t *result, command_file_ctx_t *cc, char *data, UNUSED size_t data_used, char *in, UNUSED size_t inlen) |
| Encode a RADIUS attribute writing the result to the data buffer as space separated hexits. More...
|
|
static size_t | command_eof (UNUSED command_result_t *result, UNUSED command_file_ctx_t *cc, UNUSED char *data, UNUSED size_t data_used, UNUSED char *in, UNUSED size_t inlen) |
| Command eof. More...
|
|
static size_t | command_exit (command_result_t *result, UNUSED command_file_ctx_t *cc, UNUSED char *data, UNUSED size_t data_used, char *in, UNUSED size_t inlen) |
| Exit gracefully with the specified code. More...
|
|
static int | command_func (UNUSED FILE *fp, UNUSED FILE *fp_err, UNUSED void *ctx, UNUSED fr_cmd_info_t const *info) |
|
static size_t | command_fuzzer_out (command_result_t *result, command_file_ctx_t *cc, UNUSED char *data, UNUSED size_t data_used, char *in, UNUSED size_t inlen) |
| Enable fuzzer output. More...
|
|
static size_t | command_include (command_result_t *result, command_file_ctx_t *cc, UNUSED char *data, UNUSED size_t data_used, char *in, UNUSED size_t inlen) |
| Execute another test file. More...
|
|
static size_t | command_load_dictionary (command_result_t *result, command_file_ctx_t *cc, UNUSED char *data, UNUSED size_t data_used, char *in, UNUSED size_t inlen) |
|
static size_t | command_match (command_result_t *result, command_file_ctx_t *cc, char *data, size_t data_used, char *in, size_t inlen) |
| Compare the data buffer to an expected value. More...
|
|
static size_t | command_match_regex (command_result_t *result, command_file_ctx_t *cc, char *data, size_t data_used, char *in, size_t inlen) |
| Compare the data buffer against an expected expression. More...
|
|
static size_t | command_max_buffer_size (command_result_t *result, command_file_ctx_t *cc, char *data, UNUSED size_t data_used, char *in, UNUSED size_t inlen) |
| Artificially limit the maximum packet size. More...
|
|
static size_t | command_migrate (command_result_t *result, command_file_ctx_t *cc, UNUSED char *data, UNUSED size_t data_used, char *in, UNUSED size_t inlen) |
| Set or clear migration flags. More...
|
|
static size_t | command_need_feature (command_result_t *result, command_file_ctx_t *cc, UNUSED char *data, UNUSED size_t data_used, char *in, UNUSED size_t inlen) |
| Skip the test file if we're missing a particular feature. More...
|
|
static size_t | command_no (command_result_t *result, command_file_ctx_t *cc, char *data, size_t data_used, char *in, size_t inlen) |
| Negate the result of a match command or any command which returns "OK". More...
|
|
static size_t | command_pair (command_result_t *result, command_file_ctx_t *cc, char *data, UNUSED size_t data_used, char *in, size_t inlen) |
| Parse an print an attribute pair or pair list. More...
|
|
static void | command_print (void) |
|
static size_t | command_proto (command_result_t *result, command_file_ctx_t *cc, UNUSED char *data, UNUSED size_t data_used, char *in, UNUSED size_t inlen) |
| Dynamically load a protocol library. More...
|
|
static size_t | command_proto_dictionary (command_result_t *result, command_file_ctx_t *cc, UNUSED char *data, UNUSED size_t data_used, char *in, UNUSED size_t inlen) |
|
static size_t | command_proto_dictionary_root (command_result_t *result, command_file_ctx_t *cc, UNUSED char *data, UNUSED size_t data_used, char *in, UNUSED size_t inlen) |
|
static size_t | command_radmin_add (command_result_t *result, command_file_ctx_t *cc, char *data, size_t UNUSED data_used, char *in, UNUSED size_t inlen) |
|
static size_t | command_radmin_tab (command_result_t *result, command_file_ctx_t *cc, char *data, UNUSED size_t data_used, char *in, UNUSED size_t inlen) |
|
static size_t | command_read_file (command_result_t *result, command_file_ctx_t *cc, char *data, UNUSED size_t data_used, char *in, UNUSED size_t inlen) |
| Parse a list of pairs. More...
|
|
static size_t | command_returned (command_result_t *result, command_file_ctx_t *cc, char *data, UNUSED size_t data_used, UNUSED char *in, UNUSED size_t inlen) |
|
static ssize_t | command_tmpl_rule_allow_foreign (UNUSED TALLOC_CTX *ctx, tmpl_rules_t *rules, fr_sbuff_t *value) |
|
static ssize_t | command_tmpl_rule_allow_unknown (UNUSED TALLOC_CTX *ctx, tmpl_rules_t *rules, fr_sbuff_t *value) |
|
static ssize_t | command_tmpl_rule_allow_unresolved (UNUSED TALLOC_CTX *ctx, tmpl_rules_t *rules, fr_sbuff_t *value) |
|
static ssize_t | command_tmpl_rule_attr_parent (UNUSED TALLOC_CTX *ctx, tmpl_rules_t *rules, fr_sbuff_t *value) |
|
static ssize_t | command_tmpl_rule_list_def (UNUSED TALLOC_CTX *ctx, tmpl_rules_t *rules, fr_sbuff_t *value) |
|
static ssize_t | command_tmpl_rule_request_def (TALLOC_CTX *ctx, tmpl_rules_t *rules, fr_sbuff_t *value) |
|
static size_t | command_tmpl_rules (command_result_t *result, command_file_ctx_t *cc, UNUSED char *data, UNUSED size_t data_used, char *in, size_t inlen) |
|
static size_t | command_touch (command_result_t *result, UNUSED command_file_ctx_t *cc, UNUSED char *data, UNUSED size_t data_used, char *in, UNUSED size_t inlen) |
| Touch a file to indicate a test completed. More...
|
|
static size_t | command_value_box_normalise (command_result_t *result, command_file_ctx_t *cc, char *data, UNUSED size_t data_used, char *in, UNUSED size_t inlen) |
|
static int | command_walk (UNUSED void *ctx, fr_cmd_walk_info_t *info) |
|
static size_t | command_write (command_result_t *result, command_file_ctx_t *cc, char *data, size_t data_used, char *in, size_t inlen) |
|
static size_t | command_xlat_argv (command_result_t *result, command_file_ctx_t *cc, char *data, UNUSED size_t data_used, char *in, UNUSED size_t inlen) |
| Parse an reprint and xlat argv expansion. More...
|
|
static size_t | command_xlat_expr (command_result_t *result, command_file_ctx_t *cc, char *data, UNUSED size_t data_used, char *in, UNUSED size_t inlen) |
| Parse and reprint an xlat expression expansion. More...
|
|
static size_t | command_xlat_normalise (command_result_t *result, command_file_ctx_t *cc, char *data, UNUSED size_t data_used, char *in, UNUSED size_t inlen) |
| Parse an reprint and xlat expansion. More...
|
|
static size_t | command_xlat_purify (command_result_t *result, command_file_ctx_t *cc, char *data, UNUSED size_t data_used, char *in, UNUSED size_t inlen) |
| Parse, purify, and reprint an xlat expression expansion. More...
|
|
static void | commands_print (void) |
|
static int | decode_attr (char *buffer, char **endptr) |
|
static int | decode_vendor (char *buffer, char **endptr) |
|
static fr_dict_t * | dictionary_current (command_file_ctx_t *cc) |
|
static int | dictionary_load_common (command_result_t *result, command_file_ctx_t *cc, char const *in, char const *default_subdir) |
| Common dictionary load function. More...
|
|
static int | dump_fuzzer_data (int fd_dir, char const *text, uint8_t const *data, size_t data_len) |
|
static ssize_t | encode_data (char *p, uint8_t *output, size_t outlen) |
|
static ssize_t | encode_data_string (char *buffer, uint8_t *output, size_t outlen) |
|
static ssize_t | encode_data_tlv (char *buffer, char **endptr, uint8_t *output, size_t outlen) |
|
static ssize_t | encode_evs (char *buffer, uint8_t *output, size_t outlen) |
|
static ssize_t | encode_extended (char *buffer, uint8_t *output, size_t outlen) |
|
static ssize_t | encode_long_extended (char *buffer, uint8_t *output, size_t outlen) |
|
static ssize_t | encode_rfc (char *buffer, uint8_t *output, size_t outlen) |
|
static ssize_t | encode_tlv (char *buffer, uint8_t *output, size_t outlen) |
|
static ssize_t | encode_vsa (char *buffer, uint8_t *output, size_t outlen) |
|
static void | features_print (CONF_SECTION *features) |
|
static size_t | hex_print (char *out, size_t outlen, uint8_t const *in, size_t inlen) |
| Print hex string to buffer. More...
|
|
static ssize_t | hex_to_bin (uint8_t *out, size_t outlen, char *in, size_t inlen) |
|
static int | line_ranges_parse (TALLOC_CTX *ctx, fr_dlist_head_t *out, fr_sbuff_t *in) |
|
static ssize_t | load_proto_library (char const *proto_name) |
|
static ssize_t | load_test_point_by_command (void **symbol, char *command, char const *dflt_symbol) |
|
int | main (int argc, char *argv[]) |
|
static void | mismatch_print (command_file_ctx_t *cc, char const *command, char *expected, size_t expected_len, char *got, size_t got_len, bool print_diff) |
|
static size_t | parse_typed_value (command_result_t *result, fr_value_box_t *box, char const **out, char const *in, size_t inlen) |
|
static int | poisoned_buffer_allocate (TALLOC_CTX *ctx, uint8_t **buff, size_t size) |
| Allocate a special buffer with poisoned memory regions at the start and end. More...
|
|
static int | process_file (bool *exit_now, TALLOC_CTX *ctx, command_config_t const *config, const char *root_dir, char const *filename, fr_dlist_head_t *lines) |
|
size_t | process_line (command_result_t *result, command_file_ctx_t *cc, char *data, size_t data_used, char *in, size_t inlen) |
|
size_t | process_line (command_result_t *result, command_file_ctx_t *cc, char *data, size_t data_used, char *in, UNUSED size_t inlen) |
|
static size_t | strerror_concat (char *out, size_t outlen) |
| Concatenate error stack. More...
|
|
static void | unload_proto_library (void) |
|
static void | usage (char const *name) |
|
static xlat_action_t | xlat_test (UNUSED TALLOC_CTX *ctx, UNUSED fr_dcursor_t *out, UNUSED xlat_ctx_t const *xctx, UNUSED request_t *request, UNUSED fr_value_box_list_t *in) |
|