]> The Tcpdump Group git mirrors - libpcap/blobdiff - sslutils.h
CI: Call print_so_deps() on rpcapd in remote enabled build
[libpcap] / sslutils.h
index 6c9504092b5af0cfe901b72dc8994cafa234313f..3a36c61b7f228e7c8f321921419c4ec71e0bca66 100644 (file)
 #define __SSLUTILS_H__
 
 #ifdef HAVE_OPENSSL
+#include "pcap/socket.h"  // for PCAP_SOCKET
+// If this is OpenSSL 1.0, at least one header may trigger a -Wdocumentation
+// in Clang, which should not be a problem of this header or a file that
+// includes it.
+#include "diag-control.h"
+DIAG_OFF_DOCUMENTATION
 #include <openssl/ssl.h>
 #include <openssl/err.h>
-#include "pcap/pcap.h"  // for SOCKET
-
-/*
- * Configuration parameters
- */
-
-extern char ssl_keyfile[PATH_MAX];
-extern char ssl_certfile[PATH_MAX];
-extern char ssl_rootfile[PATH_MAX];
+DIAG_ON_DOCUMENTATION
 
 /*
  * Utility functions
  */
 
-void init_ssl_or_die(int is_server, int enable_compression);
-SSL *ssl_promotion(int is_server, SOCKET s, char *errbuf, size_t errbuflen);
-SSL *ssl_promotion_rw(int is_server, SOCKET in, SOCKET out, char *errbuf, size_t errbuflen);
+void ssl_set_certfile(const char *certfile);
+void ssl_set_keyfile(const char *keyfile);
+int ssl_init_once(int is_server, int enable_compression, char *errbuf, size_t errbuflen);
+SSL *ssl_promotion(int is_server, PCAP_SOCKET s, char *errbuf, size_t errbuflen);
+void ssl_finish(SSL *ssl);
 int ssl_send(SSL *, char const *buffer, int size, char *errbuf, size_t errbuflen);
 int ssl_recv(SSL *, char *buffer, int size, char *errbuf, size_t errbuflen);