Make error on <- direction operation use more explicit.

remotes/origin/master-1.1.x
Victor Julien 14 years ago
parent cd75201dc7
commit 681f8329a6

@ -90,7 +90,7 @@ typedef struct SigDuplWrapper_ {
#define CONFIG_OPTS 7
// action protocol src sp dir dst dp options
#define CONFIG_PCRE "^([A-z]+)\\s+([A-z0-9]+)\\s+([\\[\\]A-z0-9\\.\\:_\\$\\!\\-,\\/]+)\\s+([\\:A-z0-9_\\$\\!,]+)\\s+(-\\>|\\<\\>)\\s+([\\[\\]A-z0-9\\.\\:_\\$\\!\\-,/]+)\\s+([\\:A-z0-9_\\$\\!,]+)(?:\\s+\\((.*)?(?:\\s*)\\))?(?:(?:\\s*)\\n)?\\s*$"
#define CONFIG_PCRE "^([A-z]+)\\s+([A-z0-9]+)\\s+([\\[\\]A-z0-9\\.\\:_\\$\\!\\-,\\/]+)\\s+([\\:A-z0-9_\\$\\!,]+)\\s+(-\\>|\\<\\>|\\<\\-)\\s+([\\[\\]A-z0-9\\.\\:_\\$\\!\\-,/]+)\\s+([\\:A-z0-9_\\$\\!,]+)(?:\\s+\\((.*)?(?:\\s*)\\))?(?:(?:\\s*)\\n)?\\s*$"
#define OPTION_PARTS 3
#define OPTION_PCRE "^\\s*([A-z_0-9-\\.]+)(?:\\s*\\:\\s*(.*)(?<!\\\\))?\\s*;\\s*(?:\\s*(.*))?\\s*$"
@ -933,6 +933,11 @@ static int SigParseBasics(Signature *s, char *sigstr, char ***result, uint8_t ad
if (SigParseProto(s, arr[CONFIG_PROTO]) < 0)
goto error;
if (strcmp(arr[CONFIG_DIREC], "<-") == 0) {
SCLogError(SC_ERR_INVALID_DIRECTION, "\"->\" is not a valid direction modifier, \"->\" and \"<>\" are supported.");
goto error;
}
/* Check if it is bidirectional */
if (strcmp(arr[CONFIG_DIREC], "<>") == 0)
s->init_flags |= SIG_FLAG_BIDIREC;

@ -205,6 +205,7 @@ const char * SCErrorToString(SCError err)
CASE_CODE (SC_ERR_UNKNOWN_DECODE_EVENT);
CASE_CODE (SC_ERR_RUNMODE);
CASE_CODE (SC_ERR_SHUTDOWN);
CASE_CODE (SC_ERR_INVALID_DIRECTION);
default:
return "UNKNOWN_ERROR";

@ -216,6 +216,7 @@ typedef enum {
SC_ERR_UNKNOWN_DECODE_EVENT,
SC_ERR_RUNMODE,
SC_ERR_SHUTDOWN,
SC_ERR_INVALID_DIRECTION,
} SCError;
const char *SCErrorToString(SCError);

Loading…
Cancel
Save