OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [linux/] [uClibc/] [libc/] [inet/] [herror.c] - Blame information for rev 1771

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 1325 phoenix
/*
2
 * Copyright (c) 1987 Regents of the University of California.
3
 * All rights reserved.
4
 *
5
 * Redistribution and use in source and binary forms are permitted
6
 * provided that: (1) source distributions retain this entire copyright
7
 * notice and comment, and (2) distributions including binaries display
8
 * the following acknowledgement:  ``This product includes software
9
 * developed by the University of California, Berkeley and its contributors''
10
 * in the documentation or other materials provided with the distribution
11
 * and in all advertising materials mentioning features or use of this
12
 * software. Neither the name of the University nor the names of its
13
 * contributors may be used to endorse or promote products derived
14
 * from this software without specific prior written permission.
15
 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
16
 * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
17
 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
18
 */
19
 
20
#define __FORCE_GLIBC
21
#include <features.h>
22
#include <stdio.h>
23
#include <string.h>
24
#include <netdb.h>
25
 
26
static const char *error_msg = "Resolver error";
27
static const char *const h_errlist[] = {
28
        "Error 0",
29
        "Unknown host",                     /* 1 HOST_NOT_FOUND */
30
        "Host name lookup failure",         /* 2 TRY_AGAIN */
31
        "Unknown server error",             /* 3 NO_RECOVERY */
32
        "No address associated with name",  /* 4 NO_ADDRESS */
33
};
34
static const int h_nerr = { sizeof(h_errlist)/sizeof(h_errlist[0]) };
35
 
36
/*
37
 * herror -- print the error indicated by the h_errno value.
38
 */
39
void herror(const char *s)
40
{
41
        static const char colon_space[] = ": ";
42
        const char *p;
43
        const char *c;
44
 
45
        c = colon_space;
46
        if (!s || !*s) {
47
                c += 2;
48
        }
49
        p = error_msg;
50
        if ((h_errno >= 0) && (h_errno < h_nerr)) {
51
            p = h_errlist[h_errno];
52
        }
53
        fprintf(stderr, "%s%s%s\n", s, c, p);
54
}
55
 
56
 
57
const char *hstrerror(int err)
58
{
59
    if (err < 0) {
60
        return(error_msg);
61
    } else if (err < h_nerr) {
62
        return(h_errlist[err]);
63
    }
64
    return(error_msg);
65
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.