diff options
author | mcorino <mcorino@users.noreply.github.com> | 2010-07-15 12:36:57 +0000 |
---|---|---|
committer | mcorino <mcorino@users.noreply.github.com> | 2010-07-15 12:36:57 +0000 |
commit | bd3b36337c219d5ed3835a1d744ad5cdfb3add24 (patch) | |
tree | c6775dd172af424baeff55bdfb14da3c8adf880c /ACE | |
parent | 059f0bdf6ebf6bd1a0e3035e0a020e116c3ceeea (diff) | |
download | ATCD-bd3b36337c219d5ed3835a1d744ad5cdfb3add24.tar.gz |
Thu Jul 15 12:35:30 UTC 2010 Martin Corino <mcorino@remedy.nl>
* ace/SSL/SSL_SOCK_Stream.h:
* ace/SSL/SSL_SOCK_Stream.inl:
Added two method overloads available in ACE_SOCK_Stream but
missing from ACE_SSL_SOCK_Stream.
Diffstat (limited to 'ACE')
-rw-r--r-- | ACE/ChangeLog | 7 | ||||
-rw-r--r-- | ACE/ace/SSL/SSL_SOCK_Stream.h | 27 | ||||
-rw-r--r-- | ACE/ace/SSL/SSL_SOCK_Stream.inl | 20 |
3 files changed, 54 insertions, 0 deletions
diff --git a/ACE/ChangeLog b/ACE/ChangeLog index 622b1c79a22..c0a3ec00ef0 100644 --- a/ACE/ChangeLog +++ b/ACE/ChangeLog @@ -1,3 +1,10 @@ +Thu Jul 15 12:35:30 UTC 2010 Martin Corino <mcorino@remedy.nl> + + * ace/SSL/SSL_SOCK_Stream.h: + * ace/SSL/SSL_SOCK_Stream.inl: + Added two method overloads available in ACE_SOCK_Stream but + missing from ACE_SSL_SOCK_Stream. + Thu Jul 15 09:49:28 UTC 2010 Johnny Willemsen <jwillemsen@remedy.nl> * ace/config-doxygen.h: diff --git a/ACE/ace/SSL/SSL_SOCK_Stream.h b/ACE/ace/SSL/SSL_SOCK_Stream.h index 0690dce9839..f7a7da788bd 100644 --- a/ACE/ace/SSL/SSL_SOCK_Stream.h +++ b/ACE/ace/SSL/SSL_SOCK_Stream.h @@ -207,6 +207,18 @@ public: size_t *bytes_transferred = 0) const; /** + * Try to send exactly len bytes into buf (uses the send() call). + * If send() blocks for longer than timeout the number of bytes + * actually sent is returned with errno == ETIME. If a timeout does + * not occur, send_n() return len (i.e., the number of bytes + * requested to be sent). + */ + ssize_t send_n (const void *buf, + size_t len, + const ACE_Time_Value *timeout, + size_t *bytes_transferred = 0) const; + + /** * Try to receive exactly len bytes into buf (uses the recv() call). * The ACE_Time_Value indicates how long to blocking trying to * receive. If timeout == 0, the caller will block until action is @@ -221,6 +233,21 @@ public: int flags, const ACE_Time_Value *timeout, size_t *bytes_transferred = 0) const; + + /** + * Try to receive exactly len bytes into buf (uses the recv() call). + * The ACE_Time_Value indicates how long to blocking trying to + * receive. If timeout == 0, the caller will block until action is + * possible, else will wait until the relative time specified in + * timeout elapses). If recv() blocks for longer than timeout the + * number of bytes actually read is returned with errno == ETIME. + * If a timeout does not occur, recv_n return len (i.e., the number + * of bytes requested to be read). + */ + ssize_t recv_n (void *buf, + size_t len, + const ACE_Time_Value *timeout, + size_t *bytes_transferred = 0) const; //@} /** diff --git a/ACE/ace/SSL/SSL_SOCK_Stream.inl b/ACE/ace/SSL/SSL_SOCK_Stream.inl index 756fd3a858c..ca4e48ee22f 100644 --- a/ACE/ace/SSL/SSL_SOCK_Stream.inl +++ b/ACE/ace/SSL/SSL_SOCK_Stream.inl @@ -252,12 +252,32 @@ ACE_SSL_SOCK_Stream::recv_n (void *buf, int buf_size) const } ACE_INLINE ssize_t +ACE_SSL_SOCK_Stream::recv_n (void *buf, + size_t len, + const ACE_Time_Value *timeout, + size_t *bytes_transferred) const +{ + ACE_TRACE ("ACE_SSL_SOCK_Stream::recv_n"); + return this->recv_n (buf, len, 0, timeout, bytes_transferred); +} + +ACE_INLINE ssize_t ACE_SSL_SOCK_Stream::send_n (const void *buf, int len) const { ACE_TRACE ("ACE_SSL_SOCK_Stream::send_n"); return this->send_n (buf, len, 0); } +ACE_INLINE ssize_t +ACE_SSL_SOCK_Stream::send_n (const void *buf, + size_t len, + const ACE_Time_Value *timeout, + size_t *bytes_transferred) const +{ + ACE_TRACE ("ACE_SSL_SOCK_Stream::send_n"); + return this->send_n (buf, len, 0, timeout, bytes_transferred); +} + ACE_INLINE int ACE_SSL_SOCK_Stream::close_reader (void) { |