summaryrefslogtreecommitdiffstats
path: root/.github
diff options
context:
space:
mode:
authorNeil Horman <nhorman@openssl.org>2023-11-13 04:19:18 -0500
committerTomas Mraz <tomas@openssl.org>2023-11-15 11:08:17 +0100
commitdcfd8cfd4abf4a9fd26aef290dcdd5b4bb1c7f7a (patch)
treec39a46eb901cd2663a67a37d27e15d65d76a6fc2 /.github
parent46376fcf4b6d11ec417c2a530475037d4d09fcbf (diff)
Update ci and ABI xml files to validate function parameters
libabigail is currenly only validating symbol presence and version information in ci. We should also be validating function parameters, types, etc. To do this we need to build the library with -g so the dwarf information is available for libabigail to interrogate while we're at it, also add a script to re-generate the xml that abidiff uses for comparison during ci runs, to make updates easier Fixes #22712 Reviewed-by: Hugo Landau <hlandau@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/22713)
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/ci.yml2
-rw-r--r--.github/workflows/libcrypto-abi.xml57071
-rw-r--r--.github/workflows/libssl-abi.xml19764
3 files changed, 76832 insertions, 5 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 6df7010875..d90d0a2877 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -279,7 +279,7 @@ jobs:
- name: install extra config support
run: sudo apt-get -y install libsctp-dev abigail-tools libzstd-dev zstd
- name: config
- run: ./config --banner=Configured --strict-warnings enable-ktls enable-fips enable-egd enable-ec_nistp_64_gcc_128 enable-md2 enable-rc5 enable-sctp enable-ssl3 enable-ssl3-method enable-trace enable-zlib enable-zstd && perl configdata.pm --dump
+ run: ./config --banner=Configured -g --strict-warnings enable-ktls enable-fips enable-egd enable-ec_nistp_64_gcc_128 enable-md2 enable-rc5 enable-sctp enable-ssl3 enable-ssl3-method enable-trace enable-zlib enable-zstd && perl configdata.pm --dump
- name: make
run: make -s -j4
- name: get cpu info
diff --git a/.github/workflows/libcrypto-abi.xml b/.github/workflows/libcrypto-abi.xml
index 6e93efd7d4..e3fa029d01 100644
--- a/.github/workflows/libcrypto-abi.xml
+++ b/.github/workflows/libcrypto-abi.xml
@@ -1,4 +1,4 @@
-<abi-corpus version='2.1' path='libcrypto.so' architecture='elf-amd-x86_64' soname='libcrypto.so.3'>
+<abi-corpus version='2.0' path='libcrypto.so' architecture='elf-amd-x86_64' soname='libcrypto.so.3'>
<elf-needed>
<dependency name='libz.so.1'/>
<dependency name='libzstd.so.1'/>
@@ -5521,4 +5521,57073 @@
<elf-symbol name='v2i_GENERAL_NAMES' version='OPENSSL_3.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
<elf-symbol name='v2i_GENERAL_NAME_ex' version='OPENSSL_3.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
+ <abi-instr address-size='64' path='crypto/aes/aes_cfb.c' comp-dir-path='/work' language='LANG_C11'>
+ <type-decl name='int' size-in-bits='32' id='type-id-1'/>
+ <type-decl name='unsigned char' size-in-bits='8' id='type-id-2'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='type-id-3'/>
+ <array-type-def dimensions='1' type-id='type-id-3' size-in-bits='1920' id='type-id-4'>
+ <subrange length='60' type-id='type-id-5' id='type-id-6'/>
+ </array-type-def>
+ <type-decl name='unsigned long int' size-in-bits='64' id='type-id-5'/>
+ <type-decl name='void' id='type-id-7'/>
+ <typedef-decl name='size_t' type-id='type-id-5' filepath='/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h' line='209' column='1' id='type-id-8'/>
+ <class-decl name='aes_key_st' size-in-bits='1952' is-struct='yes' visibility='default' filepath='include/openssl/aes.h' line='37' column='1' id='type-id-9'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='rd_key' type-id='type-id-4' visibility='default' filepath='include/openssl/aes.h' line='41' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1920'>
+ <var-decl name='rounds' type-id='type-id-1' visibility='default' filepath='include/openssl/aes.h' line='43' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='AES_KEY' type-id='type-id-9' filepath='include/openssl/aes.h' line='45' column='1' id='type-id-10'/>
+ <typedef-decl name='block128_f' type-id='type-id-11' filepath='include/openssl/modes.h' line='25' column='1' id='type-id-12'/>
+ <qualified-type-def type-id='type-id-10' const='yes' id='type-id-13'/>
+ <pointer-type-def type-id='type-id-13' size-in-bits='64' id='type-id-14'/>
+ <qualified-type-def type-id='type-id-1' const='yes' id='type-id-15'/>
+ <qualified-type-def type-id='type-id-2' const='yes' id='type-id-16'/>
+ <pointer-type-def type-id='type-id-16' size-in-bits='64' id='type-id-17'/>
+ <pointer-type-def type-id='type-id-1' size-in-bits='64' id='type-id-18'/>
+ <pointer-type-def type-id='type-id-2' size-in-bits='64' id='type-id-19'/>
+ <pointer-type-def type-id='type-id-20' size-in-bits='64' id='type-id-11'/>
+ <pointer-type-def type-id='type-id-7' size-in-bits='64' id='type-id-21'/>
+ <function-decl name='AES_cfb128_encrypt' mangled-name='AES_cfb128_encrypt' filepath='crypto/aes/aes_cfb.c' line='25' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='AES_cfb128_encrypt@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-17' name='in' filepath='crypto/aes/aes_cfb.c' line='25' column='1'/>
+ <parameter type-id='type-id-19' name='out' filepath='crypto/aes/aes_cfb.c' line='25' column='1'/>
+ <parameter type-id='type-id-8' name='length' filepath='crypto/aes/aes_cfb.c' line='26' column='1'/>
+ <parameter type-id='type-id-14' name='key' filepath='crypto/aes/aes_cfb.c' line='26' column='1'/>
+ <parameter type-id='type-id-19' name='ivec' filepath='crypto/aes/aes_cfb.c' line='27' column='1'/>
+ <parameter type-id='type-id-18' name='num' filepath='crypto/aes/aes_cfb.c' line='27' column='1'/>
+ <parameter type-id='type-id-15' name='enc' filepath='crypto/aes/aes_cfb.c' line='27' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='AES_cfb1_encrypt' mangled-name='AES_cfb1_encrypt' filepath='crypto/aes/aes_cfb.c' line='35' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='AES_cfb1_encrypt@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-17' name='in' filepath='crypto/aes/aes_cfb.c' line='35' column='1'/>
+ <parameter type-id='type-id-19' name='out' filepath='crypto/aes/aes_cfb.c' line='35' column='1'/>
+ <parameter type-id='type-id-8' name='length' filepath='crypto/aes/aes_cfb.c' line='36' column='1'/>
+ <parameter type-id='type-id-14' name='key' filepath='crypto/aes/aes_cfb.c' line='36' column='1'/>
+ <parameter type-id='type-id-19' name='ivec' filepath='crypto/aes/aes_cfb.c' line='37' column='1'/>
+ <parameter type-id='type-id-18' name='num' filepath='crypto/aes/aes_cfb.c' line='37' column='1'/>
+ <parameter type-id='type-id-15' name='enc' filepath='crypto/aes/aes_cfb.c' line='37' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='AES_cfb8_encrypt' mangled-name='AES_cfb8_encrypt' filepath='crypto/aes/aes_cfb.c' line='43' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='AES_cfb8_encrypt@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-17' name='in' filepath='crypto/aes/aes_cfb.c' line='43' column='1'/>
+ <parameter type-id='type-id-19' name='out' filepath='crypto/aes/aes_cfb.c' line='43' column='1'/>
+ <parameter type-id='type-id-8' name='length' filepath='crypto/aes/aes_cfb.c' line='44' column='1'/>
+ <parameter type-id='type-id-14' name='key' filepath='crypto/aes/aes_cfb.c' line='44' column='1'/>
+ <parameter type-id='type-id-19' name='ivec' filepath='crypto/aes/aes_cfb.c' line='45' column='1'/>
+ <parameter type-id='type-id-18' name='num' filepath='crypto/aes/aes_cfb.c' line='45' column='1'/>
+ <parameter type-id='type-id-15' name='enc' filepath='crypto/aes/aes_cfb.c' line='45' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='AES_encrypt' filepath='include/openssl/aes.h' line='57' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-19'/>
+ <parameter type-id='type-id-14'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='CRYPTO_cfb128_encrypt' mangled-name='CRYPTO_cfb128_encrypt' filepath='include/openssl/modes.h' line='69' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='CRYPTO_cfb128_encrypt@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-19'/>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-19'/>
+ <parameter type-id='type-id-18'/>
+ <parameter type-id='type-id-1'/>
+ <parameter type-id='type-id-12'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='CRYPTO_cfb128_8_encrypt' mangled-name='CRYPTO_cfb128_8_encrypt' filepath='include/openssl/modes.h' line='73' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='CRYPTO_cfb128_8_encrypt@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-19'/>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-19'/>
+ <parameter type-id='type-id-18'/>
+ <parameter type-id='type-id-1'/>
+ <parameter type-id='type-id-12'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='CRYPTO_cfb128_1_encrypt' mangled-name='CRYPTO_cfb128_1_encrypt' filepath='include/openssl/modes.h' line='77' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='CRYPTO_cfb128_1_encrypt@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-19'/>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-19'/>
+ <parameter type-id='type-id-18'/>
+ <parameter type-id='type-id-1'/>
+ <parameter type-id='type-id-12'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-type size-in-bits='64' id='type-id-20'>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-19'/>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-7'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='crypto/aes/aes_ecb.c' comp-dir-path='/work' language='LANG_C11'>
+ <function-decl name='AES_ecb_encrypt' mangled-name='AES_ecb_encrypt' filepath='crypto/aes/aes_ecb.c' line='21' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='AES_ecb_encrypt@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-17' name='in' filepath='crypto/aes/aes_ecb.c' line='21' column='1'/>
+ <parameter type-id='type-id-19' name='out' filepath='crypto/aes/aes_ecb.c' line='21' column='1'/>
+ <parameter type-id='type-id-14' name='key' filepath='crypto/aes/aes_ecb.c' line='22' column='1'/>
+ <parameter type-id='type-id-15' name='enc' filepath='crypto/aes/aes_ecb.c' line='22' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='AES_decrypt' filepath='include/openssl/aes.h' line='60' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-19'/>
+ <parameter type-id='type-id-14'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='crypto/aes/aes_ige.c' comp-dir-path='/work' language='LANG_C11'>
+ <type-decl name='char' size-in-bits='8' id='type-id-22'/>
+ <qualified-type-def type-id='type-id-22' const='yes' id='type-id-23'/>
+ <pointer-type-def type-id='type-id-23' size-in-bits='64' id='type-id-24'/>
+ <function-decl name='AES_ige_encrypt' mangled-name='AES_ige_encrypt' filepath='crypto/aes/aes_ige.c' line='48' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='AES_ige_encrypt@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-17' name='in' filepath='crypto/aes/aes_ige.c' line='48' column='1'/>
+ <parameter type-id='type-id-19' name='out' filepath='crypto/aes/aes_ige.c' line='48' column='1'/>
+ <parameter type-id='type-id-8' name='length' filepath='crypto/aes/aes_ige.c' line='49' column='1'/>
+ <parameter type-id='type-id-14' name='key' filepath='crypto/aes/aes_ige.c' line='49' column='1'/>
+ <parameter type-id='type-id-19' name='ivec' filepath='crypto/aes/aes_ige.c' line='50' column='1'/>
+ <parameter type-id='type-id-15' name='enc' filepath='crypto/aes/aes_ige.c' line='50' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='AES_bi_ige_encrypt' mangled-name='AES_bi_ige_encrypt' filepath='crypto/aes/aes_ige.c' line='186' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='AES_bi_ige_encrypt@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-17' name='in' filepath='crypto/aes/aes_ige.c' line='186' column='1'/>
+ <parameter type-id='type-id-19' name='out' filepath='crypto/aes/aes_ige.c' line='186' column='1'/>
+ <parameter type-id='type-id-8' name='length' filepath='crypto/aes/aes_ige.c' line='187' column='1'/>
+ <parameter type-id='type-id-14' name='key' filepath='crypto/aes/aes_ige.c' line='187' column='1'/>
+ <parameter type-id='type-id-14' name='key2' filepath='crypto/aes/aes_ige.c' line='188' column='1'/>
+ <parameter type-id='type-id-17' name='ivec' filepath='crypto/aes/aes_ige.c' line='188' column='1'/>
+ <parameter type-id='type-id-15' name='enc' filepath='crypto/aes/aes_ige.c' line='189' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='OPENSSL_die' mangled-name='OPENSSL_die' filepath='include/openssl/crypto.h' line='416' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='OPENSSL_die@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-24'/>
+ <parameter type-id='type-id-24'/>
+ <parameter type-id='type-id-1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='crypto/aes/aes_misc.c' comp-dir-path='/work' language='LANG_C11'>
+ <function-decl name='AES_options' mangled-name='AES_options' filepath='crypto/aes/aes_misc.c' line='15' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='AES_options@@OPENSSL_3.0.0'>
+ <return type-id='type-id-24'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='crypto/aes/aes_ofb.c' comp-dir-path='/work' language='LANG_C11'>
+ <function-decl name='AES_ofb128_encrypt' mangled-name='AES_ofb128_encrypt' filepath='crypto/aes/aes_ofb.c' line='19' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='AES_ofb128_encrypt@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-17' name='in' filepath='crypto/aes/aes_ofb.c' line='19' column='1'/>
+ <parameter type-id='type-id-19' name='out' filepath='crypto/aes/aes_ofb.c' line='19' column='1'/>
+ <parameter type-id='type-id-8' name='length' filepath='crypto/aes/aes_ofb.c' line='20' column='1'/>
+ <parameter type-id='type-id-14' name='key' filepath='crypto/aes/aes_ofb.c' line='20' column='1'/>
+ <parameter type-id='type-id-19' name='ivec' filepath='crypto/aes/aes_ofb.c' line='21' column='1'/>
+ <parameter type-id='type-id-18' name='num' filepath='crypto/aes/aes_ofb.c' line='21' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='CRYPTO_ofb128_encrypt' mangled-name='CRYPTO_ofb128_encrypt' filepath='include/openssl/modes.h' line='64' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='CRYPTO_ofb128_encrypt@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-19'/>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-19'/>
+ <parameter type-id='type-id-18'/>
+ <parameter type-id='type-id-12'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='crypto/aes/aes_wrap.c' comp-dir-path='/work' language='LANG_C11'>
+ <pointer-type-def type-id='type-id-10' size-in-bits='64' id='type-id-25'/>
+ <function-decl name='AES_wrap_key' mangled-name='AES_wrap_key' filepath='crypto/aes/aes_wrap.c' line='20' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='AES_wrap_key@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-25' name='key' filepath='crypto/aes/aes_wrap.c' line='20' column='1'/>
+ <parameter type-id='type-id-17' name='iv' filepath='crypto/aes/aes_wrap.c' line='20' column='1'/>
+ <parameter type-id='type-id-19' name='out' filepath='crypto/aes/aes_wrap.c' line='21' column='1'/>
+ <parameter type-id='type-id-17' name='in' filepath='crypto/aes/aes_wrap.c' line='22' column='1'/>
+ <parameter type-id='type-id-3' name='inlen' filepath='crypto/aes/aes_wrap.c' line='22' column='1'/>
+ <return type-id='type-id-1'/>
+ </function-decl>
+ <function-decl name='AES_unwrap_key' mangled-name='AES_unwrap_key' filepath='crypto/aes/aes_wrap.c' line='27' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='AES_unwrap_key@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-25' name='key' filepath='crypto/aes/aes_wrap.c' line='27' column='1'/>
+ <parameter type-id='type-id-17' name='iv' filepath='crypto/aes/aes_wrap.c' line='27' column='1'/>
+ <parameter type-id='type-id-19' name='out' filepath='crypto/aes/aes_wrap.c' line='28' column='1'/>
+ <parameter type-id='type-id-17' name='in' filepath='crypto/aes/aes_wrap.c' line='29' column='1'/>
+ <parameter type-id='type-id-3' name='inlen' filepath='crypto/aes/aes_wrap.c' line='29' column='1'/>
+ <return type-id='type-id-1'/>
+ </function-decl>
+ <function-decl name='CRYPTO_128_wrap' mangled-name='CRYPTO_128_wrap' filepath='include/openssl/modes.h' line='167' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='CRYPTO_128_wrap@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-19'/>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-12'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='CRYPTO_128_unwrap' mangled-name='CRYPTO_128_unwrap' filepath='include/openssl/modes.h' line='172' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='CRYPTO_128_unwrap@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-19'/>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-12'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='crypto/asn1/a_bitstr.c' comp-dir-path='/work' language='LANG_C11'>
+ <type-decl name='long int' size-in-bits='64' id='type-id-26'/>
+ <type-decl name='variadic parameter type' id='type-id-27'/>
+ <class-decl name='asn1_string_st' size-in-bits='192' is-struct='yes' visibility='default' filepath='include/openssl/asn1.h' line='186' column='1' id='type-id-28'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='length' type-id='type-id-1' visibility='default' filepath='include/openssl/asn1.h' line='187' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='type' type-id='type-id-1' visibility='default' filepath='include/openssl/asn1.h' line='188' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='data' type-id='type-id-19' visibility='default' filepath='include/openssl/asn1.h' line='189' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='flags' type-id='type-id-26' visibility='default' filepath='include/openssl/asn1.h' line='195' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='ASN1_BIT_STRING' type-id='type-id-28' filepath='include/openssl/types.h' line='59' column='1' id='type-id-29'/>
+ <typedef-decl name='ASN1_STRING' type-id='type-id-28' filepath='include/openssl/types.h' line='72' column='1' id='type-id-30'/>
+ <pointer-type-def type-id='type-id-29' size-in-bits='64' id='type-id-31'/>
+ <pointer-type-def type-id='type-id-30' size-in-bits='64' id='type-id-32'/>
+ <qualified-type-def type-id='type-id-29' const='yes' id='type-id-33'/>
+ <pointer-type-def type-id='type-id-33' size-in-bits='64' id='type-id-34'/>
+ <function-decl name='memcpy' filepath='/usr/include/string.h' line='43' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-21'/>
+ </function-decl>
+ <function-decl name='memset' filepath='/usr/include/string.h' line='61' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-1'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-21'/>
+ </function-decl>
+ <function-decl name='ASN1_BIT_STRING_set' mangled-name='ASN1_BIT_STRING_set' filepath='crypto/asn1/a_bitstr.c' line='16' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='ASN1_BIT_STRING_set@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-31' name='x' filepath='crypto/asn1/a_bitstr.c' line='16' column='1'/>
+ <parameter type-id='type-id-19' name='d' filepath='crypto/asn1/a_bitstr.c' line='16' column='1'/>
+ <parameter type-id='type-id-1' name='len' filepath='crypto/asn1/a_bitstr.c' line='16' column='1'/>
+ <return type-id='type-id-1'/>
+ </function-decl>
+ <function-decl name='ASN1_BIT_STRING_set_bit' mangled-name='ASN1_BIT_STRING_set_bit' filepath='crypto/asn1/a_bitstr.c' line='143' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='ASN1_BIT_STRING_set_bit@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-31' name='a' filepath='crypto/asn1/a_bitstr.c' line='143' column='1'/>
+ <parameter type-id='type-id-1' name='n' filepath='crypto/asn1/a_bitstr.c' line='143' column='1'/>
+ <parameter type-id='type-id-1' name='value' filepath='crypto/asn1/a_bitstr.c' line='143' column='1'/>
+ <return type-id='type-id-1'/>
+ </function-decl>
+ <function-decl name='ASN1_BIT_STRING_get_bit' mangled-name='ASN1_BIT_STRING_get_bit' filepath='crypto/asn1/a_bitstr.c' line='179' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='ASN1_BIT_STRING_get_bit@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-34' name='a' filepath='crypto/asn1/a_bitstr.c' line='179' column='1'/>
+ <parameter type-id='type-id-1' name='n' filepath='crypto/asn1/a_bitstr.c' line='179' column='1'/>
+ <return type-id='type-id-1'/>
+ </function-decl>
+ <function-decl name='ASN1_BIT_STRING_check' mangled-name='ASN1_BIT_STRING_check' filepath='crypto/asn1/a_bitstr.c' line='199' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='ASN1_BIT_STRING_check@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-34' name='a' filepath='crypto/asn1/a_bitstr.c' line='199' column='1'/>
+ <parameter type-id='type-id-17' name='flags' filepath='crypto/asn1/a_bitstr.c' line='200' column='1'/>
+ <parameter type-id='type-id-1' name='flags_len' filepath='crypto/asn1/a_bitstr.c' line='200' column='1'/>
+ <return type-id='type-id-1'/>
+ </function-decl>
+ <function-decl name='ossl_asn1_string_set_bits_left' filepath='include/crypto/asn1.h' line='151' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-32'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='ASN1_STRING_set' mangled-name='ASN1_STRING_set' filepath='include/openssl/asn1.h' line='675' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='ASN1_STRING_set@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-32'/>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-1'/>
+ <return type-id='type-id-1'/>
+ </function-decl>
+ <function-decl name='ASN1_STRING_set0' mangled-name='ASN1_STRING_set0' filepath='include/openssl/asn1.h' line='676' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='ASN1_STRING_set0@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-32'/>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='ASN1_BIT_STRING_new' mangled-name='ASN1_BIT_STRING_new' filepath='include/openssl/asn1.h' line='687' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='ASN1_BIT_STRING_new@@OPENSSL_3.0.0'>
+ <return type-id='type-id-31'/>
+ </function-decl>
+ <function-decl name='ASN1_BIT_STRING_free' mangled-name='ASN1_BIT_STRING_free' filepath='include/openssl/asn1.h' line='687' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='ASN1_BIT_STRING_free@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-31'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='CRYPTO_malloc' mangled-name='CRYPTO_malloc' filepath='include/openssl/crypto.h' line='345' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='CRYPTO_malloc@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-24'/>
+ <parameter type-id='type-id-1'/>
+ <return type-id='type-id-21'/>
+ </function-decl>
+ <function-decl name='CRYPTO_clear_realloc' mangled-name='CRYPTO_clear_realloc' filepath='include/openssl/crypto.h' line='353' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='CRYPTO_clear_realloc@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-24'/>
+ <parameter type-id='type-id-1'/>
+ <return type-id='type-id-21'/>
+ </function-decl>
+ <function-decl name='ERR_new' mangled-name='ERR_new' filepath='include/openssl/err.h' line='395' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='ERR_new@@OPENSSL_3.0.0'>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='ERR_set_debug' mangled-name='ERR_set_debug' filepath='include/openssl/err.h' line='396' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='ERR_set_debug@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-24'/>
+ <parameter type-id='type-id-1'/>
+ <parameter type-id='type-id-24'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='ERR_set_error' mangled-name='ERR_set_error' filepath='include/openssl/err.h' line='397' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='ERR_set_error@@OPENSSL_3.0.0'>
+ <parameter type-id='type-id-1'/>
+ <parameter type-id='type-id-1'/>
+ <parameter type-id='type-id-24'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='crypto/asn1/a_d2i_fp.c' comp-dir-path='/work' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-22' size-in-bits='8' id='type-id-35'>
+ <subrange length='1' type-id='type-id-5' id='type-id-36'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-22' size-in-bits='160' id='type-id-37'>
+ <subrange length='20' type-id='type-id-5' id='type-id-38'/>
+ </array-type-def>
+ <class-decl name='ASN1_ITEM_st' size-in-bits='448' is-struct='yes' visibility='default' filepath='include/openssl/asn1t.h' line='601' column='1' id='type-id-39'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='itype' type-id='type-id-22' visibility='default' filepath='include/openssl/asn1t.h' line='602' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='utype' type-id='type-id-26' visibility='default' filepath='include/openssl/asn1t.h' line='604' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='templates' type-id='type-id-40' visibility='default' filepath='include/openssl/asn1t.h' line='605' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='tcount' type-id='type-id-26' visibility='default' filepath='include/openssl/asn1t.h' line='607' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='funcs' type-id='type-id-21' visibility='default' filepath='include/openssl/asn1t.h' line='608' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='size' type-id='type-id-26' visibility='default' filepath='include/openssl/asn1t.h' line='610' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='sname' type-id='type-id-24' visibility='default' filepath='include/openssl/asn1t.h' line='611' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='ASN1_VALUE_st' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-41'/>
+ <class-decl name='_IO_codecvt' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-42'/>
+ <class-decl name='_IO_marker' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-43'/>
+ <class-decl name='_IO_wide_data' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-44'/>
+ <class-decl name='bio_method_st' size-in-bits='896' is-struct='yes' visibility='default' filepath='include/internal/bio.h' line='17' column='1' id='type-id-45'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='type' type-id='type-id-1' visibility='default' filepath='include/internal/bio.h' line='18' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='name' type-id='type-id-46' visibility='default' filepath='include/internal/bio.h' line='19' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='bwrite' type-id='type-id-47' visibility='default' filepath='include/internal/bio.h' line='20' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='bwrite_old' type-id='type-id-48' visibility='default' filepath='include/internal/bio.h' line='21' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='bread' type-id='type-id-49' visibility='default' filepath='include/internal/bio.h' line='22' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='bread_old' type-id='type-id-50' visibility='default' filepath='include/internal/bio.h' line='23' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='bputs' type-id='type-id-51' visibility='default' filepath='include/internal/bio.h' line='24' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='bgets' type-id='type-id-50' visibility='default' filepath='include/internal/bio.h' line='25' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='ctrl' type-id='type-id-52' visibility='default' filepath='include/internal/bio.h' line='26' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='create' type-id='type-id-53' visibility='default' filepath='include/internal/bio.h' line='27' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='destroy' type-id='type-id-53' visibility='default' filepath='include/internal/bio.h' line='28' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='callback_ctrl' type-id='type-id-54' visibility='default' filepath='include/internal/bio.h' line='29' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='bsendmmsg' type-id='type-id-55' visibility='default' filepath='include/internal/bio.h' line='30' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='brecvmmsg' type-id='type-id-55' visibility='default' filepath='include/internal/bio.h' line='31' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='bio_st' size-in-bits='1024' is-struct='yes' visibility='default' filepath='crypto/bio/bio_local.h' line='98' column='1' id='type-id-56'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='libctx' type-id='type-id-57' visibility='default' filepath='crypto/bio/bio_local.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='method' type-id='type-id-58' visibility='default' filepath='crypto/bio/bio_local.h' line='100' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='callback' type-id='type-id-59' visibility='default' filepath='crypto/bio/bio_local.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='callback_ex' type-id='type-id-60' visibility='default' filepath='crypto/bio/bio_local.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='cb_arg' type-id='type-id-46' visibility='default' filepath='crypto/bio/bio_local.h' line='106' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='init' type-id='type-id-1' visibility='default' filepath='crypto/bio/bio_local.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='shutdown' type-id='type-id-1' visibility='default' filepath='crypto/bio/bio_local.h' line='108' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='flags' type-id='type-id-1' visibility='default' filepath='crypto/bio/bio_local.h' line='109' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='retry_reason' type-id='type-id-1' visibility='default' filepath='crypto/bio/bio_local.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='num' type-id='type-id-1' visibility='default' filepath='crypto/bio/bio_local.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='ptr' type-id='type-id-21' visibility='default' filepath='crypto/bio/bio_local.h' line='112' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='next_bio' type-id='type-id-61' visibility='default' filepath='crypto/bio/bio_local.h' line='113' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='prev_bio' type-id='type-id-61' visibility='default' filepath='crypto/bio/bio_local.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='references' type-id='type-id-62' visibility='default' filepath='crypto/bio/bio_local.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='num_read' type-id='type-id-63' visibility='default' filepath='crypto/bio/bio_local.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='num_write' type-id='type-id-63' visibility='default' filepath='crypto/bio/bio_local.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='ex_data' type-id='type-id-64' visibility='default' filepath='crypto/bio/bio_local.h' line='118' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='ossl_lib_ctx_st' size-in-bits='2560' is-struct='yes' visibility='default' filepath='crypto/context.c' line='20' column='1' id='type-id-65'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='lock' type-id='type-id-66' visibility='default' filepath='crypto/context.c' line='21' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='rand_crngt_lock' type-id='type-id-66' visibility='default' filepath='crypto/context.c' line='21' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='global' type-id='type-id-67' visibility='default' filepath='crypto/context.c' line='22' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1344'>
+ <var-decl name='property_string_data' type-id='type-id-21' visibility='default' filepath='crypto/context.c' line='24' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1408'>
+ <var-decl name='evp_method_store' type-id='type-id-21' visibility='default' filepath='crypto/context.c' line='25' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1472'>
+ <var-decl name='provider_store' type-id='type-id-21' visibility='default' filepath='crypto/context.c' line='26' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1536'>
+ <var-decl name='namemap' type-id='type-id-21' visibility='default' filepath='crypto/context.c' line='27' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1600'>
+ <var-decl name='property_defns' type-id='type-id-21' visibility='default' filepath='crypto/context.c' line='28' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1664'>
+ <var-decl name='global_properties' type-id='type-id-21' visibility='default' filepath='crypto/context.c' line='29' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1728'>
+ <var-decl name='drbg' type-id='type-id-21' visibility='default' filepath='crypto/context.c' line='30' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1792'>
+ <var-decl name='drbg_nonce' type-id='type-id-21' visibility='default' filepath='crypto/context.c' line='31' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1856'>
+ <var-decl name='provider_conf' type-id='type-id-21' visibility='default' filepath='crypto/context.c' line='33' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1920'>
+ <var-decl name='bio_core' type-id='type-id-21' visibility='default' filepath='crypto/context.c' line='34' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1984'>
+ <var-decl name='child_provider' type-id='type-id-21' visibility='default' filepath='crypto/context.c' line='35' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='2048'>