diff options
author | Dmitri Pal <dpal@redhat.com> | 2010-03-29 16:58:29 -0400 |
---|---|---|
committer | Stephen Gallagher <sgallagh@redhat.com> | 2010-04-14 12:15:54 -0400 |
commit | e4956873b0ca4ec732e009f88be43549506f7819 (patch) | |
tree | ddef1a00bc399d5070487d05f9f30ba54706bbdb /common/ini/ini_metadata.h | |
parent | d675db76493ab9dcf8ccb0422b1477b780df8bc3 (diff) | |
download | sssd-e4956873b0ca4ec732e009f88be43549506f7819.tar.gz sssd-e4956873b0ca4ec732e009f88be43549506f7819.tar.bz2 sssd-e4956873b0ca4ec732e009f88be43549506f7819.zip |
Adding metadata interface
This patch:
1) Adds the definition of the metadata interface
to the header file. The functions that were exposed
for no good reason are now hidden.
2) Previously exposed functions and their descriptions
are removed from the public header and placed into
the source code for now.
3) The function that reads the config file no longer
tries to close file in case of error.
4) Lines collection is still passed in into the reading
function but as a collection itself not as a pointer
to it.
5) All the parts related to processing lines are currently
ifdefed using HAVE_VALIDATION that is currently is not defined.
This is done to disable creation of the lines collection
utill it is actually needed. I did not want to blindly remove
it though and loose already done work that will be useful
in future.
6) Version of the library and interface is updated
7) New header and source modules are introduced to hold functions
related to the meta data. They are mostly stubbed out.
This is incomplete patch. It builds and make check runs.
It is created just to simplify the review a bit.
Diffstat (limited to 'common/ini/ini_metadata.h')
-rw-r--r-- | common/ini/ini_metadata.h | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/common/ini/ini_metadata.h b/common/ini/ini_metadata.h new file mode 100644 index 00000000..2839453a --- /dev/null +++ b/common/ini/ini_metadata.h @@ -0,0 +1,42 @@ +/* + INI LIBRARY + + Header file for the meta data related functions. + + Copyright (C) Dmitri Pal <dpal@redhat.com> 2009 + + INI Library is free software: you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + INI Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with INI Library. If not, see <http://www.gnu.org/licenses/>. +*/ + +#ifndef INI_METADATA_H +#define INI_METADATA_H + +#include <stdint.h> +#include <stdio.h> +#include "collection.h" + + +/* Prepare metadata */ +int prepare_metadata(uint32_t metaflags, + struct collection_item **metadata, + int *save_error); + +/* Collect metadata for the file */ +int collect_metadata(uint32_t metaflags, + struct collection_item **metadata, + FILE *config_file); + + + +#endif |