mpm/ac-ks: address int handling issues

cppcheck:

src/util-mpm-ac-ks.c:1452:5: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint]
    printf("Total states in the state table:    %d\n", ctx->state_count);
    ^
src/util-mpm-ac-ks.c:606:34: error: Signed integer overflow for expression '1<<31'. [integerOverflow]
        encoded_next_state |= (1 << 31);
                                 ^

Bug: #5291.
pull/7321/head
Victor Julien 3 years ago
parent 9c672a805f
commit a8d3cd6eb4

@ -603,7 +603,7 @@ static void SCACTileSetState4Bytes(SCACTileCtx *ctx, int state, int aa,
} }
if (outputs == 0) if (outputs == 0)
encoded_next_state |= (1 << 31); encoded_next_state |= (1UL << 31);
state_table[state * ctx->alphabet_storage + aa] = encoded_next_state; state_table[state * ctx->alphabet_storage + aa] = encoded_next_state;
} }
@ -1449,7 +1449,7 @@ void SCACTilePrintInfo(MpmCtx *mpm_ctx)
printf("Unique Patterns: %" PRIu32 "\n", mpm_ctx->pattern_cnt); printf("Unique Patterns: %" PRIu32 "\n", mpm_ctx->pattern_cnt);
printf("Smallest: %" PRIu32 "\n", mpm_ctx->minlen); printf("Smallest: %" PRIu32 "\n", mpm_ctx->minlen);
printf("Largest: %" PRIu32 "\n", mpm_ctx->maxlen); printf("Largest: %" PRIu32 "\n", mpm_ctx->maxlen);
printf("Total states in the state table: %d\n", ctx->state_count); printf("Total states in the state table: %u\n", ctx->state_count);
printf("\n"); printf("\n");
} }

Loading…
Cancel
Save