diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2008-09-14 14:26:35 +0000 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2008-09-14 14:26:35 +0000 |
| commit | 8687877139a39b4f8ddb2aba707d879c187443a1 (patch) | |
| tree | 0d90b49ef9d247f6d54d334765859cc847a589f8 /src/SocketCore.cc | |
| parent | 72da43e47f66ac75050768ef8b2d9fa0bba94e3d (diff) | |
2008-09-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added the function to get error message from socket.
* src/SocketCore.cc
* src/SocketCore.h
Diffstat (limited to 'src/SocketCore.cc')
| -rw-r--r-- | src/SocketCore.cc | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/SocketCore.cc b/src/SocketCore.cc index 5c7802fe..65f66f85 100644 --- a/src/SocketCore.cc +++ b/src/SocketCore.cc @@ -768,4 +768,19 @@ ssize_t SocketCore::readDataFrom(char* data, size_t len, return r; } +std::string SocketCore::getSocketError() const +{ + int error; + SOCKOPT_T optlen = sizeof(error); + if(getsockopt(sockfd, SOL_SOCKET, SO_ERROR, &error, &optlen) == -1) { + throw DlAbortEx(StringFormat("Failed to get socket error: %s", + errorMsg()).str()); + } + if(error != 0) { + return strerror(error); + } else { + return ""; + } +} + } // namespace aria2 |
