summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorotto <>2005-11-13 13:22:57 +0000
committerotto <>2005-11-13 13:22:57 +0000
commitdce25ef8a136d51b08acc296985e716caf3fa2ac (patch)
tree9652454fcf7d8710c20bb700172fc7edd67a0edd /src
parent5a2f7d77140bda97c9bbc2cf22250470c32a7b3e (diff)
downloadopenbsd-dce25ef8a136d51b08acc296985e716caf3fa2ac.tar.gz
openbsd-dce25ef8a136d51b08acc296985e716caf3fa2ac.tar.bz2
openbsd-dce25ef8a136d51b08acc296985e716caf3fa2ac.zip
save errno in example code. from mpech@ ok jmc@
Diffstat (limited to 'src')
-rw-r--r--src/lib/libc/net/getaddrinfo.34
1 files changed, 3 insertions, 1 deletions
diff --git a/src/lib/libc/net/getaddrinfo.3 b/src/lib/libc/net/getaddrinfo.3
index 7c3bfe40d7..b7494be811 100644
--- a/src/lib/libc/net/getaddrinfo.3
+++ b/src/lib/libc/net/getaddrinfo.3
@@ -1,4 +1,4 @@
1.\" $OpenBSD: getaddrinfo.3,v 1.41 2005/07/05 22:21:16 dlg Exp $ 1.\" $OpenBSD: getaddrinfo.3,v 1.42 2005/11/13 13:22:57 otto Exp $
2.\" $KAME: getaddrinfo.3,v 1.36 2005/01/05 03:23:05 itojun Exp $ 2.\" $KAME: getaddrinfo.3,v 1.36 2005/01/05 03:23:05 itojun Exp $
3.\" 3.\"
4.\" Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC") 4.\" Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
@@ -304,6 +304,7 @@ returns addresses that are not IPv4/v6.
304.Bd -literal -offset indent 304.Bd -literal -offset indent
305struct addrinfo hints, *res, *res0; 305struct addrinfo hints, *res, *res0;
306int error; 306int error;
307int save_errno = errno;
307int s; 308int s;
308const char *cause = NULL; 309const char *cause = NULL;
309 310
@@ -327,6 +328,7 @@ for (res = res0; res; res = res->ai_next) {
327 if (connect(s, res->ai_addr, res->ai_addrlen) < 0) { 328 if (connect(s, res->ai_addr, res->ai_addrlen) < 0) {
328 cause = "connect"; 329 cause = "connect";
329 close(s); 330 close(s);
331 errno = save_errno;
330 s = -1; 332 s = -1;
331 continue; 333 continue;
332 } 334 }