io_tls.h

Go to the documentation of this file.
00001 /***************************************************************************
00002  $RCSfile$
00003                              -------------------
00004     cvs         : $Id: crypttoken.h 1113 2007-01-10 09:14:16Z martin $
00005     begin       : Wed Mar 16 2005
00006     copyright   : (C) 2005 by Martin Preuss
00007     email       : martin@libchipcard.de
00008 
00009  ***************************************************************************
00010  *          Please see toplevel file COPYING for license details           *
00011  ***************************************************************************/
00012 
00013 
00014 #ifndef GWEN_IOLAYER_TLS_H
00015 #define GWEN_IOLAYER_TLS_H
00016 
00017 #include <gwenhywfar/iolayer.h>
00018 #include <gwenhywfar/ssl_cert_descr.h>
00019 
00020 #ifdef __cplusplus
00021 extern "C" {
00022 #endif
00023 
00024 
00029 #define GWEN_IO_LAYER_TLS_TYPE "tls"
00030 
00034 #define GWEN_IO_LAYER_TLS_FLAGS_REQUEST_CERT        0x00000001
00035 #define GWEN_IO_LAYER_TLS_FLAGS_FORCE_SSL_V3        0x00000002
00036 #define GWEN_IO_LAYER_TLS_FLAGS_ALLOW_V1_CA_CRT     0x00000004
00037 #define GWEN_IO_LAYER_TLS_FLAGS_NEED_PEER_CERT      0x00000008
00038 #define GWEN_IO_LAYER_TLS_FLAGS_ADD_TRUSTED_CAS     0x00000010
00039 #define GWEN_IO_LAYER_TLS_FLAGS_SET_PASSV_HOST_NAME 0x00000020
00040 #define GWEN_IO_LAYER_TLS_FLAGS_SET_PASSV_HOST_IP   0x00000020
00041 
00042 #define GWEN_IO_LAYER_TLS_FLAGS_SECURE              0x00008000
00043 
00044 
00045 
00046 
00047 GWENHYWFAR_API GWEN_IO_LAYER *GWEN_Io_LayerTls_new(GWEN_IO_LAYER *baseLayer);
00048 
00049 
00050 GWENHYWFAR_API const char *GWEN_Io_LayerTls_GetLocalCertFile(const GWEN_IO_LAYER *io);
00051 GWENHYWFAR_API void GWEN_Io_LayerTls_SetLocalCertFile(GWEN_IO_LAYER *io, const char *s);
00052 
00053 GWENHYWFAR_API const char *GWEN_Io_LayerTls_GetLocalKeyFile(const GWEN_IO_LAYER *io);
00054 GWENHYWFAR_API void GWEN_Io_LayerTls_SetLocalKeyFile(GWEN_IO_LAYER *io, const char *s);
00055 
00056 GWENHYWFAR_API const char *GWEN_Io_LayerTls_GetLocalTrustFile(const GWEN_IO_LAYER *io);
00057 GWENHYWFAR_API void GWEN_Io_LayerTls_SetLocalTrustFile(GWEN_IO_LAYER *io, const char *s);
00058 
00059 GWENHYWFAR_API const char *GWEN_Io_LayerTls_GetDhParamFile(const GWEN_IO_LAYER *io);
00060 GWENHYWFAR_API void GWEN_Io_LayerTls_SetDhParamFile(GWEN_IO_LAYER *io, const char *s);
00061 
00062 GWENHYWFAR_API const char *GWEN_Io_LayerTls_GetRemoteHostName(const GWEN_IO_LAYER *io);
00063 GWENHYWFAR_API void GWEN_Io_LayerTls_SetRemoteHostName(GWEN_IO_LAYER *io, const char *s);
00064 
00065 GWENHYWFAR_API GWEN_SSLCERTDESCR *GWEN_Io_LayerTls_GetPeerCertDescr(const GWEN_IO_LAYER *io);
00066 
00067 
00068 #ifdef __cplusplus
00069 }
00070 #endif
00071 
00072 
00073 #endif
00074 
00075 

Generated on Sat Jan 2 09:32:35 2010 for gwenhywfar by  doxygen 1.6.1