summaryrefslogtreecommitdiff
path: root/drivers/openssl/stream_peer_ssl.h
blob: a126f6122cb383edfdc9ca4af7b1576124a72ea5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#ifndef STREAM_PEER_SSL_H
#define STREAM_PEER_SSL_H

#include "io/stream_peer.h"

class StreamPeerSSL : public StreamPeer {

	OBJ_TYPE(StreamPeerSSL,StreamPeer);

	Ref<StreamPeer> base;
	bool block;
	static BIO_METHOD bio_methods;

	static int bio_create( BIO *b );
	static int bio_destroy( BIO *b );
	static int bio_read( BIO *b, char *buf, int len );
	static int bio_write( BIO *b, const char *buf, int len );
	static long bio_ctrl( BIO *b, int cmd, long num, void *ptr );
	static int bio_gets( BIO *b, char *buf, int len );
	static int bio_puts( BIO *b, const char *str );

public:
	StreamPeerSSL();
};

#endif // STREAM_PEER_SSL_H