curl/scripts
Viktor Szakats 969351bb1e
windows: fix CreateFile() calls to support long filenames
It makes them work in Schannel's CA bundle loader, and curl tool's
set/get file timestamp operations (e.g. in `-R`/`--remote-time`). Also
to match file open operations, that already support long filenames.

E.g. when using `--remote-time`, fixing:
```
Warning: Failed to set filetime 1741363917 on outfile: CreateFile failed:
Warning: GetLastError 0x00000003
```

The special long filename logic is necessary to support Windows releases
prior to Windows 10 v1607. With the latter, it's possible to opt-in to
this behavior via a manifest setting. Note that Windows itself also needs
to opt-in to support this. Finally note that curl itself needs passing
`--globoff` to let long filenames through, pending #20044 and #20046.

Refs:
https://learn.microsoft.com/windows/win32/api/fileapi/nf-fileapi-createfilea
https://learn.microsoft.com/windows/win32/fileio/maximum-file-path-limitation

Ref: #8361
Inspired by: #19286
Inspired-by: Mathesh V
Closes #19286
Closes #20040
2025-12-20 14:16:42 +01:00
..
2025-12-12 04:18:48 +01:00
2025-12-12 04:18:48 +01:00
2025-12-12 04:18:48 +01:00
2025-12-12 04:18:48 +01:00
2025-12-18 21:27:58 +01:00
2025-12-12 04:18:48 +01:00
2025-08-22 15:53:41 +02:00
2025-12-12 04:18:48 +01:00
2025-10-28 11:34:19 +01:00
2025-11-10 08:52:55 +01:00