Welcome to mirror list, hosted at ThFree Co, Russian Federation.

ngx_inet.c « core « src - github.com/nginx/nginx.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 55b8354bd2c9b48fa1292bc9a939404a796cd7e2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41

#include <ngx_config.h>
#include <ngx_core.h>


/* AF_INET only */

size_t ngx_sock_ntop(int family, struct sockaddr *addr, char *text, size_t len)
{
    char                *p;
    struct sockaddr_in  *addr_in;

    if (family != AF_INET) {
        return 0;
    }

    addr_in = (struct sockaddr_in *) addr;
    p = (char *) &addr_in->sin_addr;

    return ngx_snprintf(text, len > INET_ADDRSTRLEN ? INET_ADDRSTRLEN : len,
                        "%u.%u.%u.%u",
                        (unsigned char) p[0],
                        (unsigned char) p[1],
                        (unsigned char) p[2],
                        (unsigned char) p[3]);
}


size_t ngx_inet_ntop(int family, char *addr, char *text, size_t len)
{
    if (family != AF_INET) {
        return 0;
    }

    return ngx_snprintf(text, len > INET_ADDRSTRLEN ? INET_ADDRSTRLEN : len,
                        "%u.%u.%u.%u",
                        (unsigned char) addr[0],
                        (unsigned char) addr[1],
                        (unsigned char) addr[2],
                        (unsigned char) addr[3]);
}