diff options
| author | otto <> | 2005-11-13 13:22:57 +0000 |
|---|---|---|
| committer | otto <> | 2005-11-13 13:22:57 +0000 |
| commit | dce25ef8a136d51b08acc296985e716caf3fa2ac (patch) | |
| tree | 9652454fcf7d8710c20bb700172fc7edd67a0edd /src/lib/libc | |
| parent | 5a2f7d77140bda97c9bbc2cf22250470c32a7b3e (diff) | |
| download | openbsd-dce25ef8a136d51b08acc296985e716caf3fa2ac.tar.gz openbsd-dce25ef8a136d51b08acc296985e716caf3fa2ac.tar.bz2 openbsd-dce25ef8a136d51b08acc296985e716caf3fa2ac.zip | |
save errno in example code. from mpech@ ok jmc@
Diffstat (limited to '')
| -rw-r--r-- | src/lib/libc/net/getaddrinfo.3 | 4 |
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 |
| 305 | struct addrinfo hints, *res, *res0; | 305 | struct addrinfo hints, *res, *res0; |
| 306 | int error; | 306 | int error; |
| 307 | int save_errno = errno; | ||
| 307 | int s; | 308 | int s; |
| 308 | const char *cause = NULL; | 309 | const 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 | } |
