Commit c6dcc95
Stop legacy BIOS clients trying to sanboot the floppy on exit
`sanboot --drive 0` is a UEFI idea: it means "the first disk carrying
\EFI\Boot\bootx64.efi". Under BIOS, iPXE hands the number straight to
int13, where 0x00 is the first FLOPPY and hard disks start at 0x80 -- so
since 5583681 (2024-07) every legacy client has spent its first exit
attempt trying to boot a floppy that is not there:
Booting from SAN device 0x00
Boot from SAN device 0x00 failed: Input/output error
Booting from SAN device 0x80
That commit prepended the EFI probe to a string that had been
`--drive 0x80 || 0x81 || 0x82`, and applied it to both platforms. The
`|| 0x80` behind it means the machine usually still boots, which is why
it went unnoticed for two years -- but the failed int13 attempt is not
free on every firmware, and the error it prints sends people hunting a
disk fault that does not exist (forum topic 18237, a Wyse 5060 in legacy
mode).
Gate on platform, not arch, and only where ${platform} is positively
known NOT to be efi -- it is absent from some older chain URLs, and EFI
is the safe assumption when missing: an EFI client handed the BIOS
string loses the \EFI\Boot probe, while a BIOS client handed the EFI
string is the bug being fixed. Same shape as the Secure Boot menu gate
already in _filterMenus().
The golden file is the gate: reverting the source line turns 19 BIOS
lines red. `exit-sanboot-efi` is new, so both platforms are pinned and a
future edit cannot collapse them back to one string.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011yRrcKNuEfUsrgYys9vosD1 parent b87df74 commit c6dcc95
13 files changed
Lines changed: 123 additions & 31 deletions
File tree
- packages/web
- management/languages
- de_DE.UTF-8/LC_MESSAGES
- en_US.UTF-8/LC_MESSAGES
- es_ES.UTF-8/LC_MESSAGES
- eu_ES.UTF-8/LC_MESSAGES
- fr_FR.UTF-8/LC_MESSAGES
- it_IT.UTF-8/LC_MESSAGES
- ja_JP.UTF-8/LC_MESSAGES
- pt_BR.UTF-8/LC_MESSAGES
- zh_CN.UTF-8/LC_MESSAGES
- src/Boot
- tests
- fixtures
Lines changed: 0 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10410 | 10410 | | |
10411 | 10411 | | |
10412 | 10412 | | |
10413 | | - | |
10414 | 10413 | | |
10415 | 10414 | | |
10416 | 10415 | | |
| |||
Lines changed: 0 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10419 | 10419 | | |
10420 | 10420 | | |
10421 | 10421 | | |
10422 | | - | |
10423 | 10422 | | |
10424 | 10423 | | |
10425 | 10424 | | |
| |||
Lines changed: 0 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10576 | 10576 | | |
10577 | 10577 | | |
10578 | 10578 | | |
10579 | | - | |
10580 | 10579 | | |
10581 | 10580 | | |
10582 | 10581 | | |
| |||
Lines changed: 0 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10411 | 10411 | | |
10412 | 10412 | | |
10413 | 10413 | | |
10414 | | - | |
10415 | 10414 | | |
10416 | 10415 | | |
10417 | 10416 | | |
| |||
Lines changed: 0 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10403 | 10403 | | |
10404 | 10404 | | |
10405 | 10405 | | |
10406 | | - | |
10407 | 10406 | | |
10408 | 10407 | | |
10409 | 10408 | | |
| |||
Lines changed: 0 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10126 | 10126 | | |
10127 | 10127 | | |
10128 | 10128 | | |
10129 | | - | |
10130 | 10129 | | |
10131 | 10130 | | |
10132 | 10131 | | |
| |||
Lines changed: 0 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10083 | 10083 | | |
10084 | 10084 | | |
10085 | 10085 | | |
10086 | | - | |
10087 | 10086 | | |
10088 | 10087 | | |
10089 | 10088 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
8923 | 8923 | | |
8924 | 8924 | | |
8925 | 8925 | | |
8926 | | - | |
8927 | 8926 | | |
8928 | 8927 | | |
8929 | 8928 | | |
| |||
Lines changed: 0 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10406 | 10406 | | |
10407 | 10407 | | |
10408 | 10408 | | |
10409 | | - | |
10410 | 10409 | | |
10411 | 10410 | | |
10412 | 10411 | | |
| |||
Lines changed: 0 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10406 | 10406 | | |
10407 | 10407 | | |
10408 | 10408 | | |
10409 | | - | |
10410 | 10409 | | |
10411 | 10410 | | |
10412 | 10411 | | |
| |||
0 commit comments