Mercurial > hg > nginx-quic
comparison src/http/ngx_http.c @ 417:0526206251f6
nginx-0.0.10-2004-09-07-19:29:22 import
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Tue, 07 Sep 2004 15:29:22 +0000 |
parents | b9bd635011de |
children | 47709bff4468 |
comparison
equal
deleted
inserted
replaced
416:b9bd635011de | 417:0526206251f6 |
---|---|
498 } | 498 } |
499 | 499 |
500 in_addr = in_port[p].addrs.elts; | 500 in_addr = in_port[p].addrs.elts; |
501 while (a < in_port[p].addrs.nelts) { | 501 while (a < in_port[p].addrs.nelts) { |
502 | 502 |
503 if (!(ls = ngx_push_array(&cf->cycle->listening))) { | 503 ls = ngx_listening_inet_stream_socket(cf, in_addr[a].addr, |
504 in_port[p].port); | |
505 if (ls == NULL) { | |
504 return NGX_CONF_ERROR; | 506 return NGX_CONF_ERROR; |
505 } | 507 } |
506 | 508 |
507 ngx_memzero(ls, sizeof(ngx_listening_t)); | |
508 | |
509 addr_in = ngx_pcalloc(cf->pool, sizeof(struct sockaddr_in)); | |
510 if (addr_in == NULL) { | |
511 return NGX_CONF_ERROR; | |
512 } | |
513 | |
514 #if (HAVE_SIN_LEN) | |
515 addr_in->sin_len = sizeof(struct sockaddr_in); | |
516 #endif | |
517 addr_in->sin_family = AF_INET; | |
518 addr_in->sin_addr.s_addr = in_addr[a].addr; | |
519 addr_in->sin_port = htons((u_short) in_port[p].port); | |
520 | |
521 ls->addr_text.data = ngx_palloc(cf->pool, INET_ADDRSTRLEN + 6); | |
522 if (ls->addr_text.data == NULL) { | |
523 return NGX_CONF_ERROR; | |
524 } | |
525 | |
526 ls->addr_text.len = ngx_inet_ntop(AF_INET, &in_addr[a].addr, | |
527 ls->addr_text.data, | |
528 INET_ADDRSTRLEN), | |
529 | |
530 ls->addr_text.len += ngx_snprintf((char *) ls->addr_text.data | |
531 + ls->addr_text.len, | |
532 6, ":%d", in_port[p].port); | |
533 | |
534 ls->fd = (ngx_socket_t) -1; | |
535 ls->family = AF_INET; | |
536 ls->type = SOCK_STREAM; | |
537 ls->protocol = IPPROTO_IP; | |
538 #if (WIN32) | |
539 ls->flags = WSA_FLAG_OVERLAPPED; | |
540 #endif | |
541 ls->sockaddr = (struct sockaddr *) addr_in; | |
542 ls->socklen = sizeof(struct sockaddr_in); | |
543 ls->addr = offsetof(struct sockaddr_in, sin_addr); | |
544 ls->addr_text_max_len = INET_ADDRSTRLEN; | |
545 ls->backlog = -1; | 509 ls->backlog = -1; |
546 #if 0 | 510 #if 0 |
547 #if 0 | 511 #if 0 |
548 ls->nonblocking = 1; | 512 ls->nonblocking = 1; |
549 #else | 513 #else |