summaryrefslogtreecommitdiff
path: root/src/ip.cpp
diff options
context:
space:
mode:
authorPaul Colomiets <pc@gafol.net>2011-05-17 10:12:27 +0200
committerMartin Sustrik <sustrik@250bpm.com>2011-05-17 10:12:27 +0200
commit38e5f8699ccff09a91e37e139c4a86a259ac597b (patch)
treea014574dce93f65a0c4781bdf2798f7caf22d6f9 /src/ip.cpp
parent864c18f797203c06e66e739166b246cfb3d47ce9 (diff)
Better handling of memory error in resolve_ip_hostname
Signed-off-by: Paul Colomiets <pc@gafol.net>
Diffstat (limited to 'src/ip.cpp')
-rw-r--r--src/ip.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/ip.cpp b/src/ip.cpp
index 5de2485..c24d92f 100644
--- a/src/ip.cpp
+++ b/src/ip.cpp
@@ -301,7 +301,16 @@ int zmq::resolve_ip_hostname (sockaddr_storage *addr_, socklen_t *addr_len_,
addrinfo *res;
int rc = getaddrinfo (hostname.c_str (), service.c_str (), &req, &res);
if (rc) {
+
+ switch (rc) {
+ case EAI_MEMORY:
+ errno = ENOMEM;
+ break;
+ default:
errno = EINVAL;
+ break;
+ }
+
return -1;
}