| ... | @@ -3191,29 +3191,24 @@ fn dirCreateDirPosix(userdata: ?*anyopaque, dir: Dir, sub_path: []const u8, perm | ... | @@ -3191,29 +3191,24 @@ fn dirCreateDirPosix(userdata: ?*anyopaque, dir: Dir, sub_path: []const u8, perm |
| 3191 | try syscall.checkCancel(); | 3191 | try syscall.checkCancel(); |
| 3192 | continue; | 3192 | continue; |
| 3193 | }, | 3193 | }, |
| 3194 | else => |e| { | 3194 | .ACCES => return syscall.fail(error.AccessDenied), |
| 3195 | syscall.finish(); | 3195 | .PERM => return syscall.fail(error.PermissionDenied), |
| 3196 | switch (e) { | 3196 | .DQUOT => return syscall.fail(error.DiskQuota), |
| 3197 | .ACCES => return error.AccessDenied, | 3197 | .EXIST => return syscall.fail(error.PathAlreadyExists), |
| 3198 | .BADF => |err| return errnoBug(err), // File descriptor used after closed. | 3198 | .LOOP => return syscall.fail(error.SymLinkLoop), |
| 3199 | .PERM => return error.PermissionDenied, | 3199 | .MLINK => return syscall.fail(error.LinkQuotaExceeded), |
| 3200 | .DQUOT => return error.DiskQuota, | 3200 | .NAMETOOLONG => return syscall.fail(error.NameTooLong), |
| 3201 | .EXIST => return error.PathAlreadyExists, | 3201 | .NOENT => return syscall.fail(error.FileNotFound), |
| 3202 | .FAULT => |err| return errnoBug(err), | 3202 | .NOMEM => return syscall.fail(error.SystemResources), |
| 3203 | .LOOP => return error.SymLinkLoop, | 3203 | .NOSPC => return syscall.fail(error.NoSpaceLeft), |
| 3204 | .MLINK => return error.LinkQuotaExceeded, | 3204 | .NOTDIR => return syscall.fail(error.NotDir), |
| 3205 | .NAMETOOLONG => return error.NameTooLong, | 3205 | .ROFS => return syscall.fail(error.ReadOnlyFileSystem), |
| 3206 | .NOENT => return error.FileNotFound, | 3206 | // dragonfly: when dir_fd is unlinked from filesystem |
| 3207 | .NOMEM => return error.SystemResources, | 3207 | .NOTCONN => return syscall.fail(error.FileNotFound), |
| 3208 | .NOSPC => return error.NoSpaceLeft, | 3208 | .ILSEQ => return syscall.fail(error.BadPathName), |
| 3209 | .NOTDIR => return error.NotDir, | 3209 | .BADF => |err| return syscall.errnoBug(err), // File descriptor used after closed. |
| 3210 | .ROFS => return error.ReadOnlyFileSystem, | 3210 | .FAULT => |err| return syscall.errnoBug(err), |
| 3211 | // dragonfly: when dir_fd is unlinked from filesystem | 3211 | else => |err| return syscall.unexpectedErrno(err), |
| 3212 | .NOTCONN => return error.FileNotFound, | | |
| 3213 | .ILSEQ => return error.BadPathName, | | |
| 3214 | else => |err| return posix.unexpectedErrno(err), | | |
| 3215 | } | | |
| 3216 | }, | | |
| 3217 | } | 3212 | } |
| 3218 | } | 3213 | } |
| 3219 | } | 3214 | } |
| ... | @@ -5261,28 +5256,23 @@ fn dirOpenDirPosix( | ... | @@ -5261,28 +5256,23 @@ fn dirOpenDirPosix( |
| 5261 | try syscall.checkCancel(); | 5256 | try syscall.checkCancel(); |
| 5262 | continue; | 5257 | continue; |
| 5263 | }, | 5258 | }, |
| 5264 | else => |e| { | 5259 | .INVAL => return syscall.fail(error.BadPathName), |
| 5265 | syscall.finish(); | 5260 | .ACCES => return syscall.fail(error.AccessDenied), |
| 5266 | switch (e) { | 5261 | .LOOP => return syscall.fail(error.SymLinkLoop), |
| 5267 | .FAULT => |err| return errnoBug(err), | 5262 | .MFILE => return syscall.fail(error.ProcessFdQuotaExceeded), |
| 5268 | .INVAL => return error.BadPathName, | 5263 | .NAMETOOLONG => return syscall.fail(error.NameTooLong), |
| 5269 | .BADF => |err| return errnoBug(err), // File descriptor used after closed. | 5264 | .NFILE => return syscall.fail(error.SystemFdQuotaExceeded), |
| 5270 | .ACCES => return error.AccessDenied, | 5265 | .NODEV => return syscall.fail(error.NoDevice), |
| 5271 | .LOOP => return error.SymLinkLoop, | 5266 | .NOENT => return syscall.fail(error.FileNotFound), |
| 5272 | .MFILE => return error.ProcessFdQuotaExceeded, | 5267 | .NOMEM => return syscall.fail(error.SystemResources), |
| 5273 | .NAMETOOLONG => return error.NameTooLong, | 5268 | .NOTDIR => return syscall.fail(error.NotDir), |
| 5274 | .NFILE => return error.SystemFdQuotaExceeded, | 5269 | .PERM => return syscall.fail(error.PermissionDenied), |
| 5275 | .NODEV => return error.NoDevice, | 5270 | .NXIO => return syscall.fail(error.NoDevice), |
| 5276 | .NOENT => return error.FileNotFound, | 5271 | .ILSEQ => return syscall.fail(error.BadPathName), |
| 5277 | .NOMEM => return error.SystemResources, | 5272 | .FAULT => |err| return syscall.errnoBug(err), |
| 5278 | .NOTDIR => return error.NotDir, | 5273 | .BADF => |err| return syscall.errnoBug(err), // File descriptor used after closed. |
| 5279 | .PERM => return error.PermissionDenied, | 5274 | .BUSY => |err| return syscall.errnoBug(err), // O_EXCL not passed |
| 5280 | .BUSY => |err| return errnoBug(err), // O_EXCL not passed | 5275 | else => |err| return syscall.unexpectedErrno(err), |
| 5281 | .NXIO => return error.NoDevice, | | |
| 5282 | .ILSEQ => return error.BadPathName, | | |
| 5283 | else => |err| return posix.unexpectedErrno(err), | | |
| 5284 | } | | |
| 5285 | }, | | |
| 5286 | } | 5276 | } |
| 5287 | } | 5277 | } |
| 5288 | } | 5278 | } |