X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=lib%2Fshash.h;h=c7e3d14117b24c32b454409747e9a3ead247903e;hb=d2cee5a48ebe850ccb72cd1e860a90e5ec0248fd;hp=dfb10e2cc420e4b5e1023337178749d33db5d18b;hpb=4e8e4213a815a30216e855a805a8bcd5b8c5a886;p=sliver-openvswitch.git diff --git a/lib/shash.h b/lib/shash.h index dfb10e2cc..c7e3d1411 100644 --- a/lib/shash.h +++ b/lib/shash.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009, 2010 Nicira Networks. + * Copyright (c) 2009, 2010, 2011 Nicira Networks. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -58,6 +58,7 @@ void *shash_replace(struct shash *, const char *, const void *data); void shash_delete(struct shash *, struct shash_node *); char *shash_steal(struct shash *, struct shash_node *); struct shash_node *shash_find(const struct shash *, const char *); +struct shash_node *shash_find_len(const struct shash *, const char *, size_t); void *shash_find_data(const struct shash *, const char *); void *shash_find_and_delete(struct shash *, const char *); void *shash_find_and_delete_assert(struct shash *, const char *); @@ -66,6 +67,12 @@ const struct shash_node **shash_sort(const struct shash *); bool shash_equal_keys(const struct shash *, const struct shash *); struct shash_node *shash_random_node(struct shash *); +/* Working with "smaps": shashes used as string-to-string maps. */ +void smap_destroy(struct shash *); +bool smap_equal(const struct shash *, const struct shash *); +void smap_clone(struct shash *, const struct shash *); +void smap_add(struct shash *, const char *key, const char *value); + #ifdef __cplusplus } #endif