Annotation of embedaddon/nginx/src/event/ngx_event_connect.h, revision 1.1
1.1 ! misho 1:
! 2: /*
! 3: * Copyright (C) Igor Sysoev
! 4: * Copyright (C) Nginx, Inc.
! 5: */
! 6:
! 7:
! 8: #ifndef _NGX_EVENT_CONNECT_H_INCLUDED_
! 9: #define _NGX_EVENT_CONNECT_H_INCLUDED_
! 10:
! 11:
! 12: #include <ngx_config.h>
! 13: #include <ngx_core.h>
! 14: #include <ngx_event.h>
! 15:
! 16:
! 17: #define NGX_PEER_KEEPALIVE 1
! 18: #define NGX_PEER_NEXT 2
! 19: #define NGX_PEER_FAILED 4
! 20:
! 21:
! 22: typedef struct ngx_peer_connection_s ngx_peer_connection_t;
! 23:
! 24: typedef ngx_int_t (*ngx_event_get_peer_pt)(ngx_peer_connection_t *pc,
! 25: void *data);
! 26: typedef void (*ngx_event_free_peer_pt)(ngx_peer_connection_t *pc, void *data,
! 27: ngx_uint_t state);
! 28: #if (NGX_SSL)
! 29:
! 30: typedef ngx_int_t (*ngx_event_set_peer_session_pt)(ngx_peer_connection_t *pc,
! 31: void *data);
! 32: typedef void (*ngx_event_save_peer_session_pt)(ngx_peer_connection_t *pc,
! 33: void *data);
! 34: #endif
! 35:
! 36:
! 37: struct ngx_peer_connection_s {
! 38: ngx_connection_t *connection;
! 39:
! 40: struct sockaddr *sockaddr;
! 41: socklen_t socklen;
! 42: ngx_str_t *name;
! 43:
! 44: ngx_uint_t tries;
! 45:
! 46: ngx_event_get_peer_pt get;
! 47: ngx_event_free_peer_pt free;
! 48: void *data;
! 49:
! 50: #if (NGX_SSL)
! 51: ngx_event_set_peer_session_pt set_session;
! 52: ngx_event_save_peer_session_pt save_session;
! 53: #endif
! 54:
! 55: #if (NGX_THREADS)
! 56: ngx_atomic_t *lock;
! 57: #endif
! 58:
! 59: ngx_addr_t *local;
! 60:
! 61: int rcvbuf;
! 62:
! 63: ngx_log_t *log;
! 64:
! 65: unsigned cached:1;
! 66:
! 67: /* ngx_connection_log_error_e */
! 68: unsigned log_error:2;
! 69: };
! 70:
! 71:
! 72: ngx_int_t ngx_event_connect_peer(ngx_peer_connection_t *pc);
! 73: ngx_int_t ngx_event_get_peer(ngx_peer_connection_t *pc, void *data);
! 74:
! 75:
! 76: #endif /* _NGX_EVENT_CONNECT_H_INCLUDED_ */
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>