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) 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 with list of possible policies --> runs plugins
00069 
00070 Parameters:
00071     request     : RSL request
00072     lcmaps_cred : user credential
00073     npols       : number of policies to be considered for evaluation
00074     policynames : the names of the policies to be considered for evaluation
00075 
00076 Returns:
00077     0: user mapping succeeded
00078     1: user mapping failed
00079 ******************************************************************************/
00080 extern int runPluginManager(
00081         lcmaps_request_t request,
00082         lcmaps_cred_id_t lcmaps_cred,
00083         int npols,
00084         char ** policynames
00085 );
00086 
00087 /******************************************************************************
00088 Function:   runPlugin
00089 Description:
00090     Run a plugin for the Evaluation Manager
00091     the result (succes or not will be passed to the Evaluation Manager)
00092 
00093 Parameters:
00094     pluginname: the name of the plugin module
00095 Returns:
00096     0: plugin run succeeded
00097     1: plugin run failed
00098 ******************************************************************************/
00099 extern int runPlugin(
00100         const char * pluginname
00101 );
00102 
00103 /******************************************************************************
00104 Function:   resetCredentialData
00105 Description:
00106     Reset the Credential data.
00107     Wrapper around cleanCredentialData() to be used
00108     by the Evaluation Manager, before a new policy is
00109     evaluated
00110 
00111 Parameters:
00112     none
00113 Returns:
00114     the return value of cleanCredentialData()
00115 ******************************************************************************/
00116 extern int resetCredentialData();
00117 
00118 #endif /* _LCMAPS_PLUGINMANAGER_H */
00119 
00120 /******************************************************************************
00121 CVS Information:
00122     $Source: /local/reps/lcgware/fabric_mgt/gridification/lcmaps/src/pluginmanager/_lcmaps_pluginmanager.h,v $
00123     $Date: 2004/10/01 15:17:31 $
00124     $Revision: 1.7 $
00125     $Author: maart $
00126 ******************************************************************************/

Generated on Sat Oct 2 02:18:26 2004 for edg-lcmaps by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002