2 * Copyright (C) 1996-2023 The Squid Software Foundation and contributors
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.
9 #ifndef SQUID_SRC_GLOBALS_H
10 #define SQUID_SRC_GLOBALS_H
12 #include "CacheDigest.h"
18 extern char *ConfigFile
; /* NULL */
19 extern char *IcpOpcodeStr
[];
20 extern char ThisCache
[RFC2181_MAXHOSTNAMELEN
<< 1];
21 extern char ThisCache2
[RFC2181_MAXHOSTNAMELEN
<< 1];
22 extern const char *dash_str
; /* "-" */
23 extern const char *null_string
; /* "" */
24 extern const char *version_string
; /* VERSION */
25 extern const char *appname_string
; /* PACKAGE */
26 extern char const *visible_appname_string
; /* NULL */
27 extern const char *fdTypeStr
[];
28 extern const char *hier_strings
[];
29 extern const char *memStatusStr
[];
30 extern const char *pingStatusStr
[];
31 extern const char *storeStatusStr
[];
32 extern const char *swapStatusStr
[];
33 extern int Biggest_FD
; /* -1 */
34 extern int Number_FD
; /* 0 */
35 extern int Opening_FD
; /* 0 */
36 extern int NDnsServersAlloc
; /* 0 */
37 extern int RESERVED_FD
;
38 extern int Squid_MaxFD
; /* SQUID_MAXFD */
39 extern int opt_reuseaddr
; /* 1 */
40 extern int neighbors_do_private_keys
; /* 1 */
41 extern int opt_catch_signals
; /* 1 */
42 extern int opt_foreground
; /* 0 */
43 extern int opt_foreground_rebuild
; /* 0 */
44 extern char *opt_forwarded_for
; /* NULL */
45 extern int opt_reload_hit_only
; /* 0 */
47 extern int opt_udp_hit_obj
; /* 0 */
48 extern int opt_create_swap_dirs
; /* 0 */
49 extern int opt_store_doublecheck
; /* 0 */
50 extern int syslog_enable
; /* 0 */
51 extern int DnsSocketA
; /* -1 */
52 extern int DnsSocketB
; /* -1 */
53 extern int n_disk_objects
; /* 0 */
54 extern IoStats IOStats
;
56 extern struct timeval squid_start
;
57 extern int starting_up
; /* 1 */
58 extern int shutting_down
; /* 0 */
59 extern int reconfiguring
; /* 0 */
60 extern time_t hit_only_mode_until
; /* 0 */
61 extern double request_failure_ratio
; /* 0.0 */
62 extern int store_hash_buckets
; /* 0 */
63 extern hash_table
*store_table
; /* NULL */
64 extern int hot_obj_count
; /* 0 */
65 extern int CacheDigestHashFuncCount
; /* 4 */
66 extern CacheDigest
*store_digest
; /* NULL */
67 extern const char *StoreDigestFileName
; /* "store_digest" */
68 extern const char *StoreDigestMimeStr
; /* "application/cache-digest" */
70 extern const char *MultipartMsgBoundaryStr
; /* "Unique-Squid-Separator" */
71 #if USE_HTTP_VIOLATIONS
72 extern int refresh_nocache_hack
; /* 0 */
75 extern int store_open_disk_fd
; /* 0 */
76 extern const char *SwapDirType
[];
77 extern int store_swap_low
; /* 0 */
78 extern int store_swap_high
; /* 0 */
79 extern size_t store_pages_max
; /* 0 */
80 extern int64_t store_maxobjsize
; /* 0 */
81 extern int incoming_sockets_accepted
;
83 extern unsigned int WIN32_Socks_initialized
; /* 0 */
86 extern unsigned int WIN32_OS_version
; /* 0 */
87 extern char *WIN32_OS_string
; /* NULL */
88 extern char *WIN32_Command_Line
; /* NULL */
89 extern char *WIN32_Service_Command_Line
; /* NULL */
90 extern unsigned int WIN32_run_mode
; /* _WIN_SQUID_RUN_MODE_INTERACTIVE */
93 extern int ssl_ex_index_server
; /* -1 */
94 extern int ssl_ctx_ex_index_dont_verify_domain
; /* -1 */
95 extern int ssl_ex_index_cert_error_check
; /* -1 */
96 extern int ssl_ex_index_ssl_error_detail
; /* -1 */
97 extern int ssl_ex_index_ssl_peeked_cert
; /* -1 */
98 extern int ssl_ex_index_ssl_errors
; /* -1 */
99 extern int ssl_ex_index_ssl_cert_chain
; /* -1 */
100 extern int ssl_ex_index_ssl_validation_counter
; /* -1 */
102 extern const char *external_acl_message
; /* NULL */
103 extern int opt_send_signal
; /* -1 */
104 extern int opt_no_daemon
; /* 0 */
105 extern int opt_parse_cfg_only
; /* 0 */
107 /// current Squid process number (e.g., 4).
108 /// Zero for SMP-unaware code and in no-SMP mode.
109 extern int KidIdentifier
; /* 0 */
111 #endif /* SQUID_SRC_GLOBALS_H */