/[pdpsoft]/trunk/grid-mw-security/ees/include/common/_plugin_manager.h
ViewVC logotype

Contents of /trunk/grid-mw-security/ees/include/common/_plugin_manager.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 525 - (show annotations) (download) (as text)
Wed Jul 15 08:55:01 2009 UTC (12 years, 6 months ago) by aramv
File MIME type: text/x-csrc
File size: 1635 byte(s)
Wored on parser, trying to fix memleaks
1 /*
2
3 \file _plugin_manager.h
4 \brief Private functions of the PluginManager
5 \author Aram Verstegen
6
7 This header contains the declarations of the private Plugin Manager functions:
8 -# PluginInit(argc, argv): Initialize plugin and add it to the list.
9 -# get_procsymbol(handle, symbol): Retrieve dlsym symbol from specified dl-handle.
10 -# print_lcmaps_plugin(log_level, plugin): Print plugin fields to log with specified log_level.
11 -# clean_plugin_list(plugin_list): Clean the linkedlist and close all the dl handles.
12 -# get_plugin(plugin_name): Retrieve a plugin from the list by name.
13
14 */
15 #ifndef _PLUGINMANAGER_H
16 #define _PLUGINMANAGER_H
17 #include "plugin_manager.h"
18 #include "ees_config.h"
19 #include "ng_log.h"
20
21 #include <errno.h>
22 #include <sys/dir.h>
23 #include <fnmatch.h>
24 #include <syslog.h>
25 #include <stdlib.h>
26 #include <string.h>
27
28 #ifdef HAVE_DLFCN_H
29 #include <dlfcn.h>
30 #endif
31
32 #ifdef HAVE_MALLOC_H
33 #include <malloc.h>
34 #endif
35
36 static char abs_plugin_path[LCMAPS_MAXPATHLEN];
37 static NG_PL_RC (*init_fnc_ptr)(int, char**); /*!< init function pointer */
38 static NG_PL_RC (*run_fnc_ptr)(void); /*!< run function pointer */
39 static NG_PL_RC (*term_fnc_ptr)(void); /*!< run function pointer */
40 static lcmaps_plugindl_t * plugin_list;
41 static lcmaps_plugindl_t * _running_plugin;
42
43 lcmaps_plugindl_t * PluginInit(char *, int, char**);
44 lcmaps_proc_t get_procsymbol(void*, char*);
45 NG_RC print_lcmaps_plugin(int, lcmaps_plugindl_t*);
46 NG_RC clean_plugin_list(lcmaps_plugindl_t*);
47 lcmaps_plugindl_t * get_plugin(char*);
48
49 #endif

grid.support@nikhef.nl
ViewVC Help
Powered by ViewVC 1.1.28