Tor 0.4.9.0-alpha-dev
proxymode.c
Go to the documentation of this file.
1/* Copyright (c) 2001 Matej Pfajfar.
2 * Copyright (c) 2001-2004, Roger Dingledine.
3 * Copyright (c) 2004-2006, Roger Dingledine, Nick Mathewson.
4 * Copyright (c) 2007-2021, The Tor Project, Inc. */
5/* See LICENSE for licensing information */
6
7/**
8 * @file proxymode.c
9 * @brief Determine whether we are trying to be a proxy.
10 **/
11
12#include "core/or/or.h"
13
14#include "app/config/config.h"
16#include "core/or/port_cfg_st.h"
18
19/** Return true iff we are trying to proxy client connections. */
20int
21proxy_mode(const or_options_t *options)
22{
23 (void)options;
25 if (p->type == CONN_TYPE_AP_LISTENER ||
26 p->type == CONN_TYPE_AP_TRANS_LISTENER ||
27 p->type == CONN_TYPE_AP_DNS_LISTENER ||
29 return 1;
30 } SMARTLIST_FOREACH_END(p);
31 return 0;
32}
const smartlist_t * get_configured_ports(void)
Definition: config.c:6720
Header file for config.c.
Header file for connection.c.
#define CONN_TYPE_AP_NATD_LISTENER
Definition: connection.h:66
#define CONN_TYPE_AP_LISTENER
Definition: connection.h:48
#define CONN_TYPE_AP_DNS_LISTENER
Definition: connection.h:68
#define CONN_TYPE_AP_TRANS_LISTENER
Definition: connection.h:63
Master header file for Tor-specific functionality.
Listener port configuration structure.
int proxy_mode(const or_options_t *options)
Definition: proxymode.c:21
Header file for proxymode.c.
#define SMARTLIST_FOREACH_BEGIN(sl, type, var)