diff options
Diffstat (limited to 'v5/apf_interpreter_source.c')
-rw-r--r-- | v5/apf_interpreter_source.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/v5/apf_interpreter_source.c b/v5/apf_interpreter_source.c index 636d679..f48a15b 100644 --- a/v5/apf_interpreter_source.c +++ b/v5/apf_interpreter_source.c @@ -173,7 +173,7 @@ static int do_apf_run(apf_context* ctx) { u32 pktcopy_src_offset = 0; // used for various pktdatacopy opcodes switch (opcode) { - case PASSDROP_OPCODE: { + case PASSDROP_OPCODE: { // APFv6+ if (len_field > 2) return PASS_PACKET; // max 64K counters (ie. imm < 64K) if (imm) { if (4 * imm > ctx->ram_len) return PASS_PACKET; @@ -218,7 +218,7 @@ static int do_apf_run(apf_context* ctx) { break; } case JMP_OPCODE: - if (reg_num && !ctx->v6) { + if (reg_num && !ctx->v6) { // APFv6+ // First invocation of APFv6 jmpdata instruction counter[-1] = 0x12345678; // endianness marker counter[-2]++; // total packets ++ @@ -383,7 +383,7 @@ static int do_apf_run(apf_context* ctx) { case JDNSAMATCH_EXT_OPCODE: // 44 case JDNSQMATCHSAFE_EXT_OPCODE: // 45 case JDNSAMATCHSAFE_EXT_OPCODE: { // 46 - const u32 imm_len = 1 << (len_field - 1); + const u32 imm_len = 1 << (len_field - 1); // EXT_OPCODE, thus len_field > 0 u32 jump_offs = decode_imm(ctx, imm_len); // 2nd imm, at worst 8 B past prog_len int qtype = -1; if (imm & 1) { // JDNSQMATCH & JDNSQMATCHSAFE are *odd* extended opcodes |