stack-release: --no-sso drops --send in one place, send_for_target (row 273)
This commit is contained in:
1 parent
7dc538d90a
commit
3730567146
2 files changed
+8
-6
No files matched your search
@@ -13,8 +13,9 @@ Only `scripts/stack-release.sh` and its two node test files.
|
||||
already holds it. `check_target` lets it name the pointer's copy only when the pointer holds no `--send`,
|
||||
so a second `--send` on the same copy refuses `already-active`.
|
||||
- `activate --no-sso` refuses `sso-not-on` when the pointer holds no `--sso`. Otherwise it takes the
|
||||
Console flags from a rollback set (below), drops `--send` from them and from the run, and keeps the
|
||||
pointer's tester flags. The plan prints `sso: off; Console flags from <set>/<file>; restores <flags>`
|
||||
Console flags from a rollback set (below) and keeps the pointer's tester flags. `send_for_target`
|
||||
drops `--send`, whether it came from the set or the pointer. It is the only place that does, so one
|
||||
mutant there (M3) shows the drop is tested. The plan prints `sso: off; Console flags from <set>/<file>; restores <flags>`
|
||||
and a send line, `send: dropped; --no-sso drops --send (F39)` or `send: off; --no-sso was given and the
|
||||
pointer holds no --send`. The steps log gets `drop --send; --no-sso was given` and
|
||||
`turn off --sso; the Console flags come from <set>/<file>`.
|
||||
@@ -71,7 +72,7 @@ live in the node tests and test-release.sh runs unchanged.
|
||||
|
||||
| # | Change | Expected killer |
|
||||
|---|---|---|
|
||||
| M1 | `set_flags` skips the SHA256SUMS comparison | T4 tampered set |
|
||||
| M1 | `set_flags` skips the SHA256SUMS comparison when `--no-sso` is given | T4 tampered set |
|
||||
| M2 | `no_sso_base` skips the `sso-not-on` refusal | T4 `sso-not-on` |
|
||||
| M3 | the `--no-sso` branch of `send_for_target` keeps `--send` | T3 |
|
||||
| M4 | `--send` skips the `send-needs-sso` refusal | T2 |
|
||||
|
||||
@@ -955,16 +955,17 @@ no_sso_base() {
|
||||
check_refuse sso-off-flags "the Console flags from before --sso cannot be read: $why"
|
||||
return 0
|
||||
fi
|
||||
# A --send in the set stays here: send_for_target is the one place that drops it, so the
|
||||
# restores list leaves it out.
|
||||
BASE_CONSOLE=()
|
||||
for ((i = 0; i < ${#SERVE_FLAGS[@]}; i++)); do
|
||||
case "${SERVE_FLAGS[i]}" in
|
||||
--send) ;;
|
||||
--tester-port) i=$((i + 1)) ;;
|
||||
--tester-socket) ;;
|
||||
*) BASE_CONSOLE+=("${SERVE_FLAGS[i]}") ;;
|
||||
*) BASE_CONSOLE+=("${SERVE_FLAGS[i]}")
|
||||
[ "${SERVE_FLAGS[i]}" = --send ] || restored+="${restored:+ }${SERVE_FLAGS[i]}" ;;
|
||||
esac
|
||||
done
|
||||
restored="${BASE_CONSOLE[*]}"
|
||||
for ((i = 0; i < ${#P_CONSOLE[@]}; i++)); do
|
||||
case "${P_CONSOLE[i]}" in
|
||||
--tester-port) i=$((i + 1)); BASE_CONSOLE+=(--tester-port "${P_CONSOLE[i]:-}") ;;
|
||||
|
||||
Reference in new issue
Block a user