view src/event/ngx_event_connect.h @ 872:1c4a5b3f9110

Axe several perl interpreter instances: they may be useful in currently unsupported threaded environment, but now they complicate code: *) perl_clone() requires at least duplicating nginx stash; *) the multiplicity requires to re-evalute all precompiled subroutines and nginx stash in new interpreter context.
author Igor Sysoev <igor@sysoev.ru>
date Sun, 26 Nov 2006 14:35:27 +0000
parents 39b7d7b33c91
children 4d68c486fcb0
line wrap: on
line source


/*
 * Copyright (C) Igor Sysoev
 */


#ifndef _NGX_EVENT_CONNECT_H_INCLUDED_
#define _NGX_EVENT_CONNECT_H_INCLUDED_


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


typedef struct {
    ngx_peers_t        *peers;
    ngx_uint_t          cur_peer;
    ngx_uint_t          tries;

    ngx_connection_t   *connection;
#if (NGX_THREADS)
    ngx_atomic_t       *lock;
#endif

    int                 rcvbuf;

    ngx_log_t          *log;

    unsigned            cached:1;
    unsigned            log_error:2;  /* ngx_connection_log_error_e */
} ngx_peer_connection_t;


ngx_int_t ngx_event_connect_peer(ngx_peer_connection_t *pc);
void ngx_event_connect_peer_failed(ngx_peer_connection_t *pc, ngx_uint_t down);


#endif /* _NGX_EVENT_CONNECT_H_INCLUDED_ */