1
0
Fork 0
mirror of https://github.com/ossrs/srs.git synced 2025-03-09 15:49:59 +00:00

srs-librtmp: add make ssl/nossl support for sample

This commit is contained in:
winlin 2014-03-02 11:31:31 +08:00
parent b7a62ba131
commit f24f27deb9
8 changed files with 282 additions and 20 deletions

View file

@ -27,11 +27,16 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
/*
#include <srs_lib_simple_socket.hpp>
*/
#include <srs_core.hpp>
#include <srs_protocol_io.hpp>
/**
* the stream over epoll: never wait for data coming, that is async mode.
* simple socket stream,
* use tcp socket, sync block mode, for client like srs-librtmp.
*/
class SimpleSocketStream
class SimpleSocketStream : public ISrsProtocolReaderWriter
{
private:
int fd;
@ -40,6 +45,28 @@ public:
virtual ~SimpleSocketStream();
public:
virtual int create_socket();
virtual int connect(const char* server, int port);
// ISrsBufferReader
public:
virtual int read(const void* buf, size_t size, ssize_t* nread);
// ISrsProtocolReader
public:
virtual void set_recv_timeout(int64_t timeout_us);
virtual int64_t get_recv_timeout();
virtual int64_t get_recv_bytes();
virtual int get_recv_kbps();
// ISrsProtocolWriter
public:
virtual void set_send_timeout(int64_t timeout_us);
virtual int64_t get_send_timeout();
virtual int64_t get_send_bytes();
virtual int get_send_kbps();
virtual int writev(const iovec *iov, int iov_size, ssize_t* nwrite);
// ISrsProtocolReaderWriter
public:
virtual bool is_never_timeout(int64_t timeout_us);
virtual int read_fully(const void* buf, size_t size, ssize_t* nread);
virtual int write(const void* buf, size_t size, ssize_t* nwrite);
};
#endif