完成流特征统计插件
This commit is contained in:
50
DataSet/FeatureExtract/entry/include/ssl_utils.h
Normal file
50
DataSet/FeatureExtract/entry/include/ssl_utils.h
Normal file
@@ -0,0 +1,50 @@
|
||||
#pragma once
|
||||
|
||||
#define EXTENSION_COUNT_MAX 128
|
||||
#define CIPHER_SUITE_COUNT_MAX 256
|
||||
|
||||
struct cipher_suite
|
||||
{
|
||||
uint16_t value;
|
||||
const char* name;
|
||||
};
|
||||
|
||||
struct tls_extension{
|
||||
int value;
|
||||
const char* name;
|
||||
};
|
||||
|
||||
enum chello_parse_result
|
||||
{
|
||||
CHELLO_PARSE_SUCCESS = 0,
|
||||
CHELLO_PARSE_INVALID_FORMAT = -1,
|
||||
CHELLO_PARSE_NOT_ENOUGH_BUFF = -2
|
||||
};
|
||||
|
||||
struct ssl_version
|
||||
{
|
||||
uint8_t minor;
|
||||
uint8_t major;
|
||||
uint16_t ossl_format;
|
||||
char str_format[STRING_MAX];
|
||||
};
|
||||
|
||||
struct ssl_chello
|
||||
{
|
||||
struct ssl_version min_version;
|
||||
struct ssl_version max_version;
|
||||
int cipher_suites_count;
|
||||
int extension_count;
|
||||
int cipher_suite_list[CIPHER_SUITE_COUNT_MAX];
|
||||
int extension_list[EXTENSION_COUNT_MAX];
|
||||
char sni[STRING_MAX];
|
||||
char alpn[STRING_MAX];
|
||||
};
|
||||
|
||||
struct ssl_version_map{
|
||||
int value;
|
||||
const char *name;
|
||||
};
|
||||
|
||||
void ssl_chello_parse(struct ssl_chello* _chello, const unsigned char* buff, size_t buff_len, enum chello_parse_result* result);
|
||||
void ssl_chello_free(struct ssl_chello* chello);
|
||||
Reference in New Issue
Block a user