test_unistd_misc fixes, and some syscall tweaks
This commit is contained in:
Родитель
03e8538fc0
Коммит
1043c6776b
|
@ -592,12 +592,12 @@ mergeInto(LibraryManager.library, {
|
|||
case {{{ cDefine('TIOCGPGRP') }}}: {
|
||||
if (!stream.tty) return -ERRNO_CODES.ENOTTY;
|
||||
var argp = get();
|
||||
{{{ makeSetValue('argp', 0, 123, 'i32') }}};
|
||||
{{{ makeSetValue('argp', 0, 0, 'i32') }}};
|
||||
return 0;
|
||||
}
|
||||
case {{{ cDefine('TIOCSPGRP') }}}: {
|
||||
if (!stream.tty) return -ERRNO_CODES.ENOTTY;
|
||||
return 0; // no-op
|
||||
return -ERRNO_CODES.EINVAL; // not supported
|
||||
}
|
||||
default: abort('bad ioctl syscall ' + op);
|
||||
}
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
#include <unistd.h>
|
||||
#include <fcntl.h>
|
||||
#include <grp.h>
|
||||
#include <assert.h>
|
||||
#include <emscripten.h>
|
||||
|
||||
int main() {
|
||||
|
@ -15,6 +16,9 @@ int main() {
|
|||
);
|
||||
|
||||
int f = open("working", O_RDONLY);
|
||||
assert(f);
|
||||
int t = open("/dev/stdin", O_RDONLY);
|
||||
assert(t);
|
||||
|
||||
sync();
|
||||
|
||||
|
@ -32,14 +36,14 @@ int main() {
|
|||
printf(", errno: %d\n", errno);
|
||||
errno = 0;
|
||||
|
||||
printf("tcgetpgrp(good): %d", tcgetpgrp(f));
|
||||
printf("tcgetpgrp(good): %d", tcgetpgrp(t));
|
||||
printf(", errno: %d\n", errno);
|
||||
errno = 0;
|
||||
printf("tcgetpgrp(bad): %d", tcgetpgrp(42));
|
||||
printf(", errno: %d\n", errno);
|
||||
errno = 0;
|
||||
|
||||
printf("tcsetpgrp(good): %d", tcsetpgrp(f, 123));
|
||||
printf("tcsetpgrp(good): %d", tcsetpgrp(t, 123));
|
||||
printf(", errno: %d\n", errno);
|
||||
errno = 0;
|
||||
printf("tcsetpgrp(bad): %d", tcsetpgrp(42, 123));
|
||||
|
|
|
@ -3,9 +3,9 @@ fsync(bad): -1, errno: 9
|
|||
fdatasync(good): 0, errno: 0
|
||||
fdatasync(bad): -1, errno: 9
|
||||
tcgetpgrp(good): 0, errno: 0
|
||||
tcgetpgrp(bad): 0, errno: 0
|
||||
tcgetpgrp(bad): -1, errno: 9
|
||||
tcsetpgrp(good): -1, errno: 22
|
||||
tcsetpgrp(bad): -1, errno: 22
|
||||
tcsetpgrp(bad): -1, errno: 9
|
||||
link: -1, errno: 31
|
||||
lockf(good): 0, errno: 0
|
||||
lockf(bad): -1, errno: 9
|
||||
|
|
Загрузка…
Ссылка в новой задаче