use first gnulib module: progname
[iwhd.git] / meta.h
blob04f7f88ea08401c52beeaa9d91bf089c4f541870
1 /* Copyright (C) 2010 Red Hat, Inc.
3 This program is free software: you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by
5 the Free Software Foundation, either version 3 of the License, or
6 (at your option) any later version.
8 This program is distributed in the hope that it will be useful,
9 but WITHOUT ANY WARRANTY; without even the implied warranty of
10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 GNU General Public License for more details.
13 You should have received a copy of the GNU General Public License
14 along with this program. If not, see <http://www.gnu.org/licenses/>. */
16 #if !defined(_META_H)
17 #define _META_H
19 #if defined(__cplusplus)
20 extern "C" {
21 #endif
23 enum { QUERY_BKT_LIST, QUERY_OBJ_LIST, QUERY_FILTER };
25 void meta_init (void);
26 void meta_fini (void);
27 char *meta_did_put (const char *bucket, const char *key, const char *loc,
28 size_t size);
29 void meta_got_copy (const char *bucket, const char *key, const char *loc);
30 char *meta_has_copy (const char *bucket, const char *key, const char *loc);
31 int meta_set_value (const char *bucket, const char *key, const char *mkey,
32 const char *mvalue);
33 int meta_get_value (const char *bucket, const char *key, const char *mkey,
34 char **mvalue);
36 void *meta_query_new (const char *bucket, const char *key, const char *expr);
37 int meta_query_next (void *qobj, char **bucket, char **key);
38 void meta_query_stop (void *qobj);
39 void meta_delete (const char *bucket, const char *key);
40 size_t meta_get_size (const char *bucket, const char *key);
41 void *meta_get_attrs (const char *bucket, const char *key);
42 int meta_attr_next (void *aobj, const char **, const char **);
43 void meta_attr_stop (void *aobj);
45 #if defined(__cplusplus)
47 #endif
49 #endif