diff options
author | Srikant Patnaik | 2015-01-11 12:28:04 +0530 |
---|---|---|
committer | Srikant Patnaik | 2015-01-11 12:28:04 +0530 |
commit | 871480933a1c28f8a9fed4c4d34d06c439a7a422 (patch) | |
tree | 8718f573808810c2a1e8cb8fb6ac469093ca2784 /ANDROID_3.4.5/include/linux/textsearch.h | |
parent | 9d40ac5867b9aefe0722bc1f110b965ff294d30d (diff) | |
download | FOSSEE-netbook-kernel-source-871480933a1c28f8a9fed4c4d34d06c439a7a422.tar.gz FOSSEE-netbook-kernel-source-871480933a1c28f8a9fed4c4d34d06c439a7a422.tar.bz2 FOSSEE-netbook-kernel-source-871480933a1c28f8a9fed4c4d34d06c439a7a422.zip |
Moved, renamed, and deleted files
The original directory structure was scattered and unorganized.
Changes are basically to make it look like kernel structure.
Diffstat (limited to 'ANDROID_3.4.5/include/linux/textsearch.h')
-rw-r--r-- | ANDROID_3.4.5/include/linux/textsearch.h | 178 |
1 files changed, 0 insertions, 178 deletions
diff --git a/ANDROID_3.4.5/include/linux/textsearch.h b/ANDROID_3.4.5/include/linux/textsearch.h deleted file mode 100644 index cfaee869..00000000 --- a/ANDROID_3.4.5/include/linux/textsearch.h +++ /dev/null @@ -1,178 +0,0 @@ -#ifndef __LINUX_TEXTSEARCH_H -#define __LINUX_TEXTSEARCH_H - -#include <linux/types.h> -#include <linux/list.h> -#include <linux/kernel.h> -#include <linux/err.h> -#include <linux/slab.h> - -struct module; - -struct ts_config; - -#define TS_AUTOLOAD 1 /* Automatically load textsearch modules when needed */ -#define TS_IGNORECASE 2 /* Searches string case insensitively */ - -/** - * struct ts_state - search state - * @offset: offset for next match - * @cb: control buffer, for persistent variables of get_next_block() - */ -struct ts_state -{ - unsigned int offset; - char cb[40]; -}; - -/** - * struct ts_ops - search module operations - * @name: name of search algorithm - * @init: initialization function to prepare a search - * @find: find the next occurrence of the pattern - * @destroy: destroy algorithm specific parts of a search configuration - * @get_pattern: return head of pattern - * @get_pattern_len: return length of pattern - * @owner: module reference to algorithm - */ -struct ts_ops -{ - const char *name; - struct ts_config * (*init)(const void *, unsigned int, gfp_t, int); - unsigned int (*find)(struct ts_config *, - struct ts_state *); - void (*destroy)(struct ts_config *); - void * (*get_pattern)(struct ts_config *); - unsigned int (*get_pattern_len)(struct ts_config *); - struct module *owner; - struct list_head list; -}; - -/** - * struct ts_config - search configuration - * @ops: operations of chosen algorithm - * @flags: flags - * @get_next_block: callback to fetch the next block to search in - * @finish: callback to finalize a search - */ -struct ts_config -{ - struct ts_ops *ops; - int flags; - - /** - * get_next_block - fetch next block of data - * @consumed: number of bytes consumed by the caller - * @dst: destination buffer - * @conf: search configuration - * @state: search state - * - * Called repeatedly until 0 is returned. Must assign the - * head of the next block of data to &*dst and return the length - * of the block or 0 if at the end. consumed == 0 indicates - * a new search. May store/read persistent values in state->cb. - */ - unsigned int (*get_next_block)(unsigned int consumed, - const u8 **dst, - struct ts_config *conf, - struct ts_state *state); - - /** - * finish - finalize/clean a series of get_next_block() calls - * @conf: search configuration - * @state: search state - * - * Called after the last use of get_next_block(), may be used - * to cleanup any leftovers. - */ - void (*finish)(struct ts_config *conf, - struct ts_state *state); -}; - -/** - * textsearch_next - continue searching for a pattern - * @conf: search configuration - * @state: search state - * - * Continues a search looking for more occurrences of the pattern. - * textsearch_find() must be called to find the first occurrence - * in order to reset the state. - * - * Returns the position of the next occurrence of the pattern or - * UINT_MAX if not match was found. - */ -static inline unsigned int textsearch_next(struct ts_config *conf, - struct ts_state *state) -{ - unsigned int ret = conf->ops->find(conf, state); - - if (conf->finish) - conf->finish(conf, state); - - return ret; -} - -/** - * textsearch_find - start searching for a pattern - * @conf: search configuration - * @state: search state - * - * Returns the position of first occurrence of the pattern or - * UINT_MAX if no match was found. - */ -static inline unsigned int textsearch_find(struct ts_config *conf, - struct ts_state *state) -{ - state->offset = 0; - return textsearch_next(conf, state); -} - -/** - * textsearch_get_pattern - return head of the pattern - * @conf: search configuration - */ -static inline void *textsearch_get_pattern(struct ts_config *conf) -{ - return conf->ops->get_pattern(conf); -} - -/** - * textsearch_get_pattern_len - return length of the pattern - * @conf: search configuration - */ -static inline unsigned int textsearch_get_pattern_len(struct ts_config *conf) -{ - return conf->ops->get_pattern_len(conf); -} - -extern int textsearch_register(struct ts_ops *); -extern int textsearch_unregister(struct ts_ops *); -extern struct ts_config *textsearch_prepare(const char *, const void *, - unsigned int, gfp_t, int); -extern void textsearch_destroy(struct ts_config *conf); -extern unsigned int textsearch_find_continuous(struct ts_config *, - struct ts_state *, - const void *, unsigned int); - - -#define TS_PRIV_ALIGNTO 8 -#define TS_PRIV_ALIGN(len) (((len) + TS_PRIV_ALIGNTO-1) & ~(TS_PRIV_ALIGNTO-1)) - -static inline struct ts_config *alloc_ts_config(size_t payload, - gfp_t gfp_mask) -{ - struct ts_config *conf; - - conf = kzalloc(TS_PRIV_ALIGN(sizeof(*conf)) + payload, gfp_mask); - if (conf == NULL) - return ERR_PTR(-ENOMEM); - - return conf; -} - -static inline void *ts_config_priv(struct ts_config *conf) -{ - return ((u8 *) conf + TS_PRIV_ALIGN(sizeof(struct ts_config))); -} - -#endif |