mirror of
https://github.com/Mbed-TLS/mbedtls.git
synced 2025-04-16 08:42:50 +00:00
Remove duplicate demo_common.sh in tf-psa-crypto
This commit removes the duplicate demo_common.sh file in tf-psa-crypto and instead use the demo_common.sh file in mbedtls/programs. Signed-off-by: Harry Ramsey <harry.ramsey@arm.com>
This commit is contained in:
parent
ff57cc56ba
commit
885ce72ca6
@ -1,137 +0,0 @@
|
|||||||
## Common shell functions used by demo scripts programs/*/*.sh.
|
|
||||||
|
|
||||||
## How to write a demo script
|
|
||||||
## ==========================
|
|
||||||
##
|
|
||||||
## Include this file near the top of each demo script:
|
|
||||||
## . "${0%/*}/../demo_common.sh"
|
|
||||||
##
|
|
||||||
## Start with a "msg" call that explains the purpose of the script.
|
|
||||||
## Then call the "depends_on" function to ensure that all config
|
|
||||||
## dependencies are met.
|
|
||||||
##
|
|
||||||
## As the last thing in the script, call the cleanup function.
|
|
||||||
##
|
|
||||||
## You can use the functions and variables described below.
|
|
||||||
|
|
||||||
set -e -u
|
|
||||||
|
|
||||||
## $root_dir is the root directory of the Mbed TLS source tree.
|
|
||||||
root_dir="${0%/*}"
|
|
||||||
# Find a nice path to the root directory, avoiding unnecessary "../".
|
|
||||||
# The code supports demo scripts nested up to 4 levels deep.
|
|
||||||
# The code works no matter where the demo script is relative to the current
|
|
||||||
# directory, even if it is called with a relative path.
|
|
||||||
n=4 # limit the search depth
|
|
||||||
while ! [ -d "$root_dir/programs" ] || ! [ -d "$root_dir/library" ]; do
|
|
||||||
if [ $n -eq 0 ]; then
|
|
||||||
echo >&2 "This doesn't seem to be an Mbed TLS source tree."
|
|
||||||
exit 125
|
|
||||||
fi
|
|
||||||
n=$((n - 1))
|
|
||||||
case $root_dir in
|
|
||||||
.) root_dir="..";;
|
|
||||||
..|?*/..) root_dir="$root_dir/..";;
|
|
||||||
?*/*) root_dir="${root_dir%/*}";;
|
|
||||||
/*) root_dir="/";;
|
|
||||||
*) root_dir=".";;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
## $programs_dir is the directory containing the sample programs.
|
|
||||||
# Assume an in-tree build.
|
|
||||||
programs_dir="$root_dir/programs"
|
|
||||||
|
|
||||||
## msg LINE...
|
|
||||||
## msg <TEXT_ORIGIN
|
|
||||||
## Display an informational message.
|
|
||||||
msg () {
|
|
||||||
if [ $# -eq 0 ]; then
|
|
||||||
sed 's/^/# /'
|
|
||||||
else
|
|
||||||
for x in "$@"; do
|
|
||||||
echo "# $x"
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
## run "Message" COMMAND ARGUMENT...
|
|
||||||
## Display the message, then run COMMAND with the specified arguments.
|
|
||||||
run () {
|
|
||||||
echo
|
|
||||||
echo "# $1"
|
|
||||||
shift
|
|
||||||
echo "+ $*"
|
|
||||||
"$@"
|
|
||||||
}
|
|
||||||
|
|
||||||
## Like '!', but stop on failure with 'set -e'
|
|
||||||
not () {
|
|
||||||
if "$@"; then false; fi
|
|
||||||
}
|
|
||||||
|
|
||||||
## run_bad "Message" COMMAND ARGUMENT...
|
|
||||||
## Like run, but the command is expected to fail.
|
|
||||||
run_bad () {
|
|
||||||
echo
|
|
||||||
echo "$1 This must fail."
|
|
||||||
shift
|
|
||||||
echo "+ ! $*"
|
|
||||||
not "$@"
|
|
||||||
}
|
|
||||||
|
|
||||||
## config_has SYMBOL...
|
|
||||||
## Succeeds if the library configuration has all SYMBOLs set.
|
|
||||||
config_has () {
|
|
||||||
for x in "$@"; do
|
|
||||||
"$programs_dir/test/query_compile_time_config" "$x"
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
## depends_on SYMBOL...
|
|
||||||
## Exit if the library configuration does not have all SYMBOLs set.
|
|
||||||
depends_on () {
|
|
||||||
m=
|
|
||||||
for x in "$@"; do
|
|
||||||
if ! config_has "$x"; then
|
|
||||||
m="$m $x"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
if [ -n "$m" ]; then
|
|
||||||
cat >&2 <<EOF
|
|
||||||
$0: this demo requires the following
|
|
||||||
configuration options to be enabled at compile time:
|
|
||||||
$m
|
|
||||||
EOF
|
|
||||||
# Exit with a success status so that this counts as a pass for run_demos.py.
|
|
||||||
exit
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
## Add the names of files to clean up to this whitespace-separated variable.
|
|
||||||
## The file names must not contain whitespace characters.
|
|
||||||
files_to_clean=
|
|
||||||
|
|
||||||
## Call this function at the end of each script.
|
|
||||||
## It is called automatically if the script is killed by a signal.
|
|
||||||
cleanup () {
|
|
||||||
rm -f -- $files_to_clean
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
################################################################
|
|
||||||
## End of the public interfaces. Code beyond this point is not
|
|
||||||
## meant to be called directly from a demo script.
|
|
||||||
|
|
||||||
trap 'cleanup; trap - HUP; kill -HUP $$' HUP
|
|
||||||
trap 'cleanup; trap - INT; kill -INT $$' INT
|
|
||||||
trap 'cleanup; trap - TERM; kill -TERM $$' TERM
|
|
||||||
|
|
||||||
if config_has MBEDTLS_ENTROPY_NV_SEED; then
|
|
||||||
# Create a seedfile that's sufficiently long in all library configurations.
|
|
||||||
# This is necessary for programs that use randomness.
|
|
||||||
# Assume that the name of the seedfile is the default name.
|
|
||||||
files_to_clean="$files_to_clean seedfile"
|
|
||||||
dd if=/dev/urandom of=seedfile ibs=64 obs=64 count=1
|
|
||||||
fi
|
|
@ -3,7 +3,7 @@
|
|||||||
# Copyright The Mbed TLS Contributors
|
# Copyright The Mbed TLS Contributors
|
||||||
# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
|
# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
|
||||||
|
|
||||||
. "${0%/*}/../demo_common.sh"
|
. "${0%/*}/../../../programs/demo_common.sh"
|
||||||
|
|
||||||
msg <<'EOF'
|
msg <<'EOF'
|
||||||
This script demonstrates the use of the PSA cryptography interface to
|
This script demonstrates the use of the PSA cryptography interface to
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
# Copyright The Mbed TLS Contributors
|
# Copyright The Mbed TLS Contributors
|
||||||
# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
|
# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
|
||||||
|
|
||||||
. "${0%/*}/../demo_common.sh"
|
. "${0%/*}/../../../programs/demo_common.sh"
|
||||||
|
|
||||||
msg <<'EOF'
|
msg <<'EOF'
|
||||||
This program demonstrates the use of the PSA cryptography interface to
|
This program demonstrates the use of the PSA cryptography interface to
|
||||||
|
Loading…
x
Reference in New Issue
Block a user