For bug fixes
Fork of MTS-Socket by
Socket.cpp@18:119547e27ff1, 2014-10-21 (annotated)
- Committer:
- Vanger
- Date:
- Tue Oct 21 17:27:23 2014 +0000
- Revision:
- 18:119547e27ff1
- Parent:
- 1:096f484f3ae6
- Child:
- 19:f9a0041c4501
Added buffer clear flag for close() calls to allow for closing sockets without clearing the data buffers.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Mike Fiore |
1:096f484f3ae6 | 1 | #include "Socket.h" |
Mike Fiore |
1:096f484f3ae6 | 2 | #include <cstring> |
Mike Fiore |
1:096f484f3ae6 | 3 | #include "Transport.h" |
Mike Fiore |
1:096f484f3ae6 | 4 | |
Mike Fiore |
1:096f484f3ae6 | 5 | Socket::Socket() : _blocking(true), _timeout(1500) { |
Mike Fiore |
1:096f484f3ae6 | 6 | ip = Transport::getInstance(); |
Mike Fiore |
1:096f484f3ae6 | 7 | } |
Mike Fiore |
1:096f484f3ae6 | 8 | |
Mike Fiore |
1:096f484f3ae6 | 9 | void Socket::set_blocking(bool blocking, unsigned int timeout) { |
Mike Fiore |
1:096f484f3ae6 | 10 | _blocking = blocking; |
Mike Fiore |
1:096f484f3ae6 | 11 | _timeout = timeout; |
Mike Fiore |
1:096f484f3ae6 | 12 | } |
Mike Fiore |
1:096f484f3ae6 | 13 | |
Vanger | 18:119547e27ff1 | 14 | int Socket::close(bool clearBuffer) { |
Vanger | 18:119547e27ff1 | 15 | return (ip->close(clearBuffer)) ? 0 : -1; |
Mike Fiore |
1:096f484f3ae6 | 16 | } |
Mike Fiore |
1:096f484f3ae6 | 17 | |
Mike Fiore |
1:096f484f3ae6 | 18 | Socket::~Socket() { |
Vanger | 18:119547e27ff1 | 19 | close(true); //Don't want to leak |
Mike Fiore |
1:096f484f3ae6 | 20 | } |