|
@@ -257,7 +257,7 @@ found_match:
|
|
}
|
|
}
|
|
|
|
|
|
static struct ts_config *fsm_init(const void *pattern, unsigned int len,
|
|
static struct ts_config *fsm_init(const void *pattern, unsigned int len,
|
|
- gfp_t gfp_mask)
|
|
|
|
|
|
+ gfp_t gfp_mask, int flags)
|
|
{
|
|
{
|
|
int i, err = -EINVAL;
|
|
int i, err = -EINVAL;
|
|
struct ts_config *conf;
|
|
struct ts_config *conf;
|
|
@@ -269,6 +269,9 @@ static struct ts_config *fsm_init(const void *pattern, unsigned int len,
|
|
if (len % sizeof(struct ts_fsm_token) || ntokens < 1)
|
|
if (len % sizeof(struct ts_fsm_token) || ntokens < 1)
|
|
goto errout;
|
|
goto errout;
|
|
|
|
|
|
|
|
+ if (flags & TS_IGNORECASE)
|
|
|
|
+ goto errout;
|
|
|
|
+
|
|
for (i = 0; i < ntokens; i++) {
|
|
for (i = 0; i < ntokens; i++) {
|
|
struct ts_fsm_token *t = &tokens[i];
|
|
struct ts_fsm_token *t = &tokens[i];
|
|
|
|
|
|
@@ -284,6 +287,7 @@ static struct ts_config *fsm_init(const void *pattern, unsigned int len,
|
|
if (IS_ERR(conf))
|
|
if (IS_ERR(conf))
|
|
return conf;
|
|
return conf;
|
|
|
|
|
|
|
|
+ conf->flags = flags;
|
|
fsm = ts_config_priv(conf);
|
|
fsm = ts_config_priv(conf);
|
|
fsm->ntokens = ntokens;
|
|
fsm->ntokens = ntokens;
|
|
memcpy(fsm->tokens, pattern, len);
|
|
memcpy(fsm->tokens, pattern, len);
|