Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: automate openssl offset header file generation #241

Merged
merged 1 commit into from
Oct 19, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -22,3 +22,4 @@ kern/bpf/x86/vmlinux.h

bin/*
/.check*
/deps/*
7 changes: 2 additions & 5 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -187,11 +187,8 @@ BPF_NOCORE_TAG = $(subst .,_,$(KERN_RELEASE)).$(subst .,_,$(VERSION))
# BPF Source file
#

TARGETS := kern/openssl_1.1.1a
TARGETS += kern/openssl_1.1.1b-c
TARGETS += kern/openssl_1.1.1d-i
TARGETS += kern/openssl_1.1.1j-q
TARGETS += kern/boringssl_1.1.1
TARGETS := $(foreach var,$(shell echo {a..r}),kern/openssl_1_1_1$(var))
TARGETS += kern/boringssl_1_1_1
TARGETS += kern/bash
TARGETS += kern/gnutls
TARGETS += kern/nspr
Expand Down
5 changes: 2 additions & 3 deletions kern/boringssl_1.1.1_kern.c → kern/boringssl_1_1_1_kern.c
Original file line number Diff line number Diff line change
Expand Up @@ -94,8 +94,7 @@
// ssl->exporter_master_secret 在 ssl_st 中的偏移量
#define SSL_ST_EXPORTER_MASTER_SECRET 0x3BC // 956

#endif

#include "openssl.h"
#include "boringssl_masterkey.h"


#endif
48 changes: 0 additions & 48 deletions kern/openssl_1.1.1j-q_kern.c

This file was deleted.

37 changes: 32 additions & 5 deletions kern/openssl_1.1.1a_kern.c → kern/openssl_1_1_1a_kern.c
Original file line number Diff line number Diff line change
@@ -1,22 +1,49 @@
#ifndef ECAPTURE_OPENSSL_1_1_1_A_H
#define ECAPTURE_OPENSSL_1_1_1_A_H
#ifndef ECAPTURE_OPENSSL_1_1_1_A_KERN_H
#define ECAPTURE_OPENSSL_1_1_1_A_KERN_H

/* OPENSSL_VERSION_TEXT: OpenSSL 1.1.1a 20 Nov 2018, OPENSSL_VERSION_NUMBER:269488159 */
/* OPENSSL_VERSION_TEXT: OpenSSL 1.1.1a 20 Nov 2018, OPENSSL_VERSION_NUMBER: 269488159 */

// ssl_st->version
#define SSL_ST_VERSION 0x0

// ssl_st->session
#define SSL_ST_SESSION 0x510

// ssl_st->s3
#define SSL_ST_S3 0xa8

// ssl_session_st->master_key
#define SSL_SESSION_ST_MASTER_KEY 0x50

// ssl3_state_st->client_random
#define SSL3_STATE_ST_CLIENT_RANDOM 0xb8

// ssl_session_st->cipher
#define SSL_SESSION_ST_CIPHER 0x1f8

// ssl_session_st->cipher_id
#define SSL_SESSION_ST_CIPHER_ID 0x200

// ssl_cipher_st->id
#define SSL_CIPHER_ST_ID 0x18

// ssl_st->handshake_secret
#define SSL_ST_HANDSHAKE_SECRET 0x174

// ssl_st->master_secret
#define SSL_ST_MASTER_SECRET 0x1b4

// ssl_st->server_finished_hash
#define SSL_ST_SERVER_FINISHED_HASH 0x2b4

// ssl_st->handshake_traffic_hash
#define SSL_ST_HANDSHAKE_TRAFFIC_HASH 0x2f4

// ssl_st->exporter_master_secret
#define SSL_ST_EXPORTER_MASTER_SECRET 0x3b4

#include "openssl.h"
#include "openssl_masterkey.h"

#endif

#include "openssl.h"
#include "openssl_masterkey.h"
37 changes: 32 additions & 5 deletions kern/openssl_1.1.1b-c_kern.c → kern/openssl_1_1_1b_kern.c
Original file line number Diff line number Diff line change
@@ -1,22 +1,49 @@
#ifndef ECAPTURE_OPENSSL_1_1_1_B_C_H
#define ECAPTURE_OPENSSL_1_1_1_B_C_H
#ifndef ECAPTURE_OPENSSL_1_1_1_B_KERN_H
#define ECAPTURE_OPENSSL_1_1_1_B_KERN_H

/* OPENSSL_VERSION_TEXT: OpenSSL 1.1.1b 26 Feb 2019, OPENSSL_VERSION_NUMBER:269488175 */
/* OPENSSL_VERSION_TEXT: OpenSSL 1.1.1b 26 Feb 2019, OPENSSL_VERSION_NUMBER: 269488175 */

// ssl_st->version
#define SSL_ST_VERSION 0x0

// ssl_st->session
#define SSL_ST_SESSION 0x508

// ssl_st->s3
#define SSL_ST_S3 0xa8

// ssl_session_st->master_key
#define SSL_SESSION_ST_MASTER_KEY 0x50

// ssl3_state_st->client_random
#define SSL3_STATE_ST_CLIENT_RANDOM 0xb8

// ssl_session_st->cipher
#define SSL_SESSION_ST_CIPHER 0x1f8

// ssl_session_st->cipher_id
#define SSL_SESSION_ST_CIPHER_ID 0x200

// ssl_cipher_st->id
#define SSL_CIPHER_ST_ID 0x18

// ssl_st->handshake_secret
#define SSL_ST_HANDSHAKE_SECRET 0x174

// ssl_st->master_secret
#define SSL_ST_MASTER_SECRET 0x1b4

// ssl_st->server_finished_hash
#define SSL_ST_SERVER_FINISHED_HASH 0x2b4

// ssl_st->handshake_traffic_hash
#define SSL_ST_HANDSHAKE_TRAFFIC_HASH 0x2f4

// ssl_st->exporter_master_secret
#define SSL_ST_EXPORTER_MASTER_SECRET 0x3b4

#include "openssl.h"
#include "openssl_masterkey.h"

#endif

#include "openssl.h"
#include "openssl_masterkey.h"
49 changes: 49 additions & 0 deletions kern/openssl_1_1_1c_kern.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
#ifndef ECAPTURE_OPENSSL_1_1_1_C_KERN_H
#define ECAPTURE_OPENSSL_1_1_1_C_KERN_H

/* OPENSSL_VERSION_TEXT: OpenSSL 1.1.1c 28 May 2019, OPENSSL_VERSION_NUMBER: 269488191 */

// ssl_st->version
#define SSL_ST_VERSION 0x0

// ssl_st->session
#define SSL_ST_SESSION 0x508

// ssl_st->s3
#define SSL_ST_S3 0xa8

// ssl_session_st->master_key
#define SSL_SESSION_ST_MASTER_KEY 0x50

// ssl3_state_st->client_random
#define SSL3_STATE_ST_CLIENT_RANDOM 0xb8

// ssl_session_st->cipher
#define SSL_SESSION_ST_CIPHER 0x1f8

// ssl_session_st->cipher_id
#define SSL_SESSION_ST_CIPHER_ID 0x200

// ssl_cipher_st->id
#define SSL_CIPHER_ST_ID 0x18

// ssl_st->handshake_secret
#define SSL_ST_HANDSHAKE_SECRET 0x174

// ssl_st->master_secret
#define SSL_ST_MASTER_SECRET 0x1b4

// ssl_st->server_finished_hash
#define SSL_ST_SERVER_FINISHED_HASH 0x2b4

// ssl_st->handshake_traffic_hash
#define SSL_ST_HANDSHAKE_TRAFFIC_HASH 0x2f4

// ssl_st->exporter_master_secret
#define SSL_ST_EXPORTER_MASTER_SECRET 0x3b4

#include "openssl.h"
#include "openssl_masterkey.h"

#endif

37 changes: 32 additions & 5 deletions kern/openssl_1.1.1d-i_kern.c → kern/openssl_1_1_1d_kern.c
Original file line number Diff line number Diff line change
@@ -1,22 +1,49 @@
#ifndef ECAPTURE_OPENSSL_1_1_1_D_I_H
#define ECAPTURE_OPENSSL_1_1_1_D_I_H
#ifndef ECAPTURE_OPENSSL_1_1_1_D_KERN_H
#define ECAPTURE_OPENSSL_1_1_1_D_KERN_H

/* OPENSSL_VERSION_TEXT: OpenSSL 1.1.1d 10 Sep 2019, OPENSSL_VERSION_NUMBER:269488207 */
/* OPENSSL_VERSION_TEXT: OpenSSL 1.1.1d 10 Sep 2019, OPENSSL_VERSION_NUMBER: 269488207 */

// ssl_st->version
#define SSL_ST_VERSION 0x0

// ssl_st->session
#define SSL_ST_SESSION 0x510

// ssl_st->s3
#define SSL_ST_S3 0xa8

// ssl_session_st->master_key
#define SSL_SESSION_ST_MASTER_KEY 0x50

// ssl3_state_st->client_random
#define SSL3_STATE_ST_CLIENT_RANDOM 0xb8

// ssl_session_st->cipher
#define SSL_SESSION_ST_CIPHER 0x1f8

// ssl_session_st->cipher_id
#define SSL_SESSION_ST_CIPHER_ID 0x200

// ssl_cipher_st->id
#define SSL_CIPHER_ST_ID 0x18

// ssl_st->handshake_secret
#define SSL_ST_HANDSHAKE_SECRET 0x17c

// ssl_st->master_secret
#define SSL_ST_MASTER_SECRET 0x1bc

// ssl_st->server_finished_hash
#define SSL_ST_SERVER_FINISHED_HASH 0x2bc

// ssl_st->handshake_traffic_hash
#define SSL_ST_HANDSHAKE_TRAFFIC_HASH 0x2fc

// ssl_st->exporter_master_secret
#define SSL_ST_EXPORTER_MASTER_SECRET 0x3bc

#include "openssl.h"
#include "openssl_masterkey.h"

#endif

#include "openssl.h"
#include "openssl_masterkey.h"
49 changes: 49 additions & 0 deletions kern/openssl_1_1_1e_kern.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
#ifndef ECAPTURE_OPENSSL_1_1_1_E_KERN_H
#define ECAPTURE_OPENSSL_1_1_1_E_KERN_H

/* OPENSSL_VERSION_TEXT: OpenSSL 1.1.1e 17 Mar 2020, OPENSSL_VERSION_NUMBER: 269488223 */

// ssl_st->version
#define SSL_ST_VERSION 0x0

// ssl_st->session
#define SSL_ST_SESSION 0x510

// ssl_st->s3
#define SSL_ST_S3 0xa8

// ssl_session_st->master_key
#define SSL_SESSION_ST_MASTER_KEY 0x50

// ssl3_state_st->client_random
#define SSL3_STATE_ST_CLIENT_RANDOM 0xb8

// ssl_session_st->cipher
#define SSL_SESSION_ST_CIPHER 0x1f8

// ssl_session_st->cipher_id
#define SSL_SESSION_ST_CIPHER_ID 0x200

// ssl_cipher_st->id
#define SSL_CIPHER_ST_ID 0x18

// ssl_st->handshake_secret
#define SSL_ST_HANDSHAKE_SECRET 0x17c

// ssl_st->master_secret
#define SSL_ST_MASTER_SECRET 0x1bc

// ssl_st->server_finished_hash
#define SSL_ST_SERVER_FINISHED_HASH 0x2bc

// ssl_st->handshake_traffic_hash
#define SSL_ST_HANDSHAKE_TRAFFIC_HASH 0x2fc

// ssl_st->exporter_master_secret
#define SSL_ST_EXPORTER_MASTER_SECRET 0x3bc

#include "openssl.h"
#include "openssl_masterkey.h"

#endif

49 changes: 49 additions & 0 deletions kern/openssl_1_1_1f_kern.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
#ifndef ECAPTURE_OPENSSL_1_1_1_F_KERN_H
#define ECAPTURE_OPENSSL_1_1_1_F_KERN_H

/* OPENSSL_VERSION_TEXT: OpenSSL 1.1.1f 31 Mar 2020, OPENSSL_VERSION_NUMBER: 269488239 */

// ssl_st->version
#define SSL_ST_VERSION 0x0

// ssl_st->session
#define SSL_ST_SESSION 0x510

// ssl_st->s3
#define SSL_ST_S3 0xa8

// ssl_session_st->master_key
#define SSL_SESSION_ST_MASTER_KEY 0x50

// ssl3_state_st->client_random
#define SSL3_STATE_ST_CLIENT_RANDOM 0xb8

// ssl_session_st->cipher
#define SSL_SESSION_ST_CIPHER 0x1f8

// ssl_session_st->cipher_id
#define SSL_SESSION_ST_CIPHER_ID 0x200

// ssl_cipher_st->id
#define SSL_CIPHER_ST_ID 0x18

// ssl_st->handshake_secret
#define SSL_ST_HANDSHAKE_SECRET 0x17c

// ssl_st->master_secret
#define SSL_ST_MASTER_SECRET 0x1bc

// ssl_st->server_finished_hash
#define SSL_ST_SERVER_FINISHED_HASH 0x2bc

// ssl_st->handshake_traffic_hash
#define SSL_ST_HANDSHAKE_TRAFFIC_HASH 0x2fc

// ssl_st->exporter_master_secret
#define SSL_ST_EXPORTER_MASTER_SECRET 0x3bc

#include "openssl.h"
#include "openssl_masterkey.h"

#endif

Loading