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 00027 #ifndef LCAS_H 00028 #define LCAS_H 00029 00030 /****************************************************************************** 00031 Include header files 00032 ******************************************************************************/ 00033 #include <gssapi.h> 00034 #include "lcas_types.h" 00035 00036 /****************************************************************************** 00037 * Module definition 00038 *****************************************************************************/ 00039 00040 /****************************************************************************** 00041 Function: lcas_init 00042 Description: 00043 Initialize LCAS module: 00044 setup logging, error handling 00045 read from LCAS database the plugins to be loaded 00046 00047 Parameters: 00048 fp: file handle for logging (from gatekeeper) 00049 Returns: 00050 0: initialization succeeded 00051 1: initialization failed 00052 ******************************************************************************/ 00069 extern int lcas_init( 00070 FILE* fp 00071 ); 00072 00073 /****************************************************************************** 00074 Function: lcas_init_and_log 00075 Description: 00076 Select logging type 00077 Setup logging, error handling (not yet). 00078 Read from LCAS database the plugins to be loaded. 00079 Initialize the plugins 00080 00081 Parameters: 00082 fp: file handle for logging (from gatekeeper or other previously opened file handle) 00083 If the file handle is zero, assume that only syslogging is requested 00084 logtype: type of logging (usrlog and/or syslog) 00085 00086 Returns: 00087 0: initialization succeeded 00088 1: initialization failed 00089 ******************************************************************************/ 00109 extern int lcas_init_and_log( 00110 FILE* fp, 00111 unsigned short logtype 00112 ); 00113 00114 /****************************************************************************** 00115 Function: lcas_term 00116 Description: 00117 Terminate LCAS module: 00118 00119 Parameters: 00120 Returns: 00121 0: termination succeeded 00122 1: termination failed 00123 ******************************************************************************/ 00135 extern int lcas_term(); 00136 00137 /****************************************************************************** 00138 Function: lcas_get_fabric_authorization 00139 Description: 00140 Call LCAS in order to get authorization on the local fabric 00141 00142 Parameters: 00143 request: JDL 00144 user_cred : user globus credential handle 00145 Returns: 00146 0: authorization succeeded 00147 1: authorization failed 00148 ******************************************************************************/ 00164 #if ALLOW_EMPTY_CREDENTIALS 00165 extern int lcas_get_fabric_authorization( 00166 char * user_dn_tmp, 00167 gss_cred_id_t user_cred, 00168 lcas_request_t request 00169 ); 00170 #else 00171 extern int lcas_get_fabric_authorization( 00172 gss_cred_id_t user_cred, 00173 lcas_request_t request 00174 ); 00175 #endif 00176 00177 extern int getMajorVersionNumber(); 00178 extern int getMinorVersionNumber(); 00179 extern int getPatchVersionNumber(); 00180 00181 #endif /* LCAS_H */ 00182 00183 /****************************************************************************** 00184 CVS Information: 00185 $Source: /local/reps/lcgware/fabric_mgt/gridification/lcas/include/lcas.h,v $ 00186 $Date: 2004/09/20 10:12:32 $ 00187 $Revision: 2.7 $ 00188 $Author: maart $ 00189 ******************************************************************************/