summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2008-02-29 07:07:40 +0000
committerRainer Gerhards <rgerhards@adiscon.com>2008-02-29 07:07:40 +0000
commit3d0f49a82e46fdffd8bb2c653ccb46ddd516e112 (patch)
treeed15925f03544474051c5c2536ec40484d92ca11
parent8fc4b2405670959c01255f388916462965f5a138 (diff)
downloadrsyslog-3d0f49a82e46fdffd8bb2c653ccb46ddd516e112.tar.gz
rsyslog-3d0f49a82e46fdffd8bb2c653ccb46ddd516e112.tar.xz
rsyslog-3d0f49a82e46fdffd8bb2c653ccb46ddd516e112.zip
some stage work on rsyslog loader
-rw-r--r--ChangeLog1
-rw-r--r--modules.h15
2 files changed, 11 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index d3e1fa85..97352167 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,5 @@
---------------------------------------------------------------------------
+---------------------------------------------------------------------------
Version 3.12.1 (rgerhards), 2008-0?-??
- improved debugging support; debug runtime options can now be set via
an environment variable
diff --git a/modules.h b/modules.h
index d6b728fc..5c1d5bc9 100644
--- a/modules.h
+++ b/modules.h
@@ -1,11 +1,14 @@
/* modules.h
- * Definition for build-in and plug-ins module handler.
*
- * The following definitions are to be used for modularization. Currently,
- * the code is NOT complete. I am just adding pieces to it as I
- * go along in designing the interface.
- * rgerhards, 2007-07-19
+ * Definition for build-in and plug-ins module handler. This file is the base
+ * for all dynamically loadable module support. In theory, in v3 all modules
+ * are dynamically loaded, in practice we currently do have a few build-in
+ * once. This may become removed.
*
+ * The loader keeps track of what is loaded. For library modules, it is also
+ * used to find objects (libraries) and to obtain the queryInterface function
+ * for them. A reference count is maintened for libraries, so that they are
+ * unloaded only when nobody still accesses them.
*
* File begun on 2007-07-22 by RGerhards
*
@@ -85,6 +88,8 @@ typedef struct moduleInfo {
rsRetVal (*doAction)(uchar**, unsigned, void*);
rsRetVal (*parseSelectorAct)(uchar**, void**,omodStringRequest_t**);
} om;
+ struct { /* data for library modules */
+ } fm;
} mod;
void *pModHdlr; /* handler to the dynamic library holding the module */
} modInfo_t;