X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fnet%2Fserversocket.h;fp=source%2Fnet%2Fserversocket.h;h=10375f03d15f0efc96c66f4d3d52dcde412795cd;hb=50e9f9ea7f7385a2c5931fca2b8fb1103078e67c;hp=0000000000000000000000000000000000000000;hpb=21c596567e3b6fd794ed6af73d304ce2bc70e58f;p=libs%2Fnet.git diff --git a/source/net/serversocket.h b/source/net/serversocket.h new file mode 100644 index 0000000..10375f0 --- /dev/null +++ b/source/net/serversocket.h @@ -0,0 +1,32 @@ +#ifndef MSP_NET_SERVERSOCKET_H_ +#define MSP_NET_SERVERSOCKET_H_ + +#include "socket.h" + +namespace Msp { +namespace Net { + +class ClientSocket; + +/** +ServerSockets are used to receive incoming connections. They cannot be used +for sending and receiving data. +*/ +class ServerSocket: public Socket +{ +protected: + ServerSocket(Family, int, int); + +public: + virtual void listen(const SockAddr &, unsigned = 4) = 0; + + virtual ClientSocket *accept() = 0; +protected: + virtual unsigned do_write(const char *, unsigned); + virtual unsigned do_read(char *, unsigned); +}; + +} // namespace Net +} // namespace Msp + +#endif