Protocol encoder/decoder support functions.  
More...
#include <freeradius-devel/util/pair.h>
#include <freeradius-devel/util/print.h>
#include <freeradius-devel/util/proto.h>
Go to the source code of this file.
|  | 
| void | fr_proto_da_stack_build (fr_da_stack_t *stack, fr_dict_attr_t const *da) | 
|  | Build a complete DA stack from the da back to the root. 
 | 
|  | 
| void | fr_proto_da_stack_build_partial (fr_da_stack_t *stack, fr_dict_attr_t const *parent, fr_dict_attr_t const *da) | 
|  | Complete the DA stack for a child attribute. 
 | 
|  | 
| void | fr_proto_da_stack_print (char const *file, int line, char const *func, fr_da_stack_t *da_stack, unsigned int depth) | 
|  | 
| void * | fr_proto_next_encodable (fr_dcursor_t *cursor, void *current, void *uctx) | 
|  | Implements the default iterator to encode pairs belonging to a specific dictionary that are not internal. 
 | 
|  | 
| void | fr_proto_print (char const *file, int line, char const *fmt,...) | 
|  | 
| void | fr_proto_print_hex_data (char const *file, int line, uint8_t const *data, size_t data_len, char const *fmt,...) | 
|  | 
| void | fr_proto_print_hex_marker (char const *file, int line, uint8_t const *data, size_t data_len, ssize_t slen, char const *fmt,...) | 
|  | 
Protocol encoder/decoder support functions. 
- Copyright
- 2015 The FreeRADIUS server project 
Definition in file proto.c.
◆ fr_proto_da_stack_build()
Build a complete DA stack from the da back to the root. 
- Parameters
- 
  
    | [out] | stack | to populate. |  | [in] | da | to build the stack for. |  
 
Definition at line 118 of file proto.c.
 
 
◆ fr_proto_da_stack_build_partial()
Complete the DA stack for a child attribute. 
- Parameters
- 
  
    | [out] | stack | to populate. |  | [in] | parent | to populate from. |  | [in] | da | to populate to. |  
 
Definition at line 159 of file proto.c.
 
 
◆ fr_proto_da_stack_print()
      
        
          | void fr_proto_da_stack_print | ( | char const * | file, | 
        
          |  |  | int | line, | 
        
          |  |  | char const * | func, | 
        
          |  |  | fr_da_stack_t * | da_stack, | 
        
          |  |  | unsigned int | depth | 
        
          |  | ) |  |  | 
      
 
 
◆ fr_proto_next_encodable()
      
        
          | void * fr_proto_next_encodable | ( | fr_dcursor_t * | cursor, | 
        
          |  |  | void * | current, | 
        
          |  |  | void * | uctx | 
        
          |  | ) |  |  | 
      
 
Implements the default iterator to encode pairs belonging to a specific dictionary that are not internal. 
- Parameters
- 
  
    | [in] | cursor | to iterate over. |  | [in] | current | The fr_pair_t cursor->current. Will be advanced and checked to see if it matches the specified fr_dict_t. |  | [in] | uctx | The fr_dict_t to search for. |  
 
- Returns
- 
- Next matching fr_pair_t.
- NULL if not more matching fr_pair_ts could be found. 
 
Definition at line 100 of file proto.c.
 
 
◆ fr_proto_print()
      
        
          | void fr_proto_print | ( | char const * | file, | 
        
          |  |  | int | line, | 
        
          |  |  | char const * | fmt, | 
        
          |  |  |  | ... | 
        
          |  | ) |  |  | 
      
 
 
◆ fr_proto_print_hex_data()
      
        
          | void fr_proto_print_hex_data | ( | char const * | file, | 
        
          |  |  | int | line, | 
        
          |  |  | uint8_t const * | data, | 
        
          |  |  | size_t | data_len, | 
        
          |  |  | char const * | fmt, | 
        
          |  |  |  | ... | 
        
          |  | ) |  |  | 
      
 
 
◆ fr_proto_print_hex_marker()
      
        
          | void fr_proto_print_hex_marker | ( | char const * | file, | 
        
          |  |  | int | line, | 
        
          |  |  | uint8_t const * | data, | 
        
          |  |  | size_t | data_len, | 
        
          |  |  | ssize_t | slen, | 
        
          |  |  | char const * | fmt, | 
        
          |  |  |  | ... | 
        
          |  | ) |  |  |