KeyLog.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 1996-2023 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_SRC_SECURITY_KEYLOG_H
10 #define SQUID_SRC_SECURITY_KEYLOG_H
11 
12 #include "log/CustomLog.h"
13 #include "log/forward.h"
14 #include "security/forward.h"
15 
16 namespace Security {
17 
19 class KeyLog: public FormattedLog
20 {
21 public:
22  explicit KeyLog(ConfigParser&);
23 
25  bool canLog() const { return logfile != nullptr; }
26 
28  void record(const CommunicationSecrets &);
29 
31  void dump(std::ostream &) const;
32 };
33 
34 } // namespace Security
35 
36 #endif /* SQUID_SRC_SECURITY_KEYLOG_H */
37 
bool canLog() const
whether record() preconditions are currently satisfied
Definition: KeyLog.h:25
KeyLog(ConfigParser &)
Definition: KeyLog.cc:25
void record(const CommunicationSecrets &)
writes a single (but multi-line) key log entry
Definition: KeyLog.cc:38
a single tls_key_log directive configuration and logging handler
Definition: KeyLog.h:19
void dump(std::ostream &) const
reproduces explicitly-configured squid.conf settings
Definition: KeyLog.cc:59
Logfile * logfile
records writer
Definition: FormattedLog.h:55
Network/connection security abstraction layer.
Definition: Connection.h:33

 

Introduction

Documentation

Support

Miscellaneous