Main Page | Modules | Data Structures | File List | Data Fields | Globals | Related Pages

_lcmaps_pluginmanager.h

Go to the documentation of this file.
00001 /*                                                                                                            
00002  * Copyright (c) Members of the EGEE Collaboration. 2004.
00003  * See http://eu-egee.org/partners/ for details on the copyright holders.
00004  * For license conditions see the license file or
00005  * http://eu-egee.org/license.html
00006  */
00007 
00008 /*                                                                                                            
00009  * Copyright (c) 2001 EU DataGrid.                                                                             
00010  * For license conditions see http://www.eu-datagrid.org/license.html                                          
00011  *
00012  * Copyright (c) 2001, 2002 by 
00013  *     Martijn Steenbakkers <martijn@nikhef.nl>,
00014  *     David Groep <davidg@nikhef.nl>,
00015  *     NIKHEF Amsterdam, the Netherlands
00016  */
00017 
00031 #ifndef _LCMAPS_PLUGINMANAGER_H
00032 #define _LCMAPS_PLUGINMANAGER_H
00033 
00034 /******************************************************************************
00035                              Include header files
00036 ******************************************************************************/
00037 #include "lcmaps_types.h"
00038 #include "_lcmaps_credential.h"
00039 
00040 /******************************************************************************
00041  *                 Module definition
00042  *****************************************************************************/
00043 
00044 /******************************************************************************
00045 Function:   startPluginManager
00046 Description:
00047     Initialize PluginManager module: 
00048     read from LCMAPS config file, the plugins to be loaded
00049     Initialize evaluation manager (get policy)
00050 
00051 Parameters:
00052 Returns:
00053     0: succes
00054     1: failure
00055 ******************************************************************************/
00056 extern int startPluginManager();
00057 
00058 /******************************************************************************
00059 Function:   stopPluginManager
00060 Description:
00061     Terminate PluginManager module.
00062 
00063 Parameters:
00064 Returns:
00065     0: termination succeeded
00066     1: termination failed
00067 ******************************************************************************/
00068 extern int stopPluginManager();
00069 
00070 /******************************************************************************
00071 Function:   runPluginManager
00072 Description:
00073     Run PluginManager:
00074     Contact Evaluation Manager with list of possible policies --> runs plugins
00075 
00076 Parameters:
00077     request     : RSL request
00078     lcmaps_cred : user credential
00079     npols       : number of policies to be considered for evaluation
00080     policynames : the names of the policies to be considered for evaluation
00081 
00082 Returns:
00083     0: user mapping succeeded
00084     1: user mapping failed
00085 ******************************************************************************/
00086 extern int runPluginManager(
00087         lcmaps_request_t request,
00088         lcmaps_cred_id_t lcmaps_cred,
00089         int npols,
00090         char ** policynames
00091 );
00092 
00093 /******************************************************************************
00094 Function:   runPlugin
00095 Description:
00096     Run a plugin for the Evaluation Manager
00097     the result (succes or not will be passed to the Evaluation Manager)
00098 
00099 Parameters:
00100     pluginname: the name of the plugin module
00101 Returns:
00102     0: plugin run succeeded
00103     1: plugin run failed
00104 ******************************************************************************/
00105 extern int runPlugin(
00106         const char * pluginname
00107 );
00108 
00109 /******************************************************************************
00110 Function:   resetCredentialData
00111 Description:
00112     Reset the Credential data.
00113     Wrapper around cleanCredentialData() to be used
00114     by the Evaluation Manager, before a new policy is
00115     evaluated
00116 
00117 Parameters:
00118     none
00119 Returns:
00120     the return value of cleanCredentialData()
00121 ******************************************************************************/
00122 extern int resetCredentialData();
00123 
00124 #endif /* _LCMAPS_PLUGINMANAGER_H */
00125 
00126 /******************************************************************************
00127 CVS Information:
00128     $Source: /cvs/jra1mw/org.glite.security.lcmaps/src/pluginmanager/_lcmaps_pluginmanager.h,v $
00129     $Date: 2004/12/02 17:14:22 $
00130     $Revision: 1.8 $
00131     $Author: msteenba $
00132 ******************************************************************************/

Generated on Sun May 29 21:22:10 2005 for lcmaps by doxygen 1.3.5