Commit 2f65b5f
committed
unix: squelch futimens() EPERM on CIFS/SMB shares in copyfile
futimens() on CIFS/SMB shares may fail with EPERM because these
filesystems do not support setting arbitrary timestamps. Since
preserving timestamps during copyfile is best-effort, detect the
CIFS/SMB condition using uv__is_cifs_or_smb() and squelch the error,
matching the existing handling for fchmod() in the same function.
Without this fix, uv_fs_copyfile() fails with EPERM when copying
files to CIFS/SMB mounts on Linux (e.g. Alpine containers with
mounted cifs shares).
Fixes: nodejs/node#56248
Refs: #43961 parent a19ceeb commit 2f65b5f
1 file changed
Lines changed: 13 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1326 | 1326 | | |
1327 | 1327 | | |
1328 | 1328 | | |
| 1329 | + | |
| 1330 | + | |
| 1331 | + | |
| 1332 | + | |
| 1333 | + | |
| 1334 | + | |
| 1335 | + | |
| 1336 | + | |
| 1337 | + | |
| 1338 | + | |
| 1339 | + | |
| 1340 | + | |
1329 | 1341 | | |
| 1342 | + | |
1330 | 1343 | | |
1331 | 1344 | | |
1332 | 1345 | | |
| |||
0 commit comments