summaryrefslogtreecommitdiff
path: root/common/ini
AgeCommit message (Collapse)AuthorFilesLines
2010-04-30Introducing a comment objectDmitri Pal5-6/+804
Comment object will store the comments found in the INI file. It is based on the ref_array interface. Fixing review comments for comment obj.
2010-04-26Code restructuringDmitri Pal10-1472/+1705
Time came to split ini_config.c into many much smaller pieces. 1) ini_parse.c - will have parsing functions 2) ini_get_value.c - will have single value interpretation functions 3) ini_get_array.c - will have array interpretation functions. 4) ini_print.c - error printing 5) ini_defines.h - common constants 6) ini_parse.h header for parsing functions 7) ini_list.c - will have list processing functions
2010-04-14Fixing buildDmitri Pal1-2/+3
2010-04-14Fix ini_config unit testStephen Gallagher1-1/+4
When running 'make distcheck', the entire source directory is set to read-only, to ensure that the build process only has write access to $builddir. As a result, this was causing the unit test for file mode to fail, since the file it was testing resides in the $srcdir. This patch guarantees that the test file has the correct permissions prior to running the access test.
2010-04-14Add ability to trace 64bit numbersDmitri Pal1-0/+2
[TRACE] Adding macros for signed numbers
2010-04-14Acess control and config change checksDmitri Pal4-38/+684
1) Fixed the issue that metadata was saved as numbers. Was supposed to be saved as strings. 2) Added two functions. One is to check permissions on the config file. Another to check if the file has changed and thus the cinfiguration needs to be reread. 3) Added unit test will sample code and comments how to use the functions. 4) Added doxygen description in the comments. 5) Fixed couple typos and ommisions here and there. [INI] Fixing crash detected on 64-bit system This patch corrects original code to be more on the safe side and check parameters before using. Instead of dereferencing metadata it is now passed as reference to the next level. It is not used there yet so no other new changes needed so far. [INI] Addressing review comments [INI] Addressing comments.
2010-04-14Resolve paths for reporting purposesDmitri Pal2-4/+21
2010-04-14Adding content to the metadataDmitri Pal4-13/+140
This patch implements function that collects stats and saves them in the ACCESS section inside metadata.
2010-04-14Adding metadata interfaceDmitri Pal7-277/+915
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.
2010-03-17Fixing type conversion in INI interface.Dmitri Pal3-35/+197
Additional changes.
2010-03-15Build and package libini_config docsStephen Gallagher1-1/+0
2010-03-15Adding interface description using doxygen.Dmitri Pal4-161/+2728
2010-03-12Fixing verbosity and formatting of the INI unit test.Dmitri Pal1-132/+197
2010-02-03Split off libini_config into a shared libraryStephen Gallagher4-7/+19
2010-02-03Fix array index errorStephen Gallagher1-1/+1
The null-terminator would have been written one byte past the end of the array (and there may have been an extra garbage character in the index before it)
2010-02-03Add license files for ini_configStephen Gallagher2-0/+839
2010-01-21INI: Added method to get string list with empty valuesDmitri Pal3-54/+117
The original implementation was compressing the list, throwing away empty strings. The function that did that was pretty brain damaging. I cleaned it up and adjusted so that it could return list with empty values and without them. The old function was turned into a wrapper and a new high level function was intorduced to provide ability to get both empty and non empty strings.
2009-12-10INI Correcting build warnings.Dmitri Pal2-8/+7
The previous patch included "config.h" into the public header which caused all sorts of redefinitions and warnings.
2009-12-10INI: Cleaning FIXME comments.Dmitri Pal3-7/+16
Added configurable key length. Changed comments for the functions that are currently not used and reserved for future functionality.
2009-10-05INI Add config_from_fd() to ini_configStephen Gallagher3-22/+239
Patch adds ability to read configuration using already open file descriptor. Started by Steve G and refined a bit by me.
2009-09-15Include m4 directories in tarballStephen Gallagher1-1/+2
Necessary for RPM builds on RHEL5
2009-09-15INI Error handling and interface cleanupDmitri Pal2-30/+86
Inspired by issue #173 I reviewed the other function of the interface and found a lot of problems with its error handling. Also made INI use collection public interfaces.
2009-09-11Add 'make tests' targetStephen Gallagher1-0/+2
2009-09-08ELAPI Adding file provider and CSV formatDmitri Pal1-3/+2
This patch creates the infrastructure for logging of the event from the top of the interface to the bottom. It is a start. A lot of functionality is left aside. The attempt of this patch is pass event from caller of the ELAPI interface via targets to sinks then to providers and do serialization creating entity that is ready to be written to a file. It also implements more specific provider related configuration parameters. Also it addresses couple suggestions that were brought up against previous patch. ELAPI Correcting issues This patch addresses the issues found during the review of the previous patches and addresses ticket #166.
2009-09-03configure cleanupsSumit Bose1-1/+1
- replaced mailing list address - let sssd base components read version from VERSION
2009-08-20COMMON Fixes to return values, errno, leaksDmitri Pal1-6/+4
Started looking at the ticket #107 related to traverse functions. Realized that the return values are not consistent. That ovelapped with the work that I wanted to do for ticket #103 - errno cleanup. So I (across collection, INI and ELAPI): * Made the return codes consistent (where found) * Removed errno where it is not needed While was testing used valgrind and found a nasty problem when the value was added to collection with overwriting duplicates the count was decreased improperly. Fixing collection.c to not decrease count made valgrind happy. While I was debugging this I also spotted several build warnings in trace statements when the " exp ? v1 : v2 " was used. Fixed those. In ini_config.c there was a trace stament that used variable after it was freed. Removed trace stament.
2009-08-12INI Simple fix to properly process multi value config parameters.Dmitri Pal2-2/+3
Also fixed a typo in the header file.
2009-07-20COLLECTION & INI CleanupDmitri Pal2-33/+45
I started to cleanup the unit tests from the type cust around NULL and found several problems that I had to address: 1) The choice of the "." as a search separator turned out to be a poor choice. The problem was that the file name has "." and INI was relaying on files to be used as property names. I corrected that part in the INI but after discussion with Simo we decided to switch from "." to "!" as special symbol anyways. 2) Found that the property rename was not reinitializing the hash. Corrected. Added ticket to add unit tests around it (#83).
2009-07-16Run ini_config unit test with "make check"Stephen Gallagher2-2/+19
Also adds support for running ini_config_ut under a parallel build directory.
2009-07-16INI Refactoring code a bitDmitri Pal2-42/+16
The inefficient function from ini_config.c is replaced with the function provided now by the collection interface. Also the unit test is updated to run from the local directory.
2009-07-13Build all SSSD components with warnings enabledStephen Gallagher2-1/+12
Previously, only the SSSD server components were being built with compile-time warnings enabled. This patch will ensure that all components in common and sss_client are also built the same way.
2009-07-03Clean up warnings in common/Simo Sorce3-8/+8
Fix consts and function declarations
2009-07-02Adding wrappers to free data in INI API.Dmitri Pal3-58/+91
See ticket #37 in sssd track.
2009-07-02Changing function names for collection API.Dmitri Pal2-224/+226
Patch prepends prefix "col_" to all functions related to collection. This caused some formatiing issues so the alignement was addressed too.
2009-06-02Enable quiet build for automake >= 1.11Stephen Gallagher1-0/+3
If automake 1.11 or higher is available, use of the configure option '--enable-silent-rules' will suppress most build messages and replace them with lines such as CC sysdb.o This affects libtool as well.
2009-05-26Clean up automake build to work on older versions of libtoolStephen Gallagher2-5/+6
LT_INIT is supported only on Libtool >= 2.0, so I reverted it to using AC_PROG_LIBTOOL. Also reorganized how the common libraries were being built. Now they are treated as libtool convenience libraries instead of installable libraries (the --with-singlelib configure flag can still be used to generate a combined, installable DSO) I cleaned up the set of files being installed by automake, so the list of things we need to remove before packaging the RPM is now only the .la files associated with our own plugins.
2009-05-19Fix RPM generation issues with sssdStephen Gallagher1-2/+2
Ensures that the common libraries build statically. Also ensures that the sssd.spec creates the SYSV init script with the appropriate permissions. Cleans up the useless rpmdist target that was obsolete. Adds the *.so.N.0.0 files to the RPM, as the .so and .so.N files were dangling symlinks.
2009-05-19Use freeipa-devel@redhat.com for bug reportsStephen Gallagher1-1/+1
2009-05-19Enable parallel builds for the common librariesStephen Gallagher1-1/+1
2009-05-17Build fixesSimo Sorce1-0/+20
Comment out unused function in pam_sss Add missing configure.ac to common/ini
2009-05-14Enable modular build of common SSSD librariesStephen Gallagher3-2/+3
Allow configuration and build of individual SSSD utility libraries from their own subdirectories. Building all utilities is still possible recursively from the common root.
2009-04-17INI parser. Fix for line numbers.Dmitri Pal1-1/+4
Realized that I need to differentiate sections and attributes. To do this the line numbers for sections will be negative.
2009-04-17INI parser. Adding comments to avoid confusion.Dmitri Pal1-0/+2
There was a confusion about the functions that were recently added. They are incomplete. New added comments make it clear.
2009-04-17INI parser. Removing inlines.Dmitri Pal1-17/+17
There is controversy about the inlines so they are removed.
2009-04-16INI parser. Cleanup. Prep for INI validation.Dmitri Pal3-189/+460
This patch addresses several issues: a) Cleaning unit test to match coding standard b) Replace tabs with spaces - I do not know where they came but there were some. c) Allowing to read file and keep aside a collection of K-V pairs where key is the key in the INI file and value is the line number on which line the key apears. d) There will be different kinds of errors so error printing function was abstracted. g) Placeholders for other printing functions have been introduced.
2009-04-15INI parser. Better error handling if something bad happens.Dmitri Pal1-6/+21
Tried to use the INI interface and saw that the list of parsing errors can be not NULL but the actual data is cleaned.
2009-04-14Fixing memory issues in ini and collectionDmitri Pal2-9/+31
The read_line() function used an internal buffer allocated on stack as temporary storage for a line read from file, then returned it. read_line() now gets a buffer from the caller. Fixed memory leaks in INI and Collection found by valgrind.
2009-04-13Build fixes for RPM packaging of SSSDStephen Gallagher1-1/+1
We were missing several BuildRequires for the autotools. Also, we were linking against two external libraries in the common code that we do not actually use.
2009-04-13Build system improvements for common toolsStephen Gallagher2-7/+20
Allows building shared or static libraries using autotools and provides a pkg-config file to simplify inclusion into other parts of the project (or other projects in the future) For now, we will statically link the collection library and INI parser.
2009-04-10The lower level function now returns NOENT if file is not found.Dmitri Pal2-3/+11