bpf_ctx_t
bpf_jit_generate(bpf_ctx_t *bc, void *code, size_t size)
bpfjit_func_t (*generate_code)(const bpf_ctx_t *,
typedef uint32_t (*bpf_copfunc_t)(const bpf_ctx_t *, bpf_args_t *, uint32_t);
bpf_ctx_t *bpf_create(void);
void bpf_destroy(bpf_ctx_t *);
int bpf_set_cop(bpf_ctx_t *, const bpf_copfunc_t *, size_t);
int bpf_set_extmem(bpf_ctx_t *, size_t, bpf_memword_init_t);
u_int bpf_filter_ext(const bpf_ctx_t *, const struct bpf_insn *, bpf_args_t *);
int bpf_validate_ext(const bpf_ctx_t *, const struct bpf_insn *, int);
bpfjit_func_t bpf_jit_generate(bpf_ctx_t *, void *, size_t);
bpf_filter_ext(const bpf_ctx_t *bc, const struct bpf_insn *pc, bpf_args_t *args)
bpf_validate_ext(const bpf_ctx_t *bc, const struct bpf_insn *f, int signed_len)
bpf_ctx_t *
return kmem_zalloc(sizeof(bpf_ctx_t), KM_SLEEP);
bpf_destroy(bpf_ctx_t *bc)
kmem_free(bc, sizeof(bpf_ctx_t));
bpf_set_cop(bpf_ctx_t *bc, const bpf_copfunc_t *funcs, size_t n)
bpf_set_extmem(bpf_ctx_t *bc, size_t nwords, bpf_memword_init_t preinited)
optimize_pass1(const bpf_ctx_t *bc, const struct bpf_insn *insns,
bpf_ctx_t *ctx;
optimize_pass2(const bpf_ctx_t *bc, const struct bpf_insn *insns,
optimize(const bpf_ctx_t *bc, const struct bpf_insn *insns,
const bpf_ctx_t *bc, const struct bpf_insn *insns,
bpfjit_generate_code(const bpf_ctx_t *bc,
const bpf_ctx_t *bc, const struct bpf_insn *pc,
typedef unsigned int (*bpfjit_func_t)(const bpf_ctx_t *, bpf_args_t *);
bpfjit_func_t bpfjit_generate_code(const bpf_ctx_t *,
bpfjit_func_t (*bj_generate_code)(const bpf_ctx_t *,
npf_cop_l3(const bpf_ctx_t *bc, bpf_args_t *args, uint32_t A)
npf_cop_table(const bpf_ctx_t *bc, bpf_args_t *args, uint32_t A)
static bpf_ctx_t *npf_bpfctx __read_mostly;
static uint32_t npf_cop_l3(const bpf_ctx_t *, bpf_args_t *, uint32_t);
static uint32_t npf_cop_table(const bpf_ctx_t *, bpf_args_t *, uint32_t);
bpf_ctx_t * bpfctx;
static uint32_t retA(const bpf_ctx_t *bc, bpf_args_t *args, uint32_t A);
static uint32_t retBL(const bpf_ctx_t *bc, bpf_args_t *args, uint32_t A);
static uint32_t retWL(const bpf_ctx_t *bc, bpf_args_t *args, uint32_t A);
static uint32_t retNF(const bpf_ctx_t *bc, bpf_args_t *args, uint32_t A);
static uint32_t setARG(const bpf_ctx_t *bc, bpf_args_t *args, uint32_t A);
static const bpf_ctx_t ctx = {
retA(const bpf_ctx_t *bc, bpf_args_t *args, uint32_t A)
retBL(const bpf_ctx_t *bc, bpf_args_t *args, uint32_t A)
retWL(const bpf_ctx_t *bc, bpf_args_t *args, uint32_t A)
retNF(const bpf_ctx_t *bc, bpf_args_t *args, uint32_t A)
setARG(const bpf_ctx_t *bc, bpf_args_t *args, uint32_t A)
static uint32_t retM(const bpf_ctx_t *bc, bpf_args_t *args, uint32_t A);
static const bpf_ctx_t ctx = {
retM(const bpf_ctx_t *bc, bpf_args_t *args, uint32_t A)
unsigned int rumpns_bpf_filter_ext(const bpf_ctx_t *,
bpfjit_func_t rumpns_bpfjit_generate_code(const bpf_ctx_t *,
setARG(const bpf_ctx_t *bc, bpf_args_t *args, uint32_t A)
static uint32_t retA(const bpf_ctx_t *bc, bpf_args_t *args, uint32_t A);
static uint32_t retBL(const bpf_ctx_t *bc, bpf_args_t *args, uint32_t A);
static uint32_t retWL(const bpf_ctx_t *bc, bpf_args_t *args, uint32_t A);
static uint32_t retNF(const bpf_ctx_t *bc, bpf_args_t *args, uint32_t A);
static uint32_t setARG(const bpf_ctx_t *bc, bpf_args_t *args, uint32_t A);
static const bpf_ctx_t ctx = {
retA(const bpf_ctx_t *bc, bpf_args_t *args, uint32_t A)
retBL(const bpf_ctx_t *bc, bpf_args_t *args, uint32_t A)
retWL(const bpf_ctx_t *bc, bpf_args_t *args, uint32_t A)
retNF(const bpf_ctx_t *bc, bpf_args_t *args, uint32_t A)
static uint32_t retM(const bpf_ctx_t *bc, bpf_args_t *args, uint32_t A);
static const bpf_ctx_t ctx = {
retM(const bpf_ctx_t *bc, bpf_args_t *args, uint32_t A)