# v157 Windows iSCSI SendTargets portal-tag fix

v157 continues the v154-v156 Windows discovery work.  The v156 live trace showed that Windows now reaches `SendTargets=All`, but rejects a `TargetAddress` value without an explicit portal-group tag:

```text
TargetAddress=192.168.0.8:3260
```

v157 keeps the minimal SendTargets record but restores the RFC-style portal-group tag form:

```text
TargetName=iqn.2026-06.local.mn103s:gdr8050l
TargetAddress=<advertised-host>:3260,1
```

It keeps the earlier fixes:

- correct iSCSI BHS `DataSegmentLength` handling
- conservative Windows login key negotiation
- `Irrelevant` login-key echo behavior
- login-loop guard
- generated Windows connect/disconnect/stop helpers

## Run

```powershell
.\run_gdr8050l_auth_packet_v157_windows_iscsi_bridge.cmd "D:\vscode-workspace\xbox-dvd-tools-v2\disc_dumps\Red Faction II[TQ00501A].xdvd.json" "D:\vscode-workspace\xbox-dvd-tools-v2\disc_dumps\Red Faction II[TQ00501A].iso" --log "D:\vscode-workspace\xbox-dvd-tools-v2\disc_dumps\Red Faction II[TQ00501A].log" --windows-probes --stem gdr8050l_auth_v157_windows_iscsi --write-scsi-script gdr8050l_auth_v157_windows_iscsi_scsi_script.json --iscsi-listen-host 0.0.0.0 --iscsi-advertise-host 192.168.0.8
```

Then start the live target:

```powershell
.\gdr8050l_auth_v157_windows_iscsi_start_iscsi_target.cmd
```

Second Administrator PowerShell:

```powershell
Set-ExecutionPolicy -Scope Process Bypass -Force
.\gdr8050l_auth_v157_windows_iscsi_connect_windows_iscsi.ps1 -PortalAddress 192.168.0.8
```

Stop helper:

```powershell
Set-ExecutionPolicy -Scope Process Bypass -Force
.\gdr8050l_auth_v157_windows_iscsi_stop_iscsi_target.ps1
```

If discovery still fails, send:

```text
gdr8050l_auth_v157_windows_iscsi_live_windows_iscsi.jsonl
```
