creds_store.h

Go to the documentation of this file.
00001 /* Copyright (c) 2008 Telefónica Investigación y Desarrollo SAU.
00002 
00003 This file is part of LinuxMD-XOS. LinuxMD-XOS is part of XtreemOS, a Linux-based Grid Operating System, see <http://www.xtreemos.eu> for more details. The XtreemOS project has been developed with the financial support of the European Commission's IST program under contract #FP6-033576.
00004 
00005 LinuxMD-XOS is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version.
00006 
00007 LinuxMD-XOS is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
00008 
00009 You should have received a copy of the GNU General Public License along with LinuxMD-XOS. If not, see <http://www.gnu.org/licenses/>.
00010 */
00011 
00022 #ifndef CREDS_STORE_H
00023 #define CREDS_STORE_H
00024 
00034 #define XOS_CREDENTIAL_MAXSIZE 10000
00035 
00041 struct creds_store_funcs {
00050   int (*store_cred) (char* data_in_pem_format);
00064   char* (*retrieve_cred) (char *config_name);
00073   int (*set_cred_timeout) (int timeout);
00082   int (*delete_cred) ();
00094   char * (*get_current_cred_configname) ();
00107   int (*set_current_cred_configname)(char *config_name);
00123   int (*check_cred_is_available) (char *config_name); 
00147   char *(*join_new_session) ();
00161   int (*exit_session) ();
00181   int (*join_default_user_session) ();
00198   int (*protect_credstore) ();
00199 
00200 };
00201 
00202 typedef const struct creds_store_funcs * xoscredstore_h;
00212 const struct creds_store_funcs * get_creds_store_funcs();
00224 const struct creds_store_funcs * get_creds_store_funcs_by_impl(char* impl);
00225 
00226 #endif

Generated on Fri Dec 18 14:27:24 2009 for libcredstore by  doxygen 1.5.1