projects
/
privoxy.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Update RSS feed to include the macOS packages for Privoxy 3.0.33
[privoxy.git]
/
ssl_common.c
diff --git
a/ssl_common.c
b/ssl_common.c
index
ac146f8
..
35970eb
100644
(file)
--- a/
ssl_common.c
+++ b/
ssl_common.c
@@
-290,8
+290,8
@@
extern void free_certificate_chain(struct client_state *csp)
/* Cleaning buffers */
memset(csp->server_certs_chain.info_buf, 0,
sizeof(csp->server_certs_chain.info_buf));
/* Cleaning buffers */
memset(csp->server_certs_chain.info_buf, 0,
sizeof(csp->server_certs_chain.info_buf));
- memset(csp->server_certs_chain.file_buf, 0,
- sizeof(csp->server_certs_chain.file_buf));
+ freez(csp->server_certs_chain.file_buf);
+
csp->server_certs_chain.next = NULL;
/* Freeing memory in whole linked list */
csp->server_certs_chain.next = NULL;
/* Freeing memory in whole linked list */
@@
-299,6
+299,11
@@
extern void free_certificate_chain(struct client_state *csp)
{
struct certs_chain *cert_for_free = cert;
cert = cert->next;
{
struct certs_chain *cert_for_free = cert;
cert = cert->next;
+
+ /* Cleaning buffers */
+ memset(cert_for_free->info_buf, 0, sizeof(cert_for_free->info_buf));
+ freez(cert_for_free->file_buf);
+
freez(cert_for_free);
}
}
freez(cert_for_free);
}
}
@@
-405,6
+410,16
@@
extern void ssl_send_certificate_error(struct client_state *csp)
}
strlcat(message, message_end, message_len);
}
strlcat(message, message_end, message_len);
+ if (0 == strcmpic(csp->http->gpc, "HEAD"))
+ {
+ /* Cut off body */
+ char *header_end = strstr(message, "\r\n\r\n");
+ if (header_end != NULL)
+ {
+ header_end[3] = '\0';
+ }
+ }
+
/*
* Sending final message to client
*/
/*
* Sending final message to client
*/