* (though it does declare some macros).
*
* Copyright : Written by and Copyright (C) 2001-2014 the
- * Privoxy team. http://www.privoxy.org/
+ * Privoxy team. https://www.privoxy.org/
*
* Based on the Internet Junkbuster originally written
* by and Copyright (C) 1997 Anonymous Coders and
/* Needed for pcre choice */
#include "config.h"
-#ifdef FEATURE_HTTPS_FILTERING
+#ifdef FEATURE_HTTPS_INSPECTION
#ifdef FEATURE_PTHREAD
# include <pthread.h>
typedef pthread_mutex_t privoxy_mutex_t;
/**
* This macro is used to free a pointer that may be NULL.
* It also sets the variable to NULL after it's been freed.
- * The paramater should be a simple variable without side effects.
+ * The parameter should be a simple variable without side effects.
*/
#define freez(X) { if(X) { free((void*)X); X = NULL ; } }
/**
* A map from a string to another string.
- * This is used for the paramaters passed in a HTTP GET request, and
+ * This is used for the parameters passed in a HTTP GET request, and
* to store the exports when the CGI interface is filling in a template.
*/
struct map
struct map_entry *last;
};
-#ifdef FEATURE_HTTPS_FILTERING
+#ifdef FEATURE_HTTPS_INSPECTION
/*
* Struct of attributes necessary for TLS/SSL connection
*/
char *ocmd; /**< Backup of original cmd for CLF logging */
char *gpc; /**< HTTP method: GET, POST, ... */
char *url; /**< The URL */
- char *ver; /**< Protocol version */
+ char *version; /**< Protocol version */
int status; /**< HTTP Status */
char *host; /**< Host part of URL */
int dcount; /**< How many parts to this domain? (length of dvec) */
#endif /* ndef FEATURE_EXTENDED_HOST_PATTERNS */
-#ifdef FEATURE_HTTPS_FILTERING
- int client_ssl; /**< Flag if we should comunicate with slient over ssl */
- int server_ssl; /**< Flag if we should comunicate with server over ssl */
+#ifdef FEATURE_HTTPS_INSPECTION
+ int client_ssl; /**< Flag if we should communicate with client over ssl */
+ int server_ssl; /**< Flag if we should communicate with server over ssl */
unsigned char hash_of_host_hex[(HASH_OF_HOST_BUF_SIZE * 2) + 1]; /**< chars for hash in hex string and one for '\0' */
unsigned char hash_of_host[HASH_OF_HOST_BUF_SIZE+1]; /**< chars for bytes of hash and one for '\0' */
#endif
};
-#ifdef FEATURE_HTTPS_FILTERING
+#ifdef FEATURE_HTTPS_INSPECTION
/*
* Struct for linked list containing certificates
*/
typedef struct certs_chain {
- char text_buf[CERT_INFO_BUF_SIZE]; /* text info about properties of certificate */
+ char info_buf[CERT_INFO_BUF_SIZE]; /* text info about properties of certificate */
char file_buf[CERT_FILE_BUF_SIZE]; /* buffer for whole certificate - format to save in file */
struct certs_chain *next; /* next certificate in chain of trust */
-}certs_chain_t;
+} certs_chain_t;
#endif
/**
*/
#define CT_GZIP 0x0010U /**< gzip-compressed data. */
#define CT_DEFLATE 0x0020U /**< zlib-compressed data. */
+#define CT_BROTLI 0x0040U /**< Brotli-compressed data. */
/**
* Flag to signal that the server declared the content type,
* so we can differentiate between unknown and undeclared
* content types.
*/
-#define CT_DECLARED 0x0040U
+#define CT_DECLARED 0x0080U
/**
* The mask which includes all actions.
#define ACTION_LIMIT_COOKIE_LIFETIME 0x08000000UL
/** Action bitmap: Delay writes */
#define ACTION_DELAY_RESPONSE 0x10000000UL
-/** Action bitmap: Turn https filtering on */
-#define ACTION_ENABLE_HTTPS_FILTER 0x20000000UL
+/** Action bitmap: Turn https inspection on */
+#define ACTION_HTTPS_INSPECTION 0x20000000UL
/** Action bitmap: Turn certificates verification off */
#define ACTION_IGNORE_CERTIFICATE_ERRORS 0x40000000UL
unsigned long flags;
/**
- * Paramaters for those actions that require them.
+ * Parameters for those actions that require them.
* Each entry is valid if & only if the corresponding entry in "flags" is
* set.
*/
#define CSP_FLAG_UNSUPPORTED_CLIENT_EXPECTATION 0x02000000U
/**
- * Flag for csp->flags: Set if we answered the request ourselve.
+ * Flag for csp->flags: Set if we answered the request ourselves.
*/
#define CSP_FLAG_CRUNCHED 0x04000000U
/* XXX: should be renamed to server_iob */
struct iob iob[1];
-#ifdef FEATURE_HTTPS_FILTERING
+#ifdef FEATURE_HTTPS_INSPECTION
mbedtls_connection_attr mbedtls_server_attr; /* attributes for connection to server */
mbedtls_connection_attr mbedtls_client_attr; /* attributes for connection to client */
#endif
/** List of all headers for this request */
struct list headers[1];
-#ifdef FEATURE_HTTPS_FILTERING
+#ifdef FEATURE_HTTPS_INSPECTION
/** List of all encrypted headers for this request */
struct list https_headers[1];
#endif
*/
char *error_message;
-#ifdef FEATURE_HTTPS_FILTERING
+#ifdef FEATURE_HTTPS_INSPECTION
/* Result of server certificate verification */
uint32_t server_cert_verification_result;
/*
* Server certificate chain of trust including strings with certificates
- * informations and string with whole certificate file
+ * information and string with whole certificate file
*/
struct certs_chain server_certs_chain;
#endif
/** Nonzero if we need to bind() to the new port. */
int need_bind;
-#ifdef FEATURE_HTTPS_FILTERING
+#ifdef FEATURE_HTTPS_INSPECTION
/** Password for proxy ca file **/
char * ca_password;
* INCLUDES the trailing slash.
*/
#define CGI_PREFIX "http://" CGI_SITE_2_HOST CGI_SITE_2_PATH "/"
+#define CGI_PREFIX_HTTPS "https://" CGI_SITE_2_HOST CGI_SITE_2_PATH "/"
#endif /* ndef PROJECT_H_INCLUDED */