Commit graph

373 commits

Author SHA1 Message Date
Alexander van der Grinten e00df39972
Merge pull request #71 from ArsenArsen/master
various net-related fixes
2020-04-30 18:06:55 +02:00
Alexander van der Grinten cdab82a183 sysdeps/managarm: Handle all poll() events 2020-04-29 19:37:16 +02:00
Kacper Słomiński 9cd91b340c
options/posix: implement mkfifo and mkfifoat (#72) 2020-04-28 13:01:14 +02:00
Arsen 9dca190998 options/posix: send back address size properly 2020-04-27 01:31:00 +02:00
Dennis Bonke 4a71593226
options/ansi: Implemented renameat() (#69)
* options/ansi: Implemented renameat()

Signed-off-by: Dennisbonke <admin@dennisbonke.com>
2020-04-25 22:08:26 +02:00
fido2020 74cf0fe7f7 sysdeps/lemon: Dynamic linking and implemented stat, pread/write, getcwd/chdir and sleep 2020-04-25 10:09:14 +10:00
Dennisbonke a3d73302a8 options/posix: Stubbed fchmodat() and implemented mkdirat()
sysdeps/managarm: Implemented mkdirat()

Signed-off-by: Dennisbonke <admin@dennisbonke.com>
2020-04-24 21:21:11 +02:00
Dennisbonke 03620eff46 options/posix: Implemented pread()
Signed-off-by: Dennisbonke <admin@dennisbonke.com>

sysdeps/managarm: Renamed PREAD to PT_PREAD for consistency.

Signed-off-by: Dennisbonke <admin@dennisbonke.com>
2020-04-24 17:48:54 +02:00
Alexander van der Grinten c308904d07 sysdeps/managarm: Pass exit code to POSIX 2020-04-21 18:39:12 +02:00
Dennisbonke cb156e28eb options/posix: Implemented faccessat()
Signed-off-by: Dennisbonke <admin@dennisbonke.com>
2020-04-20 18:02:34 +02:00
Alexander van der Grinten 262171539d sysdeps/managarm: Update to new futex signature 2020-04-19 17:16:17 +02:00
Alexander van der Grinten fb29991027 sysdeps/managarm: Pass O_NONBLOCK in openat() 2020-04-13 11:17:00 +02:00
Alexander van der Grinten 899051c3a9
Merge pull request #37 from Dennisbonke/master
posix: Implemented fdopendir
2020-04-11 17:28:39 +02:00
Dennisbonke 2e4200c7f2 sysdeps/managarm: Implemented F_SETFD in sys_fcntl()
Signed-off-by: Dennisbonke <admin@dennisbonke.com>
2020-04-11 14:24:38 +02:00
Alexander van der Grinten b796c4dad4
Merge pull request #35 from Dennisbonke/master
Added required functions for GNU Tar
2020-04-10 14:38:39 +02:00
Dennisbonke c981334c1f posix: Added sys_openat() syscall.
managarm: Implemented sys_openat().

Signed-off-by: Dennisbonke <admin@dennisbonke.com>
2020-04-10 14:36:30 +02:00
Dennisbonke 75d993ddc2 sysdeps/managarm: Added sys_unlinkat() and made sys_unlink() a call to sys_unlinkat()
Signed-off-by: Dennisbonke <admin@dennisbonke.com>
2020-04-10 14:27:23 +02:00
Arsen 663cbd5a44 options/linux: add sys/reboot.h 2020-04-08 23:09:06 +02:00
fido2020 65597827bd Updated Lemon sysdeps 2020-04-04 17:37:44 +11:00
mintsuki 546c89218c qword: Implement umount function 2020-04-01 23:34:52 +02:00
Kacper Słomiński 505a24eed9 sysdeps/managarm: fix bad fd check in sys_fcntl 2020-04-01 20:09:03 +02:00
Kacper Słomiński b5e3170bad sysdeps/managarm: properly handle bad FDs in sysdep functions 2020-04-01 20:03:27 +02:00
Alexander van der Grinten dd8d96e75d
Merge pull request #30 from Geertiebear/master
Add getaddrinfo() support and various other additions
2020-04-01 09:35:20 +02:00
Alexander van der Grinten 7e38bd04c1
Merge pull request #31 from Geertiebear/static_linking
Integrate ld.so into static build
2020-03-31 20:17:39 +02:00
Geert Custers ab54452aa5 options/rtdl: integrate ld.so into static build 2020-03-31 11:47:09 +02:00
Geert Custers bb436d43a1 sysdeps/linux: implement various sysdeps 2020-03-30 13:53:02 +02:00
Geert Custers 05aaa486fe abis: add socket, netinet/in and fcntl abi to abi-bits 2020-03-30 13:52:52 +02:00
Kacper Słomiński 9267e7fa68 sysdeps/managarm: handle all poll events 2020-03-26 20:44:38 +01:00
Alexander van der Grinten 8ec0cc34fe sysdeps/managarm: Make file table caching thread-local 2020-03-26 20:33:25 +01:00
Kacper Słomiński 42cb54d838 sysdeps: provide futex sysdep functions to ld.so 2020-03-26 13:20:55 +01:00
Kacper Słomiński 82d9209dc8 options/internal: implement AllocatorLock::lock slow path 2020-03-26 13:11:41 +01:00
Kacper Słomiński 775cf84d44 options/posix, sysdeps/managarm: implement thread creation 2020-03-22 13:37:14 +01:00
Alexander van der Grinten 1a81e0e4c4 sysdeps/managarm: Impl. anon_allocate via supercalls 2020-03-21 10:33:43 +01:00
Alexander van der Grinten 73c0a47a6c sysdeps/managarm: Use VM_MAP POSIX request in ld.so 2020-03-15 12:58:23 +01:00
Alexander van der Grinten b2ac045fac sysdeps/managarm: Pass mmap() hint to POSIX 2020-03-15 12:58:23 +01:00
Thomas Woertman 1cc87bf50b sysdeps/Sigma: Add linux option and transition to new IPC system 2020-03-08 00:06:15 +01:00
Kacper Słomiński b593640479 sysdeps/managarm: replace (L)STAT and FSTAT with FSTATAT 2020-02-25 22:16:51 +01:00
Kacper Słomiński ad9cc4a6ff sysdeps/managarm: handle EBADF and EINVAL errors in dup and dup2 2020-02-23 20:12:11 +01:00
Kacper Słomiński 0d801ae176 sysdeps/managarm: fix array out of bounds access 2020-02-23 19:43:38 +01:00
Thomas Woertman 8f475792b1 sysdeps/sigma: Use SysdepsAllocator and add kbus auxval 2020-02-21 21:31:21 +01:00
Geert Custers b8f932c2cb sysdeps/lemon: add errno.h, signal.h and stat.h abi-bits 2020-02-20 17:48:13 +01:00
Geert Custers c99a9d711d sysdeps: add sys_sigaction() on linux and move signal.h to abi-bits 2020-02-20 17:48:13 +01:00
Geert Custers 13cb8ea65f sysdeps: add sys_stat() and sys_clock_get() on linux, move stat.h to abi-bits 2020-02-20 17:48:12 +01:00
Geert Custers 4c5ee60f67 sysdeps/linux: temporary band-aid for lack of mode argument in sys_open 2020-02-20 17:48:12 +01:00
Geert Custers c0a1c4e411 ansi/errno: move errno.h to abi-bits 2020-02-20 15:07:56 +01:00
Geert Custers 974aff8530 sysdeps/linux: add sys_isatty() 2020-02-20 15:07:47 +01:00
Alexander van der Grinten ddfc749d9d
Merge pull request #25 from fido2020/master
Added Lemon compatibility and 'static' build option
2020-02-17 08:21:16 +01:00
fido2020 77c6a7d124 Forgot to uncomment a line 2020-02-17 18:14:03 +11:00
fido2020 532d1fd1a7 Further cleaned up Lemon sysdeps, static library no longer linking against dynamic linker 2020-02-17 18:05:39 +11:00
Thomas Woertman 3d4efd2ccf sysdeps/Sigma: Move VFS tid to auxvector 2020-02-16 21:54:55 +01:00
Alexander van der Grinten 0b05f686ee internal: Update after frigg slab_pool changes 2020-02-16 21:15:31 +01:00
fido2020 74c303724d Cleaned up sysdeps 2020-02-15 21:29:20 +11:00
fido2020 c4917449d2 Moved Lemon sysdeps to LibLemon 2020-02-14 13:19:33 +11:00
fido2020 67284d6874 Added Lemon compatibility 2020-02-13 22:19:28 +11:00
Alexander van der Grinten f244971fca sysdeps/managarm: Update .proto locations 2020-02-12 20:23:13 +01:00
Arsen 7795b1e743 sysdeps/managarm: migrate sys_msg_recv/send to fs 2020-02-02 18:36:56 +01:00
Alexander van der Grinten 656b1e5ebb sysdeps/managarm: Update helAllocateMemory API 2020-02-02 12:45:13 +01:00
Thomas Woertman dd6a93a8ed Sigma sysdeps: Reorder libsigma 2020-01-29 18:48:35 +01:00
Thomas Woertman 219ac8ebb9 Sigma sysdeps: Fully refactor IPC messages 2020-01-11 13:02:21 +01:00
mintsuki a3d7c2dc27 qword: Implement fstatat and unlinkat syscalls 2020-01-05 17:22:03 +01:00
mintsuki b377e3bdca qword: Move mount to own header 2019-12-29 09:33:35 +01:00
mintsuki 8a10c316a3 qword: Add mount syscall 2019-12-29 09:16:25 +01:00
Thomas Woertman 20724cbdc8 Sigma sysdeps: Use updated IPC API 2019-12-26 15:33:58 +01:00
Thomas Woertman b740943059 Sigma sysdeps: Get rid of valloc and switch to mmap 2019-12-22 20:28:22 +01:00
Alexander van der Grinten dfdd0cf2e2
Merge pull request #22 from Matt8898/flock
sysdeps/managarm: Implement flock
2019-12-21 00:08:22 +01:00
Matteo Semenzato d79e3ce5d7 sysdeps/managarm: Implement flock 2019-12-20 13:59:53 +01:00
Alexander van der Grinten 09c19b4655 sysdeps/managarm: Implement sys_vm_protect() 2019-12-14 21:34:58 +01:00
Alexander van der Grinten 23ed47f36b sysdeps/managarm: Use pb2frigg instead of legacy frigg_pb 2019-12-11 20:09:44 +01:00
Alexander van der Grinten 4eccfbc3ca sysdeps/managarm: Disable signals via thread page
This should improve performance by reducing the number
of context switches due to the SIG_MASK supercall.
2019-12-01 13:27:49 +01:00
Thomas Woertman 26a8759c57 Sigma sysdeps: change internal mmap function signature 2019-11-30 20:14:38 +01:00
Kacper Słomiński 326efaadb1 sysdeps/managarm: add support for DRM_IOCTL_MODE_DESTROY_DUMB 2019-11-24 16:20:55 +01:00
Thomas Woertman 22a1f84bf6
sysdeps/sigma: Implement non-fixed mmap 2019-11-17 17:24:58 +01:00
Thomas Woertman 48e8583bfd
sysdeps/sigma: implement sys_close and sys_sleep 2019-10-18 23:23:27 +02:00
Thomas Woertman d140195995
sysdeps/sigma: Implement basic filesystem functions 2019-10-18 17:06:03 +02:00
Thomas Woertman 59e21debdd
Sigma sysdeps: Stub fuxex functions and implement sys_vm_map 2019-08-31 16:37:59 +02:00
mintsuki 1307277b33 qword: Implement sys_sleep 2019-08-27 16:41:11 +02:00
Alexander van der Grinten 3ab5825ba2 sysdeps/managarm: Handle ENOENT from INOTIFY_ADD 2019-08-26 06:57:08 +02:00
mintsuki 5d4f6ab3c9 unistd: Implement setuid 2019-08-24 11:41:51 +02:00
mintsuki da73a4cfc4 qword: Add sys_getpgrp sysdep 2019-08-24 02:37:50 +02:00
thom_tl a617362984 Create Sigma sysdeps (#17)
* Move abi.h from abis/{qword/,managarm/} to abis/mlibc/
* Add the possibility to link against external libraries (e.g., to provide syscall wrappers)
* Create Sigma sysdeps
2019-08-20 16:47:05 +02:00
mintsuki 6331ff272c qword: Removed perfmon syscall, added getmemstats syscall 2019-08-20 07:11:42 +02:00
Kacper Słomiński fedde8d0db sysdeps/managarm: return error on invalid handle instead of panicking 2019-08-14 20:43:58 +02:00
Alexander van der Grinten a78a0fc678 sysdeps/linux: Provide Scrt1.o
Necessary for #15.
2019-08-14 18:49:55 +02:00
Alexander van der Grinten f5f2037302 sysdeps/linux: Append \n after sys_log() 2019-08-14 18:49:55 +02:00
mintsuki ec8d078715 qword: Implement dup() 2019-08-13 08:04:11 +02:00
mintsuki fc454b5433 qword: Add gethostname sysdep 2019-08-13 02:05:46 +02:00
Alexander van der Grinten 6ff4761273 sysdeps/linux: Port mlibc to Linux
Implement the minimal functionality that is needed to
successfully run a "Hello world" program.
2019-08-12 20:47:29 +02:00
Alexander van der Grinten 7a23a3499c options/ansi: Move seek-whence.h to abi-bits 2019-08-11 11:44:27 +02:00
Alexander van der Grinten 8f12988ad0 sysdeps: Fix install of abi-bits/vm-flags.h 2019-08-10 10:40:39 +02:00
Alexander van der Grinten 4533641521 options/posix: Move vm-flags.h to abi-bits 2019-08-10 09:27:04 +02:00
Alexander van der Grinten 9b0ac5214f options/posix: Implement fchdir() 2019-08-04 13:46:58 +02:00
Alexander van der Grinten 84297e2ff2 sysdeps/managarm: Stub DRM_IOCTL_{SET,DROP}_MASTER 2019-06-27 22:35:35 +02:00
Alexander van der Grinten efb08daa96 sysdeps/managarm: Ignore NULL in DRM_IOCTL_VERSION 2019-06-27 22:26:07 +02:00
qookie d528f6c43e Implement eventfd functions and F_SETFL and F_GETFL 2019-06-27 18:33:55 +02:00
Alexander van der Grinten c5569c1268 sysdeps/managarm: Update to queue construction API 2019-06-19 06:34:05 +02:00
Alexander van der Grinten ca77e7adba meson: Add mlibc_no_headers option 2019-06-15 11:15:41 +02:00
mintsuki 65f5635cc9 qword sysdeps: Renamed file.cpp to generic.cpp 2019-06-01 19:45:19 +02:00
qookie 7ea9ae213d sysdeps/managarm: properly handle errors in DRM_IOCTL_MODE_CURSOR ioctl 2019-05-19 22:32:49 +02:00
Alexander van der Grinten 4f1bdec46e sysdeps/managarm: Impl. sys_inotify_add_watch() 2019-05-19 11:20:03 +02:00
Alexander van der Grinten b224a47277 sysdeps/managarm: Add support for POLLHUP 2019-05-19 11:19:30 +02:00
Alexander van der Grinten 4b07802dff sysdeps/qword: Fix syscall number of sys_pipe() 2019-05-18 09:11:42 +02:00
qookie 44fc4d882f sysdeps/managarm: add support for the DRM_IOCTL_MODE_CURSOR ioctl 2019-05-15 19:54:00 +02:00
Alexander van der Grinten 5c80d1df41 options/posix: Condense sys_pipe2 into sys_pipe 2019-05-12 18:18:24 +02:00
mintsuki 4e0324295e Added pipe2 syscall and qword sysdep for it 2019-05-06 17:33:24 +02:00
Alexander van der Grinten 2dbce8a595 sysdeps/managarm: Maintain per-chunk RC in queue impl. 2019-05-04 16:28:27 +02:00
Alexander van der Grinten 1c6f48cd88 sysdeps/managarm: Implement sys_getcwd() 2019-05-04 15:13:20 +02:00
Alexander van der Grinten 50524753eb sysdeps/managarm: Add size hints to various requests 2019-05-04 15:13:20 +02:00
Alexander van der Grinten 6a587df3f6 sysdeps/managarm: Return errors from execve() 2019-05-04 15:13:20 +02:00
Alexander van der Grinten 2cf826b2c4 sysdeps/managar: Support TIOC{G,S}WINSZ 2019-05-04 15:13:20 +02:00
Alexander van der Grinten 265a4fdd8a sysdeps/managarm: Allow retrieval in sys_sigaction() 2019-03-23 14:11:48 +01:00
Alexander van der Grinten 044780a494 sysdeps/managarm: Report EPIPE from sys_msg_send() 2019-03-07 16:08:34 +01:00
mintsuki 582923e1af Merge branch 'master' of https://github.com/managarm/mlibc 2019-03-05 20:13:09 +01:00
mintsuki 135b136ec6 qword: Add mkdir 2019-03-05 20:13:04 +01:00
Alexander van der Grinten f9cbfe88a7 options/posix: Rework sys_stat and impl. statat() 2019-03-05 19:11:59 +01:00
mintsuki 852c126585 qword: Added unlink 2019-03-05 19:10:48 +01:00
Alexander van der Grinten c651fd536b sysdeps/managarm: Use POSIX lane from process data 2019-03-04 19:11:16 +01:00
Alexander van der Grinten 0299321051 sysdeps/managarm: Update to new process data ABI 2019-03-04 06:37:26 +01:00
mintsuki 2eff28f183 qword: add unlink stub 2019-03-02 13:29:52 +01:00
mintsuki 2b52cc7842 Added getcwd and futex qword sysdeps 2019-02-25 16:53:47 +01:00
Alexander van der Grinten 567174c6cb sysdeps/qword: Impl. sys_access() using sys_open() 2019-02-23 17:17:53 +01:00
Alexander van der Grinten 7c87e37b73 sysdeps/qword: Implement sys_isatty() 2019-02-23 15:52:38 +01:00
Alexander van der Grinten 338e1e0018 options/ansi: Flush all open FILEs on exit() 2019-02-23 15:51:32 +01:00
mintsuki 15e78a8bd5 Add tcflow 2019-02-22 20:58:27 +01:00
mintsuki 1d389d903e qword: Added more sysdeps 2019-02-13 19:05:35 +01:00
mintsuki 33cc5d4172 Added ttyname qword stub 2019-02-04 17:15:03 +01:00
Alexander van der Grinten 6362c0580b sysdeps/managarm: Implement chdir() 2019-01-28 06:46:50 +01:00
Geert Custers b03cdfed54 sysdeps/qword add clock_gettime and getrusage syscalls 2019-01-27 11:18:04 +01:00
Alexander van der Grinten 1f3eab5a7b sysdeps/qword: Add cpu_time member of perfstats 2019-01-26 18:08:55 +01:00
Geert Custers a9f7b62577 sysdeps/qword: add tcsetattr and tcgetattr syscalls 2019-01-24 08:41:12 +01:00
Alexander van der Grinten 510cbd3891 sysdeps/qword: Add syscall_time to perfstats 2019-01-20 18:01:06 +01:00
Alexander van der Grinten 542c62c88b sysdeps/qword: Add perfmon API 2019-01-20 12:50:01 +01:00
Alexander van der Grinten a7785bc7b7 sysdeps/qword: Add getcwd() sysdeps 2019-01-13 14:51:12 +01:00
Alexander van der Grinten 8181cc0f37 sysdeps/qword: Do not fail on sys_anon_free() 2019-01-12 13:01:51 +01:00
Alexander van der Grinten a461184a36 sysdeps/managarm: Add getrusage() implementation 2019-01-12 12:06:40 +01:00
mintsuki 1538736a50 Add qword pipe sysdep 2019-01-10 11:05:53 +01:00
Alexander van der Grinten c0c49b4993 options/elf: Implement program_invocation_name 2019-01-09 19:05:44 +01:00
Alexander van der Grinten 932b87755b sysdeps/managarm: Add stub for sys_chdir() 2019-01-09 18:40:12 +01:00
mintsuki aae65d7de6 Added fcntl sysdep 2019-01-07 06:23:54 +01:00
Alexander van der Grinten 92bacdf8f5 meson: Support headers-only installation 2019-01-06 13:22:25 +01:00
mintsuki f55cc06c19 Change qword ABI for open flags 2019-01-06 05:44:03 +01:00
mintsuki 42d358427f qword: Added readdir sysdep, changed lseek ABI 2019-01-05 21:02:46 +01:00
mintsuki 40ba7eb663 Added dup2 qword sysdep 2019-01-05 18:31:22 +01:00
mintsuki f1618f85cc Added qword chdir sysdep 2019-01-04 18:11:41 +01:00
mintsuki 3d7b2c4d6e Added proper errno support 2019-01-03 18:55:48 +01:00
Alexander van der Grinten 484847fc78 sysdeps/managarm: Make sysdeps signal-safe 2019-01-03 18:48:43 +01:00
mintsuki a0984d8153 Added getppid sysdep 2019-01-03 17:52:26 +01:00
Alexander van der Grinten 06889cf255 sysdeps/managarm: Change sys_isatty() logic 2019-01-03 13:52:51 +01:00
mintsuki a16747dbdf Add qword waitpid sysdep and fix sysdep errno bug 2019-01-03 06:28:57 +01:00
mintsuki d9ced72226 Added more qword sysdeps 2019-01-01 15:19:34 +01:00
Alexander van der Grinten c8e1ebf1d0 meson: Move include dirs to main meson.build 2018-12-28 00:25:24 +01:00