mbedtls/tests/scripts/list-macros.sh

24 lines
682 B
Bash
Raw Normal View History

2015-04-02 16:59:30 +00:00
#!/bin/sh
set -eu
if [ -d include/mbedtls ]; then :; else
echo "$0: must be run from root" >&2
exit 1
fi
2015-04-02 16:59:30 +00:00
HEADERS=$( ls include/mbedtls/*.h include/psa/*.h | egrep -v 'compat-1\.3\.h' )
2015-04-02 16:59:30 +00:00
# White-list macros we want to be able to refer to that don't exist in the
# crypto library, useful when referring to macros in Mbed TLS from comments.
WHITELIST='MBEDTLS_ERR_SSL_CRYPTO_IN_PROGRESS'
# Generate a list of macros and combine it with the white-listed macros in
# sorted order.
{ sed -n -e 's/.*#define \([a-zA-Z0-9_]*\).*/\1/p' $HEADERS |
egrep -v '^(asm|inline|EMIT|_CRT_SECURE_NO_DEPRECATE)$|^MULADDC_';
printf '%s\n' $WHITELIST;
} | sort -u > macros
2015-04-02 16:59:30 +00:00
wc -l macros