Changeset 792a93b for lib/ssl_client.h
- Timestamp:
- 2011-12-23T12:44:08Z (12 years ago)
- Branches:
- master
- Children:
- 200e151
- Parents:
- 2d93a51e (diff), 41658da (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
lib/ssl_client.h
r2d93a51e r792a93b 37 37 /* Some generic error codes. Especially SSL_AGAIN is important if you 38 38 want to do asynchronous I/O. */ 39 #define NSS_VERIFY_ERROR -2 40 #define OPENSSL_VERIFY_ERROR -1 39 41 #define SSL_OK 0 40 42 #define SSL_NOHANDSHAKE 1 41 43 #define SSL_AGAIN 2 44 #define VERIFY_CERT_ERROR 2 45 #define VERIFY_CERT_INVALID 4 46 #define VERIFY_CERT_REVOKED 8 47 #define VERIFY_CERT_SIGNER_NOT_FOUND 16 48 #define VERIFY_CERT_SIGNER_NOT_CA 32 49 #define VERIFY_CERT_INSECURE_ALGORITHM 64 50 #define VERIFY_CERT_NOT_ACTIVATED 128 51 #define VERIFY_CERT_EXPIRED 256 52 #define VERIFY_CERT_WRONG_HOSTNAME 512 42 53 43 54 extern int ssl_errno; 44 55 45 56 /* This is what your callback function should look like. */ 46 typedef gboolean (*ssl_input_function)(gpointer, void*, b_input_condition);57 typedef gboolean (*ssl_input_function)(gpointer, int, void*, b_input_condition); 47 58 48 59 … … 53 64 ready to be used for SSL traffic. This is all done asynchronously, no 54 65 blocking I/O! (Except for the DNS lookups, for now...) */ 55 G_MODULE_EXPORT void *ssl_connect( char *host, int port, ssl_input_function func, gpointer data );66 G_MODULE_EXPORT void *ssl_connect( char *host, int port, gboolean verify, ssl_input_function func, gpointer data ); 56 67 57 68 /* Start an SSL session on an existing fd. Useful for STARTTLS functionality, 58 69 for example in Jabber. */ 59 G_MODULE_EXPORT void *ssl_starttls( int fd, ssl_input_function func, gpointer data );70 G_MODULE_EXPORT void *ssl_starttls( int fd, char *hostname, gboolean verify, ssl_input_function func, gpointer data ); 60 71 61 72 /* Obviously you need special read/write functions to read data. */ … … 90 101 G_MODULE_EXPORT b_input_condition ssl_getdirection( void *conn ); 91 102 103 /* Converts a verification bitfield passed to ssl_input_function into 104 a more useful string. Or NULL if it had no useful bits set. */ 105 G_MODULE_EXPORT char *ssl_verify_strerror( int code ); 106 92 107 G_MODULE_EXPORT size_t ssl_des3_encrypt(const unsigned char *key, size_t key_len, const unsigned char *input, size_t input_len, const unsigned char *iv, unsigned char **res);
Note: See TracChangeset
for help on using the changeset viewer.