detect/bytetest: don't print errors at runtime

pull/3663/head
Victor Julien 6 years ago
parent 08f9d31a82
commit 8751f2fab0

@ -157,7 +157,7 @@ int DetectBytetestDoMatch(DetectEngineThreadCtx *det_ctx,
SCLogDebug("No Numeric value");
SCReturnInt(0);
} else {
SCLogError(SC_ERR_INVALID_NUM_BYTES, "Error extracting %d "
SCLogDebug("error extracting %d "
"bytes of string data: %d", data->nbytes, extbytes);
SCReturnInt(-1);
}
@ -171,8 +171,8 @@ int DetectBytetestDoMatch(DetectEngineThreadCtx *det_ctx,
BYTE_LITTLE_ENDIAN : BYTE_BIG_ENDIAN;
extbytes = ByteExtractUint64(&val, endianness, data->nbytes, ptr);
if (extbytes != data->nbytes) {
SCLogError(SC_ERR_INVALID_NUM_BYTES, "Error extracting %d bytes "
"of numeric data: %d\n", data->nbytes, extbytes);
SCLogDebug("error extracting %d bytes "
"of numeric data: %d", data->nbytes, extbytes);
SCReturnInt(-1);
}

@ -149,7 +149,7 @@ int ByteExtractString(uint64_t *res, int base, uint16_t len, const char *str)
char strbuf[24];
if (len > 23) {
SCLogError(SC_ERR_ARG_LEN_LONG, "len too large (23 max)");
SCLogDebug("len too large (23 max)");
return -1;
}
@ -164,15 +164,15 @@ int ByteExtractString(uint64_t *res, int base, uint16_t len, const char *str)
*res = strtoull(ptr, &endptr, base);
if (errno == ERANGE) {
SCLogError(SC_ERR_NUMERIC_VALUE_ERANGE, "Numeric value out of range");
SCLogDebug("numeric value out of range");
return -1;
/* If there is no numeric value in the given string then strtoull(), makes
endptr equals to ptr and return 0 as result */
} else if (endptr == ptr && *res == 0) {
SCLogDebug("No numeric value");
SCLogDebug("no numeric value");
return -1;
} else if (endptr == ptr) {
SCLogError(SC_ERR_INVALID_NUMERIC_VALUE, "Invalid numeric value");
SCLogDebug("invalid numeric value");
return -1;
}
/* This will interfere with some rules that do not know the length

Loading…
Cancel
Save