index: mmap: add support for searching

Almost a clean copy & paste from the previous implementation.
This commit is contained in:
Lucas De Marchi 2011-12-02 17:49:03 -02:00
parent e33bb87cae
commit b797b79183
2 changed files with 19 additions and 0 deletions

View File

@ -756,3 +756,21 @@ static char *index_mm_search_node(struct index_mm_node *node, const char *key,
return NULL;
}
/*
* Search the index for a key
*
* Returns the value of the first match
*
* The recursive functions free their node argument (using index_close).
*/
char *index_mm_search(struct index_mm *idx, const char *key)
{
struct index_mm_node *root;
char *value;
root = index_mm_readroot(idx);
value = index_mm_search_node(root, key, 0);
return value;
}

View File

@ -166,5 +166,6 @@ void index_values_free(struct index_value *values);
struct index_mm;
struct index_mm *index_mm_open(struct kmod_ctx *ctx, const char *filename);
void index_mm_close(struct index_mm *index);
char *index_mm_search(struct index_mm *idx, const char *key);
#endif