diff options
author | Joonwoo Park <joonwpark81@gmail.com> | 2008-07-08 05:38:27 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-07-08 05:38:27 -0400 |
commit | 43138833ee9af07e865a4dcbfe81684c9c2f2262 (patch) | |
tree | c3de1d509fce8c2defbf4d63d2e3055de24e9948 | |
parent | 2523c3fc2bc9e34c06a71517844d55353f1f904a (diff) |
textsearch: ts_fsm: return error on request for case insensitive search
For fsm text search, handle case insensitive parameter as -EINVAL.
Signed-off-by: Joonwoo Park <joonwpark81@gmail.com>
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | lib/ts_fsm.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/ts_fsm.c b/lib/ts_fsm.c index af575b61526b..5696a35184e4 100644 --- a/lib/ts_fsm.c +++ b/lib/ts_fsm.c | |||
@@ -257,7 +257,7 @@ found_match: | |||
257 | } | 257 | } |
258 | 258 | ||
259 | static struct ts_config *fsm_init(const void *pattern, unsigned int len, | 259 | static struct ts_config *fsm_init(const void *pattern, unsigned int len, |
260 | gfp_t gfp_mask) | 260 | gfp_t gfp_mask, int flags) |
261 | { | 261 | { |
262 | int i, err = -EINVAL; | 262 | int i, err = -EINVAL; |
263 | struct ts_config *conf; | 263 | struct ts_config *conf; |
@@ -269,6 +269,9 @@ static struct ts_config *fsm_init(const void *pattern, unsigned int len, | |||
269 | if (len % sizeof(struct ts_fsm_token) || ntokens < 1) | 269 | if (len % sizeof(struct ts_fsm_token) || ntokens < 1) |
270 | goto errout; | 270 | goto errout; |
271 | 271 | ||
272 | if (flags & TS_IGNORECASE) | ||
273 | goto errout; | ||
274 | |||
272 | for (i = 0; i < ntokens; i++) { | 275 | for (i = 0; i < ntokens; i++) { |
273 | struct ts_fsm_token *t = &tokens[i]; | 276 | struct ts_fsm_token *t = &tokens[i]; |
274 | 277 | ||
@@ -284,6 +287,7 @@ static struct ts_config *fsm_init(const void *pattern, unsigned int len, | |||
284 | if (IS_ERR(conf)) | 287 | if (IS_ERR(conf)) |
285 | return conf; | 288 | return conf; |
286 | 289 | ||
290 | conf->flags = flags; | ||
287 | fsm = ts_config_priv(conf); | 291 | fsm = ts_config_priv(conf); |
288 | fsm->ntokens = ntokens; | 292 | fsm->ntokens = ntokens; |
289 | memcpy(fsm->tokens, pattern, len); | 293 | memcpy(fsm->tokens, pattern, len); |