mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-06-27 23:08:31 +00:00
Make improvements
- Introduce ualarm() function - Make rename() report EISEMPTY on Windows - Always raise EINVAL upon open(O_RDONLY|O_TRUNC) - Add macro so ./configure will detect SOCK_CLOEXEC - Fix O_TRUNC without O_CREAT not working on Windows - Let fcntl(F_SETFL) change O_APPEND status on Windows - Make sure pwrite() / pread() report ESPIPE on sockets - Raise ESPIPE on Windows when pwrite() is used on pipe - Properly compute O_APPEND CreateFile() flags on Windows - Don't require O_DIRECTORY to open directories on Windows - Fix more instances of Windows reporting EISDIR and ENOTDIR - Normalize EFTYPE and EMLINK to ELOOP on NetBSD and FreeBSD - Make unlink() / rmdir() work on read-only files on Windows - Validate UTF-8 on Windows paths to fix bug with overlong NUL - Always print signal name to stderr when crashing due to SIG_DFL - Fix Windows bug where denormalized paths >260 chars didn't work - Block signals on BSDs when thread exits before trashing its own stack
This commit is contained in:
parent
ec957491ea
commit
ebf784d4f5
76 changed files with 1019 additions and 568 deletions
|
@ -62,9 +62,6 @@ TEST(readlinkat, test) {
|
|||
EXPECT_EQ(255, buf[8] & 255);
|
||||
buf[8] = 0;
|
||||
EXPECT_STREQ("hello→", buf);
|
||||
p = gc(xjoinpaths(g_testlib_tmpdir, "hello→"));
|
||||
q = gc(realpath("there→", 0));
|
||||
EXPECT_EQ(0, strcmp(p, q), "%`'s\n\t%`'s", p, q);
|
||||
}
|
||||
|
||||
TEST(readlinkat, efault) {
|
||||
|
@ -89,10 +86,7 @@ TEST(readlinkat, frootloop) {
|
|||
ASSERT_SYS(0, 0, symlink("froot", "froot"));
|
||||
ASSERT_SYS(ELOOP, -1, readlink("froot/loop", buf, sizeof(buf)));
|
||||
if (O_NOFOLLOW) {
|
||||
ASSERT_SYS(IsFreebsd() ? EMLINK
|
||||
: IsNetbsd() ? EFTYPE
|
||||
: ELOOP,
|
||||
-1, open("froot", O_RDONLY | O_NOFOLLOW));
|
||||
ASSERT_SYS(ELOOP, -1, open("froot", O_RDONLY | O_NOFOLLOW));
|
||||
if (0 && O_PATH) { /* need rhel5 test */
|
||||
ASSERT_NE(-1, (fd = open("froot", O_RDONLY | O_NOFOLLOW | O_PATH)));
|
||||
ASSERT_NE(-1, close(fd));
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue