mirror of
https://github.com/curl/curl.git
synced 2026-08-25 14:53:34 +03:00
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
This commit is contained in:
parent
a468e605eb
commit
969351bb1e
6 changed files with 75 additions and 30 deletions
|
|
@ -353,6 +353,9 @@ This is the full list of functions generally banned.
|
|||
atoi
|
||||
atol
|
||||
calloc
|
||||
CreateFile
|
||||
CreateFileA
|
||||
CreateFileW
|
||||
fclose
|
||||
fdopen
|
||||
fopen
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue