Back to index

courier  0.68.2
tlsclient.h
Go to the documentation of this file.
00001 #ifndef       tlsclient_h
00002 #define       tlsclient_h
00003 
00004 /*
00005 ** Copyright 2000-2001 Double Precision, Inc.
00006 ** See COPYING for distribution information.
00007 */
00008 
00009 
00010 #ifdef  __cplusplus
00011 extern "C" {
00012 #endif
00013 
00014 #include "config.h"
00015 #include <sys/types.h>
00016 #include <stdlib.h>
00017 
00018 struct tls_subjitem {
00019        struct tls_subjitem *nextitem;
00020        const char *name;
00021        const char *value;
00022 } ;
00023 
00024 struct tls_subject {
00025        struct tls_subject *next;
00026        struct tls_subjitem *firstitem;
00027 } ;
00028 
00029 struct couriertls_info {
00030        char errmsg[128];
00031        char *x509info;
00032        size_t x509info_len;
00033        size_t x509info_size;
00034 
00035        struct tls_subject *first_subject;
00036 
00037        const char *cipher;
00038        const char *version;
00039        int bits;
00040 } ;
00041 
00042 void couriertls_init(struct couriertls_info *);
00043 int couriertls_start(char **, struct couriertls_info *);
00044 
00045 const char *couriertls_get_subject(struct couriertls_info *, const char *subject);
00046 void couriertls_export_subject_environment(struct couriertls_info *);
00047 
00048 void couriertls_destroy(struct couriertls_info *);
00049 
00050 #ifdef  __cplusplus
00051 }
00052 #endif
00053 
00054 #endif