diff options
author | Ben Magistro <koncept1@gmail.com> | 2022-04-17 09:45:02 -0400 |
---|---|---|
committer | Ben Magistro <koncept1@gmail.com> | 2022-04-20 21:30:13 -0400 |
commit | bf8c01bfcd015d43cfbcb893e48c6a83a95c91ec (patch) | |
tree | d4871f553a40aaed8cf98165f1e4f07584cfb95e /app/nginx/src/stream/ngx_stream_upstream_round_robin.h | |
parent | 862937c477a3d90798a5e4c4e84fc7c79aae52fe (diff) |
Drop nginxdev-mitm-proxy
Nginx is not part of the core library being developed and needs to
be moved to its own repository to allow it to be more easily
maintained.
Signed-off-by: Ben Magistro <koncept1@gmail.com>
Change-Id: I5639e84ba0564ccd49ffcffa7ec9fcd57827bd6d
Diffstat (limited to 'app/nginx/src/stream/ngx_stream_upstream_round_robin.h')
-rw-r--r-- | app/nginx/src/stream/ngx_stream_upstream_round_robin.h | 146 |
1 files changed, 0 insertions, 146 deletions
diff --git a/app/nginx/src/stream/ngx_stream_upstream_round_robin.h b/app/nginx/src/stream/ngx_stream_upstream_round_robin.h deleted file mode 100644 index 35d9fce..0000000 --- a/app/nginx/src/stream/ngx_stream_upstream_round_robin.h +++ /dev/null @@ -1,146 +0,0 @@ - -/* - * Copyright (C) Igor Sysoev - * Copyright (C) Nginx, Inc. - */ - - -#ifndef _NGX_STREAM_UPSTREAM_ROUND_ROBIN_H_INCLUDED_ -#define _NGX_STREAM_UPSTREAM_ROUND_ROBIN_H_INCLUDED_ - - -#include <ngx_config.h> -#include <ngx_core.h> -#include <ngx_stream.h> - - -typedef struct ngx_stream_upstream_rr_peer_s ngx_stream_upstream_rr_peer_t; - -struct ngx_stream_upstream_rr_peer_s { - struct sockaddr *sockaddr; - socklen_t socklen; - ngx_str_t name; - ngx_str_t server; - - ngx_int_t current_weight; - ngx_int_t effective_weight; - ngx_int_t weight; - - ngx_uint_t conns; - ngx_uint_t max_conns; - - ngx_uint_t fails; - time_t accessed; - time_t checked; - - ngx_uint_t max_fails; - time_t fail_timeout; - ngx_msec_t slow_start; - ngx_msec_t start_time; - - ngx_uint_t down; - - void *ssl_session; - int ssl_session_len; - -#if (NGX_STREAM_UPSTREAM_ZONE) - ngx_atomic_t lock; -#endif - - ngx_stream_upstream_rr_peer_t *next; - - NGX_COMPAT_BEGIN(25) - NGX_COMPAT_END -}; - - -typedef struct ngx_stream_upstream_rr_peers_s ngx_stream_upstream_rr_peers_t; - -struct ngx_stream_upstream_rr_peers_s { - ngx_uint_t number; - -#if (NGX_STREAM_UPSTREAM_ZONE) - ngx_slab_pool_t *shpool; - ngx_atomic_t rwlock; - ngx_stream_upstream_rr_peers_t *zone_next; -#endif - - ngx_uint_t total_weight; - - unsigned single:1; - unsigned weighted:1; - - ngx_str_t *name; - - ngx_stream_upstream_rr_peers_t *next; - - ngx_stream_upstream_rr_peer_t *peer; -}; - - -#if (NGX_STREAM_UPSTREAM_ZONE) - -#define ngx_stream_upstream_rr_peers_rlock(peers) \ - \ - if (peers->shpool) { \ - ngx_rwlock_rlock(&peers->rwlock); \ - } - -#define ngx_stream_upstream_rr_peers_wlock(peers) \ - \ - if (peers->shpool) { \ - ngx_rwlock_wlock(&peers->rwlock); \ - } - -#define ngx_stream_upstream_rr_peers_unlock(peers) \ - \ - if (peers->shpool) { \ - ngx_rwlock_unlock(&peers->rwlock); \ - } - - -#define ngx_stream_upstream_rr_peer_lock(peers, peer) \ - \ - if (peers->shpool) { \ - ngx_rwlock_wlock(&peer->lock); \ - } - -#define ngx_stream_upstream_rr_peer_unlock(peers, peer) \ - \ - if (peers->shpool) { \ - ngx_rwlock_unlock(&peer->lock); \ - } - -#else - -#define ngx_stream_upstream_rr_peers_rlock(peers) -#define ngx_stream_upstream_rr_peers_wlock(peers) -#define ngx_stream_upstream_rr_peers_unlock(peers) -#define ngx_stream_upstream_rr_peer_lock(peers, peer) -#define ngx_stream_upstream_rr_peer_unlock(peers, peer) - -#endif - - -typedef struct { - ngx_uint_t config; - ngx_stream_upstream_rr_peers_t *peers; - ngx_stream_upstream_rr_peer_t *current; - uintptr_t *tried; - uintptr_t data; -} ngx_stream_upstream_rr_peer_data_t; - - -ngx_int_t ngx_stream_upstream_init_round_robin(ngx_conf_t *cf, - ngx_stream_upstream_srv_conf_t *us); -ngx_int_t ngx_stream_upstream_init_round_robin_peer(ngx_stream_session_t *s, - ngx_stream_upstream_srv_conf_t *us); -ngx_int_t ngx_stream_upstream_create_round_robin_peer(ngx_stream_session_t *s, - ngx_stream_upstream_resolved_t *ur); -ngx_int_t ngx_stream_upstream_get_round_robin_peer(ngx_peer_connection_t *pc, - void *data); -void ngx_stream_upstream_free_round_robin_peer(ngx_peer_connection_t *pc, - void *data, ngx_uint_t state); - - -#endif /* _NGX_STREAM_UPSTREAM_ROUND_ROBIN_H_INCLUDED_ */ |