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 LCAS_UTILS_H 00032 #define LCAS_UTILS_H 00033 00034 /****************************************************************************** 00035 Include header files 00036 ******************************************************************************/ 00037 #include <gssapi.h> 00038 #include "lcas_types.h" 00039 00040 /****************************************************************************** 00041 * Module definition 00042 *****************************************************************************/ 00043 00045 /* Beginning of credential functions */ 00046 00047 /****************************************************************************** 00048 Function: lcas_get_dn() 00049 Description: returns user dn 00050 Parameters: 00051 lcas_credential: lcas_credential 00052 Returns: user dn 00053 ******************************************************************************/ 00069 extern char * lcas_get_dn( 00070 lcas_cred_id_t lcas_credential 00071 ); 00072 00073 00074 /****************************************************************************** 00075 Function: lcas_get_gss_cred() 00076 Description: returns globus gss credential 00077 Parameters: 00078 lcas_credential: lcas_credential 00079 Returns: globus gss credential 00080 ******************************************************************************/ 00093 extern gss_cred_id_t lcas_get_gss_cred( 00094 lcas_cred_id_t lcas_credential 00095 ); 00096 /* End of credential functions */ 00098 00100 /* Beginning of filename functions */ 00101 /****************************************************************************** 00102 Function: lcas_genfilename() (copied from GLOBUS gatekeeper.c) 00103 Description: generate an absolute file name given a starting prefix, 00104 a relative or absolute path, and a suffix 00105 Only use prefix if path is relative. 00106 Parameters: 00107 Returns: a pointer to a string which could be freeded. 00108 ******************************************************************************/ 00128 extern char * lcas_genfilename( 00129 char * prefixp, 00130 char * pathp, 00131 char * suffixp 00132 ); 00133 00134 /****************************************************************************** 00135 Function: lcas_getfexist() 00136 Description: picks the first existing file in argument list 00137 Parameters: n : number of paths, 00138 ... : list of paths 00139 Returns: returns filename found or NULL 00140 ******************************************************************************/ 00153 extern char * lcas_getfexist( 00154 int n, 00155 ... 00156 ); 00157 00158 /****************************************************************************** 00159 Function: lcas_findfile() 00160 Description: Checks for file in standard directories 00161 Parameters: name 00162 Returns: returns filename found (should be freeed) or NULL 00163 ******************************************************************************/ 00181 extern char * lcas_findfile( 00182 char * name 00183 ); /* End of filename functions */ 00185 00186 #endif /* LCAS_UTILS_H */ 00187 00188 /****************************************************************************** 00189 CVS Information: 00190 $Source: /cvs/jra1mw/org.glite.security.lcas-interface/interface/lcas_utils.h,v $ 00191 $Date: 2005/02/28 11:45:52 $ 00192 $Revision: 1.3 $ 00193 $Author: msteenba $ 00194 ******************************************************************************/