From 99bdb54d9fb8faafa8feee973a7705745dbcccfe Mon Sep 17 00:00:00 2001 From: Victor Julien Date: Tue, 1 Oct 2019 15:20:55 +0200 Subject: [PATCH] detect/classtype: show file and line for unknown classtype --- src/detect-classtype.c | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/src/detect-classtype.c b/src/detect-classtype.c index 5fbe689de3..b2766aa325 100644 --- a/src/detect-classtype.c +++ b/src/detect-classtype.c @@ -115,9 +115,23 @@ static int DetectClasstypeSetup(DetectEngineCtx *de_ctx, Signature *s, const cha bool real_ct = true; SCClassConfClasstype *ct = SCClassConfGetClasstype(parsed_ct_name, de_ctx); if (ct == NULL) { - SCLogWarning(SC_ERR_UNKNOWN_VALUE, "unknown classtype: \"%s\", " - "using default priority %d", - parsed_ct_name, DETECT_DEFAULT_PRIO); + if (s->id > 0) { + SCLogWarning(SC_ERR_UNKNOWN_VALUE, "signature sid:%u uses " + "unknown classtype: \"%s\", using default priority %d. " + "This message won't be shown again for this classtype", + s->id, parsed_ct_name, DETECT_DEFAULT_PRIO); + } else if (de_ctx->rule_file != NULL) { + SCLogWarning(SC_ERR_UNKNOWN_VALUE, "signature at %s:%u uses " + "unknown classtype: \"%s\", using default priority %d. " + "This message won't be shown again for this classtype", + de_ctx->rule_file, de_ctx->rule_line, + parsed_ct_name, DETECT_DEFAULT_PRIO); + } else { + SCLogWarning(SC_ERR_UNKNOWN_VALUE, "unknown classtype: \"%s\", " + "using default priority %d. " + "This message won't be shown again for this classtype", + parsed_ct_name, DETECT_DEFAULT_PRIO); + } char str[2048]; snprintf(str, sizeof(str), -- 2.47.2