the upcoming 2.0 version
https://redmine.lighttpd.net/projects/lighttpd2
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
29 lines
998 B
29 lines
998 B
#ifndef _LIGHTTPD_OPENSSL_FILTER_H_ |
|
#define _LIGHTTPD_OPENSSL_FILTER_H_ |
|
|
|
#include <lighttpd/base.h> |
|
|
|
#include <openssl/ssl.h> |
|
|
|
typedef struct liOpenSSLFilter liOpenSSLFilter; |
|
|
|
typedef void (*liOpenSSLFilterHandshakeCB)(liOpenSSLFilter *f, gpointer data, liStream *plain_source, liStream *plain_drain); |
|
typedef void (*liOpenSSLFilterClosedCB)(liOpenSSLFilter *f, gpointer data); |
|
|
|
typedef struct liOpenSSLFilterCallbacks liOpenSSLFilterCallbacks; |
|
struct liOpenSSLFilterCallbacks { |
|
liOpenSSLFilterHandshakeCB handshake_cb; /* called after initial handshake is done */ |
|
liOpenSSLFilterClosedCB closed_cb; |
|
}; |
|
|
|
LI_API liOpenSSLFilter* li_openssl_filter_new( |
|
liServer *srv, liWorker *wrk, |
|
const liOpenSSLFilterCallbacks *callbacks, gpointer data, |
|
SSL_CTX *ssl_ctx, liStream *crypt_source, liStream *crypt_drain); |
|
|
|
/* doesn't call closed_cb; but you can call this from closed_cb */ |
|
LI_API void li_openssl_filter_free(liOpenSSLFilter *f); |
|
|
|
LI_API SSL* li_openssl_filter_ssl(liOpenSSLFilter *f); |
|
|
|
#endif
|
|
|