PortCfg.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 1996-2022 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 "comm/Tcp.h"
18 #include "sbuf/SBuf.h"
19 #include "security/ServerOptions.h"
20 
21 namespace AnyP
22 {
23 
24 class PortCfg : public CodeContext
25 {
26 public:
27  PortCfg();
28  // no public copying/moving but see ipV4clone()
29  PortCfg(PortCfg &&) = delete;
30  ~PortCfg();
31 
33  PortCfg *ipV4clone() const;
34 
35  /* CodeContext API */
36  virtual ScopedId codeContextGist() const override;
37  virtual std::ostream &detailCodeContext(std::ostream &os) const override;
38 
40 
43  char *name; /* visible name */
44  char *defaultsite; /* default web site */
45 
47 
48  bool allow_direct;
49  bool vhost;
50  bool actAsOrigin;
51  bool ignore_cc;
52 
54 
56 
57  int vport;
59  bool workerQueues;
60 
62 
69 
72 
73 private:
74  explicit PortCfg(const PortCfg &other); // for ipV4clone() needs only!
75 };
76 
77 } // namespace AnyP
78 
81 
84 
85 #if !defined(MAXTCPLISTENPORTS)
86 // Max number of TCP listening ports
87 #define MAXTCPLISTENPORTS 128
88 #endif
89 
90 // TODO: kill this global array. Need to check performance of array vs list though.
91 extern int NHttpSockets;
92 extern int HttpSockets[MAXTCPLISTENPORTS];
93 
94 #endif /* SQUID_ANYP_PORTCFG_H */
95 
int NHttpSockets
Definition: PortCfg.cc:25
AnyP::PortCfgPointer FtpPortList
list of Squid ftp_port configured
Definition: PortCfg.cc:23
int HttpSockets[MAXTCPLISTENPORTS]
Definition: PortCfg.cc:26
AnyP::PortCfgPointer HttpPortList
list of Squid http(s)_port configured
Definition: PortCfg.cc:22
#define MAXTCPLISTENPORTS
Definition: PortCfg.h:87
bool ftp_track_dirs
whether transactions should track FTP directories
Definition: PortCfg.h:55
Comm::TcpKeepAlive tcp_keepalive
Definition: PortCfg.h:61
bool ignore_cc
Ignore request Cache-Control directives.
Definition: PortCfg.h:51
PortCfgPointer next
Definition: PortCfg.h:39
PortCfg(PortCfg &&)=delete
Security::ServerOptions secure
TLS configuration options for this listening port.
Definition: PortCfg.h:71
int disable_pmtu_discovery
Definition: PortCfg.h:58
char * defaultsite
Definition: PortCfg.h:44
AnyP::ProtocolVersion transport
transport protocol and version received by this port
Definition: PortCfg.h:42
PortCfg * ipV4clone() const
creates the same port configuration but listening on any IPv4 address
Definition: PortCfg.cc:85
bool connection_auth_disabled
Don't support connection oriented auth.
Definition: PortCfg.h:53
Ip::Address s
Definition: PortCfg.h:41
char * name
Definition: PortCfg.h:43
bool vhost
uses host header
Definition: PortCfg.h:49
bool workerQueues
whether listening queues should be worker-specific
Definition: PortCfg.h:59
virtual ScopedId codeContextGist() const override
Definition: PortCfg.cc:95
TrafficMode flags
flags indicating what type of traffic to expect via this port.
Definition: PortCfg.h:46
bool allow_direct
Allow direct forwarding in accelerator mode.
Definition: PortCfg.h:48
virtual std::ostream & detailCodeContext(std::ostream &os) const override
appends human-friendly context description line(s) to a cache.log record
Definition: PortCfg.cc:103
Comm::ConnectionPointer listenConn
Definition: PortCfg.h:68
int vport
virtual port support. -1 if dynamic, >0 static
Definition: PortCfg.h:57
bool actAsOrigin
update replies to conform with RFC 2616
Definition: PortCfg.h:50
Configuration settings for the TCP keep-alive feature.
Definition: Tcp.h:17
TLS squid.conf settings for a listening port.
Definition: ServerOptions.h:26
Definition: forward.h:15

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors