00001 /* 00002 * Copyright (c) 2001 EU DataGrid. 00003 * For license conditions see http://www.eu-datagrid.org/license.html 00004 * 00005 * Copyright (c) 2001, 2002 by 00006 * Martijn Steenbakkers <martijn@nikhef.nl>, 00007 * David Groep <davidg@nikhef.nl>, 00008 * NIKHEF Amsterdam, the Netherlands 00009 */ 00010 00024 #ifndef _LCMAPS_PLUGINMANAGER_H 00025 #define _LCMAPS_PLUGINMANAGER_H 00026 00027 /****************************************************************************** 00028 Include header files 00029 ******************************************************************************/ 00030 #include <gssapi.h> 00031 #include "lcmaps_types.h" 00032 00033 /****************************************************************************** 00034 * Module definition 00035 *****************************************************************************/ 00036 00037 /****************************************************************************** 00038 Function: startPluginManager 00039 Description: 00040 Initialize PluginManager module: 00041 read from LCMAPS config file, the plugins to be loaded 00042 Initialize evaluation manager (get policy) 00043 00044 Parameters: 00045 Returns: 00046 0: succes 00047 1: failure 00048 ******************************************************************************/ 00049 extern int startPluginManager( 00050 ); 00051 00052 /****************************************************************************** 00053 Function: stopPluginManager 00054 Description: 00055 Terminate PluginManager module. 00056 00057 Parameters: 00058 Returns: 00059 0: termination succeeded 00060 1: termination failed 00061 ******************************************************************************/ 00062 extern int stopPluginManager(); 00063 00064 /****************************************************************************** 00065 Function: runPluginManager 00066 Description: 00067 Run PluginManager: 00068 Contact Evaluation Manager --> runs plugins 00069 00070 Parameters: 00071 request: RSL request 00072 lcmaps_cred: user credential 00073 Returns: 00074 0: user mapping succeeded 00075 1: user mapping failed 00076 ******************************************************************************/ 00077 extern int runPluginManager( 00078 lcmaps_request_t request, 00079 lcmaps_cred_id_t lcmaps_cred 00080 ); 00081 00082 /****************************************************************************** 00083 Function: runPlugin 00084 Description: 00085 Run a plugin for the Evaluation Manager 00086 the result (succes or not will be passed to the Evaluation Manager) 00087 00088 Parameters: 00089 pluginname: the name of the plugin module 00090 Returns: 00091 0: plugin run succeeded 00092 1: plugin run failed 00093 ******************************************************************************/ 00094 extern int runPlugin( 00095 const char * pluginname 00096 ); 00097 00098 /****************************************************************************** 00099 Function: resetCredentialData 00100 Description: 00101 Reset the Credential data. 00102 Wrapper around cleanCredentialData() to be used 00103 by the Evaluation Manager, before a new policy is 00104 evaluated 00105 00106 Parameters: 00107 none 00108 Returns: 00109 the return value of cleanCredentialData() 00110 ******************************************************************************/ 00111 extern int resetCredentialData(); 00112 00113 #endif /* _LCMAPS_PLUGINMANAGER_H */ 00114 00115 /****************************************************************************** 00116 CVS Information: 00117 $Source: /cvs/fabric_mgt/gridification/lcmaps/src/pluginmanager/_lcmaps_pluginmanager.h,v $ 00118 $Date: 2003/10/06 12:32:14 $ 00119 $Revision: 1.5 $ 00120 $Author: martijn $ 00121 ******************************************************************************/