33 lines
880 B
C
33 lines
880 B
C
|
#ifndef PROTO_SSL_H
|
||
|
#define PROTO_SSL_H
|
||
|
#include "proto-banner1.h"
|
||
|
|
||
|
extern struct ProtocolParserStream banner_ssl;
|
||
|
extern struct ProtocolParserStream banner_ssl_12;
|
||
|
|
||
|
extern const char *ssl_hello_heartbeat_template;
|
||
|
extern const char *ssl_hello_ticketbleed_template;
|
||
|
extern const char *ssl_hello_sslv3_template;
|
||
|
|
||
|
/**
|
||
|
* Parse the SSL Hello template to find its size
|
||
|
*/
|
||
|
unsigned ssl_hello_size(const void *templ);
|
||
|
|
||
|
/**
|
||
|
* Allocate memory and make a copy of the template, so that we can
|
||
|
* rewrite some fields, such as setting the correct timestamp
|
||
|
*/
|
||
|
char *ssl_hello(const void *templ);
|
||
|
|
||
|
/**
|
||
|
* Add a cipher-spec.
|
||
|
* There are many possible uses for this, but for now it's used for the POODLE
|
||
|
* bug, appending TLS_FALLBACK_SCSV to the list. It may need to reallocate
|
||
|
* the template.
|
||
|
*/
|
||
|
char *ssl_add_cipherspec(void *templ, unsigned cipher_spec, unsigned is_append);
|
||
|
|
||
|
|
||
|
#endif
|