26 #ifndef ROHC_COMMON_LIST_H    27 #define ROHC_COMMON_LIST_H    36 #define ROHC_LIST_MAX_ITEM  16U    37 #if ROHC_LIST_MAX_ITEM <= 7    38 #  error "translation table must be larger enough for indexes stored on 3 bits"    54 #define ROHC_LIST_GEN_ID_MAX   0xffU    55 #define ROHC_LIST_GEN_ID_ANON  (ROHC_LIST_GEN_ID_MAX + 1)    56 #define ROHC_LIST_GEN_ID_NONE  (ROHC_LIST_GEN_ID_MAX + 2)    67 #define ROHC_LIST_ITEMS_MAX  15U    96 #define ROHC_LIST_ITEM_DATA_MAX 2048U   107                                     const uint8_t ext_type,
   108                                     const uint8_t *
const ext_data,
   109                                     const size_t ext_len)
   110         __attribute__((warn_unused_result, nonnull(1, 3)));
   119         __attribute__((nonnull(1)));
   123         __attribute__((warn_unused_result, nonnull(1, 2), pure));
   127         __attribute__((warn_unused_result, nonnull(1, 2), pure));
   130         __attribute__((nonnull(1)));
   134                                      const uint8_t item_type,
   135                                      const uint8_t *
const item_data,
   136                                      const size_t item_len)
   137         __attribute__((warn_unused_result, nonnull(2, 4)));
 Definition: ip_numbers.h:62
 
Definition: ip_numbers.h:70
 
bool known
Definition: rohc_list.h:86
 
void rohc_list_reset(struct rohc_list *const list)
Reset the state of the given compressed list. 
Definition: rohc_list.c:45
 
Definition: rohc_list.h:46
 
unsigned int id
Definition: rohc_list.h:65
 
bool rohc_list_supersede(const struct rohc_list *const large, const struct rohc_list *const small)
Does the first list contains the second list? 
Definition: rohc_list.c:87
 
size_t items_nr
Definition: rohc_list.h:71
 
struct rohc_list_item * items[ROHC_LIST_ITEMS_MAX]
Definition: rohc_list.h:69
 
Definition: rohc_list.h:48
 
ext_header_version type
Definition: rohc_list.h:83
 
bool rohc_list_equal(const struct rohc_list *const list1, const struct rohc_list *const list2)
Are the two given lists equal? 
Definition: rohc_list.c:67
 
bool(* rohc_list_item_cmp)(const struct rohc_list_item *const item, const uint8_t ext_type, const uint8_t *const ext_data, const size_t ext_len)
Definition: rohc_list.h:106
 
int rohc_list_item_update_if_changed(rohc_list_item_cmp cmp_item, struct rohc_list_item *const list_item, const uint8_t item_type, const uint8_t *const item_data, const size_t item_len)
Update the content of the given compressed item if it changed. 
Definition: rohc_list.c:146
 
#define ROHC_LIST_ITEMS_MAX
Definition: rohc_list.h:67
 
Definition: ip_numbers.h:74
 
void rohc_list_item_reset(struct rohc_list_item *const list_item)
Reset the given list item. 
Definition: rohc_list.c:121
 
size_t counter
Definition: rohc_list.h:88
 
Definition: rohc_list.h:45
 
Definition: ip_numbers.h:52
 
#define ROHC_LIST_ITEM_DATA_MAX
The maximum length (in bytes) of item data. 
Definition: rohc_list.h:96
 
ext_header_version
Header version. 
Definition: rohc_list.h:43
 
size_t length
Definition: rohc_list.h:99
 
A list item. 
Definition: rohc_list.h:80
 
size_t counter
Definition: rohc_list.h:73
 
Define a list for compression. 
Definition: rohc_list.h:62
 
Definition: rohc_list.h:47
 
Defines the IPv4 protocol numbers.