comparison src/core/ngx_connection.c @ 2197:74477ea8074f

*) remove zero termination in ngx_inet_ntop() and ngx_sock_ntop() *) use ngx_snprintf() in ngx_inet_ntop() and ngx_sock_ntop() as they are called just once per connection *) NGX_INET_ADDRSTRLEN
author Igor Sysoev <igor@sysoev.ru>
date Thu, 21 Aug 2008 18:47:23 +0000
parents 2a92804f4109
children 5975975eedc0
comparison
equal deleted inserted replaced
2196:fab3fa7339ff 2197:74477ea8074f
35 sin->sin_addr.s_addr = addr; 35 sin->sin_addr.s_addr = addr;
36 sin->sin_port = htons(port); 36 sin->sin_port = htons(port);
37 37
38 38
39 ls->addr_text.data = ngx_pnalloc(cf->pool, 39 ls->addr_text.data = ngx_pnalloc(cf->pool,
40 INET_ADDRSTRLEN - 1 + sizeof(":65535") - 1); 40 NGX_INET_ADDRSTRLEN + sizeof(":65535") - 1);
41 if (ls->addr_text.data == NULL) { 41 if (ls->addr_text.data == NULL) {
42 return NULL; 42 return NULL;
43 } 43 }
44 44
45 len = ngx_inet_ntop(AF_INET, &addr, ls->addr_text.data, INET_ADDRSTRLEN); 45 len = ngx_inet_ntop(AF_INET, &addr, ls->addr_text.data,
46 NGX_INET_ADDRSTRLEN);
46 47
47 ls->addr_text.len = ngx_sprintf(ls->addr_text.data + len, ":%d", port) 48 ls->addr_text.len = ngx_sprintf(ls->addr_text.data + len, ":%d", port)
48 - ls->addr_text.data; 49 - ls->addr_text.data;
49 50
50 ls->fd = (ngx_socket_t) -1; 51 ls->fd = (ngx_socket_t) -1;
51 ls->family = AF_INET; 52 ls->family = AF_INET;
52 ls->type = SOCK_STREAM; 53 ls->type = SOCK_STREAM;
53 ls->sockaddr = (struct sockaddr *) sin; 54 ls->sockaddr = (struct sockaddr *) sin;
54 ls->socklen = sizeof(struct sockaddr_in); 55 ls->socklen = sizeof(struct sockaddr_in);
55 ls->addr = offsetof(struct sockaddr_in, sin_addr); 56 ls->addr = offsetof(struct sockaddr_in, sin_addr);
56 ls->addr_text_max_len = INET_ADDRSTRLEN; 57 ls->addr_text_max_len = NGX_INET_ADDRSTRLEN;
57 58
58 return ls; 59 return ls;
59 } 60 }
60 61
61 62
102 "unsupported family", ls[i].fd); 103 "unsupported family", ls[i].fd);
103 ls[i].ignore = 1; 104 ls[i].ignore = 1;
104 continue; 105 continue;
105 } 106 }
106 107
107 ls[i].addr_text_max_len = INET_ADDRSTRLEN; 108 ls[i].addr_text_max_len = NGX_INET_ADDRSTRLEN;
108 109
109 ls[i].addr_text.data = ngx_pnalloc(cycle->pool, 110 ls[i].addr_text.data = ngx_pnalloc(cycle->pool,
110 INET_ADDRSTRLEN - 1 + sizeof(":65535") - 1); 111 NGX_INET_ADDRSTRLEN + sizeof(":65535") - 1);
111 if (ls[i].addr_text.data == NULL) { 112 if (ls[i].addr_text.data == NULL) {
112 return NGX_ERROR; 113 return NGX_ERROR;
113 } 114 }
114 115
115 ls[i].family = sin->sin_family; 116 ls[i].family = sin->sin_family;
116 len = ngx_sock_ntop(ls[i].family, ls[i].sockaddr, 117 len = ngx_sock_ntop(ls[i].family, ls[i].sockaddr,
117 ls[i].addr_text.data, INET_ADDRSTRLEN); 118 ls[i].addr_text.data, NGX_INET_ADDRSTRLEN);
118 if (len == 0) { 119 if (len == 0) {
119 return NGX_ERROR; 120 return NGX_ERROR;
120 } 121 }
121 122
122 ls[i].addr_text.len = ngx_sprintf(ls[i].addr_text.data + len, ":%d", 123 ls[i].addr_text.len = ngx_sprintf(ls[i].addr_text.data + len, ":%d",