# Find all valid retpoline information, collate the detected and
# safe information together. Join the result to find the detected
# but non-safe elements. These are our concern.
-tmp="/tmp/retpoline-check.$$"
+ur_detected=$(mktemp --tmpdir "retpoline-check-XXXXXX.ur-detected")
+ur_safe=$(mktemp --tmpdir "retpoline-check-XXXXXX.ur-safe")
+
find "." -path './drivers/firmware/efi/libstub' -prune -o \
-path './arch/x86/boot' -prune -o \
-path './arch/x86/purgatory' -prune -o \
-name \*.ur-detected | xargs cat | \
sed -e "s@^$1@@" -e "s@ $2/@ @" -e "s@^/@@" | \
- sort -k 1b,1 >"$tmp.ur-detected"
+ sort -k 1b,1 >"$ur_detected"
find "." -name \*.ur-safe | xargs cat | \
sed -e "s@^$1@@" -e "s@^/@@" | \
- sort -k 1b,1 >"$tmp.ur-safe"
+ sort -k 1b,1 >"$ur_safe"
-join -v 1 -j 1 "$tmp.ur-detected" "$tmp.ur-safe" | sed -s 's/[^ ]* *//'
+join -v 1 -j 1 "$ur_detected" "$ur_safe" | sed -s 's/[^ ]* *//'
-rm -f "$tmp".*
+rm -f "$ur_detected" "$ur_safe"
# Uses 8 character 0 expanded hexadecimal key for ease of consumption.
contentmap_init()
{
- raw32 "$1" "$2" >"$tmp.cm"
+ raw32 "$1" "$2" >"$tmp"
let offset=0
while read value
do
eval contentmap_$offset_hex=\'$value\'
let offset="$offset + 4"
- done <"$tmp.cm"
- rm -f "$tmp.cm"
+ done <"$tmp"
+ rm -f "$tmp"
}
contentmap()
{
} | sed -e 's/-00*\([0-9a-f]\)/-\1/'
}
-tmp="/tmp/retpoline-extract.$$"
+tmp=$(mktemp --tmpdir "retpoline-extract-XXXXXX")
disassemble()
{
# formed above. This is performed in retpoline-check.
#join -v 1 -j 1 "$tmp.extracted" "$tmp.safe" | sed -s 's/[^ ]* *//'
-rm -f "$tmp".*
+rm -f "$tmp"