]> git.ipfire.org Git - thirdparty/glibc.git/blobdiff - resolv/herror.c
Update copyright dates with scripts/update-copyrights
[thirdparty/glibc.git] / resolv / herror.c
index 53780cda720483cc9c2e69ef667422dbeef5f853..45c0a5dbdaf6eb1c5751ea88be2079c59d181077 100644 (file)
@@ -1,6 +1,4 @@
 /*
- * ++Copyright++ 1987, 1993
- * -
  * Copyright (c) 1987, 1993
  *    The Regents of the University of California.  All rights reserved.
  *
  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
- * -
- * Portions Copyright (c) 1993 by Digital Equipment Corporation.
+ */
+
+/*
+ * Portions Copyright (c) 1996-1999 by Internet Software Consortium.
  *
  * Permission to use, copy, modify, and distribute this software for any
  * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies, and that
- * the name of Digital Equipment Corporation not be used in advertising or
- * publicity pertaining to distribution of the document or software without
- * specific, written prior permission.
+ * copyright notice and this permission notice appear in all copies.
  *
- * THE SOFTWARE IS PROVIDED "AS IS" AND DIGITAL EQUIPMENT CORP. DISCLAIMS ALL
- * WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS.   IN NO EVENT SHALL DIGITAL EQUIPMENT
- * CORPORATION BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
+ * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM DISCLAIMS
+ * ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE
+ * CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
  * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
  * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
  * ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
  * SOFTWARE.
- * -
- * --Copyright--
  */
 
-#if defined(LIBC_SCCS) && !defined(lint)
-static char sccsid[] = "@(#)herror.c   8.1 (Berkeley) 6/4/93";
-static char rcsid[] = "$Id$";
-#endif /* LIBC_SCCS and not lint */
-
 #include <sys/types.h>
 #include <sys/param.h>
 #include <sys/uio.h>
+
+#include <netinet/in.h>
+#include <arpa/nameser.h>
+
 #include <netdb.h>
-#if defined(BSD) && (BSD >= 199103)
-# include <unistd.h>
-# include <string.h>
-#else
-# include "../conf/portability.h"
-#endif
+#include <resolv.h>
+#include <string.h>
+#include <unistd.h>
+
+#include <libintl.h>
+#include <not-cancel.h>
 
-const char *h_errlist[] = {
+const char *const h_errlist[] = {
        N_("Resolver Error 0 (no error)"),
        N_("Unknown host"),                     /* 1 HOST_NOT_FOUND */
        N_("Host name lookup failure"),         /* 2 TRY_AGAIN */
        N_("Unknown server error"),             /* 3 NO_RECOVERY */
        N_("No address associated with name"),  /* 4 NO_ADDRESS */
 };
-int    h_nerr = { sizeof h_errlist / sizeof h_errlist[0] };
-
-#ifndef h_errno
-extern int     h_errno;
-#endif
+const int      h_nerr = { sizeof h_errlist / sizeof h_errlist[0] };
 
 /*
  * herror --
  *     print the error indicated by the h_errno value.
  */
 void
-herror(s)
-       const char *s;
-{
-       struct iovec iov[4];
-       register struct iovec *v = iov;
+herror(const char *s) {
+       struct iovec iov[4], *v = iov;
 
-       if (s && *s) {
-               v->iov_base = (char *)s;
+       if (s != NULL && *s != '\0') {
+               v->iov_base = (/*noconst*/ char *)s;
                v->iov_len = strlen(s);
                v++;
-               v->iov_base = ": ";
+               v->iov_base = (char *) ": ";
                v->iov_len = 2;
                v++;
        }
        v->iov_base = (char *)hstrerror(h_errno);
        v->iov_len = strlen(v->iov_base);
        v++;
-       v->iov_base = "\n";
+       v->iov_base = (char *) "\n";
        v->iov_len = 1;
-       __writev(STDERR_FILENO, iov, (v - iov) + 1);
+       __writev_nocancel_nostatus(STDERR_FILENO, iov, (v - iov) + 1);
 }
 
+/*
+ * hstrerror --
+ *     return the string associated with a given "host" errno value.
+ */
 const char *
-hstrerror(err)
-       int err;
-{
+hstrerror(int err) {
        if (err < 0)
                return _("Resolver internal error");
        else if (err < h_nerr)
                return _(h_errlist[err]);
        return _("Unknown resolver error");
 }
+libc_hidden_def (hstrerror)