#include <stddef.h>
#include <stdlib.h>
#include <stdio.h>
#include <stdint.h>
#include <string.h>
#include <netinet/in.h>
#include <netinet/ip6.h>
#include <utils.h>
#include <headers.h>
#include <expression.h>
Macros | |
#define | HDR_TEMPLATE(__name, __dtype, __type, __member) |
#define | HBH_FIELD(__name, __member, __dtype) HDR_TEMPLATE(__name, __dtype, struct ip6_hbh, __member) |
#define | RT0_FIELD(__name, __member, __dtype) HDR_TEMPLATE(__name, __dtype, struct ip6_rthdr0, __member) |
#define | RT_FIELD(__name, __member, __dtype) HDR_TEMPLATE(__name, __dtype, struct ip6_rthdr, __member) |
#define | FRAG_FIELD(__name, __member, __dtype) HDR_TEMPLATE(__name, __dtype, struct ip6_frag, __member) |
#define | DST_FIELD(__name, __member, __dtype) HDR_TEMPLATE(__name, __dtype, struct ip6_dest, __member) |
#define | MH_FIELD(__name, __member, __dtype) HDR_TEMPLATE(__name, __dtype, struct ip6_mh, __member) |
Functions | |
struct expr * | exthdr_expr_alloc (const struct location *loc, const struct exthdr_desc *desc, uint8_t type) |
void | exthdr_init_raw (struct expr *expr, uint8_t type, unsigned int offset, unsigned int len) |
Variables | |
const struct exthdr_desc | exthdr_hbh |
const struct exthdr_desc | exthdr_rt2 |
const struct exthdr_desc | exthdr_rt0 |
const struct exthdr_desc | exthdr_rt |
const struct exthdr_desc | exthdr_frag |
const struct exthdr_desc | exthdr_dst |
const struct exthdr_desc | exthdr_mh |
#define DST_FIELD | ( | __name, | |
__member, | |||
__dtype | |||
) | HDR_TEMPLATE(__name, __dtype, struct ip6_dest, __member) |
#define FRAG_FIELD | ( | __name, | |
__member, | |||
__dtype | |||
) | HDR_TEMPLATE(__name, __dtype, struct ip6_frag, __member) |
#define HBH_FIELD | ( | __name, | |
__member, | |||
__dtype | |||
) | HDR_TEMPLATE(__name, __dtype, struct ip6_hbh, __member) |
#define HDR_TEMPLATE | ( | __name, | |
__dtype, | |||
__type, | |||
__member | |||
) |
#define MH_FIELD | ( | __name, | |
__member, | |||
__dtype | |||
) | HDR_TEMPLATE(__name, __dtype, struct ip6_mh, __member) |
#define RT0_FIELD | ( | __name, | |
__member, | |||
__dtype | |||
) | HDR_TEMPLATE(__name, __dtype, struct ip6_rthdr0, __member) |
#define RT_FIELD | ( | __name, | |
__member, | |||
__dtype | |||
) | HDR_TEMPLATE(__name, __dtype, struct ip6_rthdr, __member) |
struct expr* exthdr_expr_alloc | ( | const struct location * | loc, |
const struct exthdr_desc * | desc, | ||
uint8_t | type | ||
) |
References BYTEORDER_BIG_ENDIAN, expr::desc, proto_hdr_template::dtype, expr_alloc(), expr::exthdr, proto_hdr_template::len, NULL, exthdr_desc::templates, expr::tmpl, and type.
const struct exthdr_desc exthdr_dst |
const struct exthdr_desc exthdr_frag |
const struct exthdr_desc exthdr_hbh |
const struct exthdr_desc exthdr_mh |
const struct exthdr_desc exthdr_rt |
const struct exthdr_desc exthdr_rt0 |
const struct exthdr_desc exthdr_rt2 |