summaryrefslogtreecommitdiff
path: root/common/elapi
AgeCommit message (Collapse)AuthorFilesLines
2010-02-12Remove ELAPI from the SSSD repositoryStephen Gallagher38-8416/+0
ELAPI now lives in its own project at https://fedorahosted.org/ELAPI
2009-12-15Add elapi_ut.conf to the list of dist filesSumit Bose2-3/+4
Some newlines are added, too.
2009-10-16ELAPI Compatibility code for getifaddr()Dmitri Pal10-20/+357
Addreses ticket #94 Actually works pretty well. To try use --enable-compat when build ELAPI. It will use compatibility code instead of getifaddr(). The trick in the elapi_ioctl.h with memory allocation is taken from Stevens book.
2009-10-05ELAPI Fixed the host name resolutionDmitri Pal2-13/+111
The issue was that the host IP was recorded twice, once as a main address and another as IP alias. It seemed that the IP was returned as name but the issue turned out to be different. See https://fedorahosted.org/sssd/ticket/207.
2009-10-05ELAPI Rename variables and functions not to use word templateDmitri Pal7-113/+113
Addressing Ticket #191. Renamed all varibles from 'template' to 'tpl'. Used 'tplt' in function names instead of 'templete'.
2009-10-05ELAPI Fixing warnings in the exampleDmitri Pal1-2/+9
2009-10-05ELAPI Resolving message attributeDmitri Pal8-57/+536
This patch continues work started with the previous patch. It resolves message attribute. Message attribute is a special attribute in the event that may contain references to other attributes in the event. When message is resolved the references are replaced with actual values of the referenced attributes.
2009-10-05ELAPI Event resolverDmitri Pal14-95/+828
Started working on the async processing and realised that I need to have a good copy of the event with all the fields resolved so this patch has some foundation for the async functions (module elapi_async.c) but they are mostly stubbed out. The actual code will be added down the road. Instead the patch focuses on the code introduced in elapi_resolve.c module and the use of the functions from it. It also adds the implementation of the high level calls that initialize ELAPI with the external callbacks to be used during async processing (elapi_log.c).
2009-09-21ELAPI: Ticket 161: Initialize structures with calloc instead of enumerating ↵Jakub Hrozek5-36/+6
members
2009-09-21ELAPI: fix varargs call, update unit testsJakub Hrozek3-8/+58
2009-09-16ELAPI: Fix dispatcher structure initializationJakub Hrozek1-10/+1
2009-09-15Include m4 directories in tarballStephen Gallagher2-1/+5
Necessary for RPM builds on RHEL5
2009-09-11Add 'make tests' targetStephen Gallagher2-0/+7
2009-09-11ELAPI Better separation from collection internals.Dmitri Pal1-20/+24
This patch eliminates the need to include collection's private header and uses only public interface.
2009-09-09COLLECTION Copy collection flat with concatenated namesDmitri Pal2-1/+28
This patch addresses several issues: a) Adds capability to add or copy the collections in flattened mode but construct names of attributes in dotted notation. For example when you append collection "sub" with items "foo" and "bar" previously you could add them as "foo" and "bar" not you can flatten them and the names will be "sub.foo" and "sub.bar" this allows better processing of the attributes in the elapi message. b) Removes old implemntation of the copy collection function. c) Removes the col_set_timestamp, this functionality has been moved to ELAPI long ago. d) Updates collection unit test. e) Updates elapi to use new functionality f) Updates elapi unit test Have run under valgrind with no problems.
2009-09-08ELAPI Laying foundation for the async processingDmitri Pal6-90/+175
A relatively small patch aligning headers and a small portion of code for upcoming implementation of the async event processing. Cleanup of the test config file.
2009-09-08ELAPI Adding file provider and CSV formatDmitri Pal19-136/+2248
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-08ELAPI sinks and providersDmitri Pal9-143/+1016
This patch drills down to the next level of ELAPI functionality. I adds the creation and loading of the sinks. It also implements a skeleton for the first low level provider which will be capable of writing to a file. The configuration ini file is extended to define new configuration parameters and their meanings.
2009-09-03configure cleanupsSumit Bose2-2/+2
- replaced mailing list address - let sssd base components read version from VERSION
2009-08-21ELAPI Shortening namesDmitri Pal4-154/+152
Per ticket #118 shortened naimes of some functions and structs I added into ELAPI during last big functional patch . There is no plan to do a global shortening of all names but miving forward I will try to make them shorter than I used to.
2009-08-20COMMON Fixes to return values, errno, leaksDmitri Pal2-10/+8
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-20ELAPI: Adding concept of targetsDmitri Pal14-162/+896
The targets are the destinations which caller wants to send the events to. The sinks are now on the second level under targets and constitute a so called fail over chain for a target. Such approach eliminates the need for complex routing function. The dispatcher keeps the list of targets in a collection. The element in the collection is the target context. Also gispatcher keeps the list of the sinks in a separate collection. Each target context has a list of the sinks associated with this target. But those are just pointers (at least for now) to the sinks form the list kept by dispatcher. I had to add some internal debug callbacks to be able to see that all the internals of the dispatcher are actually in order. See the conttent of config file for more comments. Also see information posted on SSSD wiki. https://fedorahosted.org/sssd/wiki/WikiPage/ELAPIInterface
2009-08-12ELAPI Next round of functionality - logging part of the interfaceDmitri Pal14-263/+1522
a) Added the main logging interface which allows creating dispatcher and logging messages or events. Can't actully log anything yet since the sinks are stubbed out. b) Made default template be a part of the default dispatcher. c) Updated UNIT test. d) Some of the calls are stubbed out but they are there to indicate where next round of work will be.
2009-07-20Fix typo in elapi's Makefile.am that breaks 'make dist'Stephen Gallagher1-1/+1
2009-07-16COLLECTION Add remove item functionsDmitri Pal1-5/+6
The remove functions extract and remove items, they act differently from the way the delete_property function works. The new functions allow deletion with the disposition while the delete_property only deletes specified property. The delete_property function is left as is since there are some use cases when it is more efficient to use it rather than new remove_item_xxx ones.
2009-07-15ELAPI First part of the interfaceDmitri Pal9-0/+1648
This is just a part of the interface, a beginning. Most likely some of the functions will be altered but it is a starting point. For example in future there will be a way to override some of the parts of the default template using the application configuration file. Removed obfuscation of the data types based on discussion with Simo.