PortCfg.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 1996-2021 The Squid Software Foundation and contributors
3  *
4  * Squid software is distributed under GPLv2+ license and includes
5  * contributions from numerous individuals and organizations.
6  * Please see the COPYING and CONTRIBUTORS files for details.
7  */
8 
9 #ifndef SQUID_ANYP_PORTCFG_H
10 #define SQUID_ANYP_PORTCFG_H
11 
12 #include "anyp/forward.h"
13 #include "anyp/ProtocolVersion.h"
14 #include "anyp/TrafficMode.h"
15 #include "base/CodeContext.h"
16 #include "comm/Connection.h"
17 #include "sbuf/SBuf.h"
18 #include "security/ServerOptions.h"
19 
20 namespace AnyP
21 {
22 
23 class PortCfg : public CodeContext
24 {
25 public:
26  PortCfg();
27  ~PortCfg();
29 
30  /* CodeContext API */
31  virtual ScopedId codeContextGist() const override;
32  virtual std::ostream &detailCodeContext(std::ostream &os) const override;
33 
35 
38  char *name; /* visible name */
39  char *defaultsite; /* default web site */
40 
42 
43  bool allow_direct;
44  bool vhost;
45  bool actAsOrigin;
46  bool ignore_cc;
47 
49 
51 
52  int vport;
54  bool workerQueues;
55 
56  struct {
57  unsigned int idle;
58  unsigned int interval;
59  unsigned int timeout;
60  bool enabled;
62 
69 
72 };
73 
74 } // namespace AnyP
75 
78 
81 
82 #if !defined(MAXTCPLISTENPORTS)
83 // Max number of TCP listening ports
84 #define MAXTCPLISTENPORTS 128
85 #endif
86 
87 // TODO: kill this global array. Need to check performance of array vs list though.
88 extern int NHttpSockets;
89 extern int HttpSockets[MAXTCPLISTENPORTS];
90 
91 #endif /* SQUID_ANYP_PORTCFG_H */
92 
Security::ServerOptions secure
TLS configuration options for this listening port.
Definition: PortCfg.h:71
virtual ScopedId codeContextGist() const override
Definition: PortCfg.cc:85
int HttpSockets[MAXTCPLISTENPORTS]
Definition: PortCfg.cc:25
int vport
virtual port support. -1 if dynamic, >0 static
Definition: PortCfg.h:52
bool connection_auth_disabled
Don't support connection oriented auth.
Definition: PortCfg.h:48
bool ignore_cc
Ignore request Cache-Control directives.
Definition: PortCfg.h:46
char * name
Definition: PortCfg.h:38
int disable_pmtu_discovery
Definition: PortCfg.h:53
virtual std::ostream & detailCodeContext(std::ostream &os) const override
appends human-friendly context description line(s) to a cache.log record
Definition: PortCfg.cc:93
AnyP::PortCfgPointer HttpPortList
list of Squid http(s)_port configured
Definition: PortCfg.cc:21
struct AnyP::PortCfg::@27 tcp_keepalive
bool actAsOrigin
update replies to conform with RFC 2616
Definition: PortCfg.h:45
bool enabled
Definition: PortCfg.h:60
Ip::Address s
Definition: PortCfg.h:36
bool workerQueues
whether listening queues should be worker-specific
Definition: PortCfg.h:54
AnyP::PortCfgPointer clone() const
Definition: PortCfg.cc:60
bool allow_direct
Allow direct forwarding in accelerator mode.
Definition: PortCfg.h:43
Definition: forward.h:15
AnyP::ProtocolVersion transport
transport protocol and version received by this port
Definition: PortCfg.h:37
unsigned int timeout
Definition: PortCfg.h:59
unsigned int idle
Definition: PortCfg.h:57
char * defaultsite
Definition: PortCfg.h:39
AnyP::PortCfgPointer FtpPortList
list of Squid ftp_port configured
Definition: PortCfg.cc:22
TLS squid.conf settings for a listening port.
Definition: ServerOptions.h:26
bool vhost
uses host header
Definition: PortCfg.h:44
Comm::ConnectionPointer listenConn
Definition: PortCfg.h:68
PortCfgPointer next
Definition: PortCfg.h:34
int NHttpSockets
Definition: PortCfg.cc:24
unsigned int interval
Definition: PortCfg.h:58
#define MAXTCPLISTENPORTS
Definition: PortCfg.h:84
bool ftp_track_dirs
whether transactions should track FTP directories
Definition: PortCfg.h:50
TrafficMode flags
flags indicating what type of traffic to expect via this port.
Definition: PortCfg.h:41

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors