diff options
author | Charles Strahan <charles@cstrahan.com> | 2017-08-08 15:15:44 -0400 |
---|---|---|
committer | Charles Strahan <charles@cstrahan.com> | 2018-03-06 00:30:08 -0500 |
commit | 9920923cdeed74386182feb84861746847d0114e (patch) | |
tree | 0cad97a18c83b7deffc2bafb058ba1214786df3e /pkgs | |
parent | 0937df463f4586799d3727b67f8ba714736bef95 (diff) | |
download | nixlib-9920923cdeed74386182feb84861746847d0114e.tar nixlib-9920923cdeed74386182feb84861746847d0114e.tar.gz nixlib-9920923cdeed74386182feb84861746847d0114e.tar.bz2 nixlib-9920923cdeed74386182feb84861746847d0114e.tar.lz nixlib-9920923cdeed74386182feb84861746847d0114e.tar.xz nixlib-9920923cdeed74386182feb84861746847d0114e.tar.zst nixlib-9920923cdeed74386182feb84861746847d0114e.zip |
hardening: fix careless bugs
I got a substitution backwards (used '+' instead of '-'). Also, this now works under `set -u` (had to fix a couple unbound variable references).
Diffstat (limited to 'pkgs')
-rw-r--r-- | pkgs/build-support/cc-wrapper/add-hardening.sh | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/pkgs/build-support/cc-wrapper/add-hardening.sh b/pkgs/build-support/cc-wrapper/add-hardening.sh index fedb5c19021a..5713d93ed3f3 100644 --- a/pkgs/build-support/cc-wrapper/add-hardening.sh +++ b/pkgs/build-support/cc-wrapper/add-hardening.sh @@ -1,8 +1,8 @@ allHardeningFlags=(fortify stackprotector pie pic strictoverflow format relro bindnow) hardeningCFlags=() -declare -A hardeningDisableMap -declare -A hardeningEnableMap +declare -A hardeningDisableMap=() +declare -A hardeningEnableMap=() # Create table of unsupported flags for this toolchain. for flag in @hardening_unsupported_flags@; do @@ -12,8 +12,8 @@ done # Intentionally word-split in case 'NIX_HARDENING_ENABLE' is defined in Nix. The # array expansion also prevents undefined variables from causing trouble with # `set -u`. -for flag in ${NIX_HARDENING_ENABLE+}; do - if [[ -z "${hardeningDisableMap[$flag]}" ]]; then +for flag in ${NIX_HARDENING_ENABLE-}; do + if [[ -z "${hardeningDisableMap[$flag]-}" ]]; then hardeningEnableMap[$flag]=1 fi done @@ -21,7 +21,7 @@ done if (( "${NIX_DEBUG:-0}" >= 1 )); then # Determine which flags were effectively disabled so we can report below. for flag in ${allHardeningFlags[@]}; do - if [[ -z "${hardeningEnableMap[$flag]}" ]]; then + if [[ -z "${hardeningEnableMap[$flag]-}" ]]; then hardeningDisableMap[$flag]=1 fi done |