Lucas CHOLLET
d288c700c7
LibCore: Add a wrapper for endgrent()
2022-06-09 22:08:04 +02:00
MacDue
0295d79339
LibCore: Add posix_spawn() wrapper to Core::System
2022-05-25 23:14:22 +01:00
Sam Atkins
32ab09a930
LibCore: Add a wrapper for execvpe() and friends
...
This is a single function, which behaves like the various LibC exec()
functions depending on the passed parameters. No direct equivalent is
made for execl() - you have to wrap your arguments in a Span of some
kind.
On Serenity, this calls the syscall directly, whereas Lagom forwards to
the appropriate LibC function.
2022-04-11 21:09:42 +02:00
kleines Filmröllchen
ceba27c3fe
LibCore: Add openat() syscall wrapper and improve open's implementation
...
We don't need va_args in open(), we can just use a default parameter.
2022-04-11 00:08:48 +02:00
Kenneth Myhra
0015040ebd
LibCore: Add syscall wrapper for access()
2022-03-29 21:28:29 -07:00
Brian Gianforcaro
6eebd69b70
LibCore: Add Core::System::drop_privileges()
...
In a few places we intentionally drop privileges to reduce the potential
security surface area of networked program, with the pattern of:
```
if (setgid(getgid()) || setuid(getuid()) {
return 1;
}
```
We can make this a bit nicer to use by creating a wrapper.
2022-03-22 11:39:20 +01:00
Lucas CHOLLET
5d29f64c99
LibCore: Add wrapper for posix_openpt(), grantpt() and unlockpt()
2022-03-02 18:08:05 +01:00
Lucas CHOLLET
ddf9987c39
LibCore+LibC: Add wrapper for setenv
...
I also added a common interface with StringView compatible parameters:
int serenity_setenv(const char*, ssize_t, const char*, ssize_t, int)
This function is called by both C and C++ API for setenv().
2022-03-02 18:08:05 +01:00
Lucas CHOLLET
b1af1b399e
LibCore: Add tcsetpgrp(int, pid_t) wrapper
2022-03-02 18:08:05 +01:00
Lucas CHOLLET
19d5974e3a
LibCore: Add killpg() wrapper
2022-03-02 18:08:05 +01:00
Lenny Maiorani
b455363ce7
LibCore: Add rmdir system call wrapper
2022-02-28 13:57:26 +01:00
Isak Holmstrom
4f716caa33
LibCore: Add FreeBSD as OpenBSD/Apple in System.cpp & System.h
2022-02-17 09:26:56 +00:00
sin-ack
37658e6fa6
LibCore: Implement System::fchown
2022-02-14 11:44:09 +01:00
rvictorr
73303f0dc1
LibCore: Add syscall wrapper for profiling_free_buffer()
2022-02-13 12:40:36 +01:00
rvictorr
014c0d68c0
LibCore: Add syscall wrapper for profiling_disable()
2022-02-13 12:40:36 +01:00
rvictorr
c6a743f22c
LibCore: Add syscall wrapper for profiling_enable()
2022-02-13 12:40:36 +01:00
kleines Filmröllchen
cf1f58d51c
LibCore/System: Add anon_create syscall wrapper
...
This wrapper is particularly helpful as we use a combination of similar
syscalls on Linux to simulate the behavior of the Serenity-exclusive
anon_create syscall. Users therefore won't have to worry about the
platform anymore :^)
2022-02-10 21:35:17 +01:00
Kenneth Myhra
c10abd6be2
LibCore: Add mkfifo() syscall wrapper
2022-01-24 14:01:58 +03:30
Kenneth Myhra
9fe1ebebdc
LibCore: Add mknod() syscall wrapper
2022-01-24 14:01:58 +03:30
Federico Guerinoni
2291ef6c3c
LibCore: Add syscall wrapper for umount()
2022-01-22 13:31:52 +02:00
Maciej
ccb8374434
LibCore: Add Core::System wrapper for disown()
2022-01-21 13:44:36 +01:00
mjz19910
a9fb34ca6f
LibCore: Add ErrorOr wrapper for adjtime
2022-01-21 01:52:22 +01:00
sin-ack
301f4c469f
LibCore: Implement Core::System::lseek
2022-01-20 10:40:51 +01:00
Lucas CHOLLET
b3b40ae1fa
LibCore: Add wrapper for sethostname
2022-01-14 19:42:19 +02:00
Junior Rantila
0d328f3c86
LibCore+flock: Make Core::System::waitpid more ergonomic
2022-01-11 16:04:29 +01:00
Junior Rantila
7801e38af1
LibCore: Add beep wrapper
2022-01-09 11:16:00 +03:30
Lucas CHOLLET
3fa5be655d
LibCore: Add a wrapper for setsid()
2022-01-09 03:22:10 +03:30
Junior Rantila
9a38d1de07
LibCore+ImageViewer: Add unlink() wrapper, use it
2022-01-06 18:20:07 +01:00
mjz19910
eacbbca4c4
LibCore: Impliment ErrorOr wrapper for chdir
2022-01-04 10:59:42 +00:00
mjz19910
91f5fc796b
LibCore: Add an ErrorOr wrapper for uname
2022-01-04 07:33:23 +00:00
Andreas Kling
431bd069f0
LibCore: Add Core::System wrappers for getspent() and getspnam()
2022-01-02 18:08:02 +01:00
Andreas Kling
7008f74214
LibCore: Add syscall wrappers for getpwuid() and getgrgid()
2022-01-02 18:08:02 +01:00
Andreas Kling
1e4117f1e1
LibCore: Add syscall wrapper for getgroups()
...
This wrapper does all the grunt work of figuring out how many extra GIDs
there are, and then returning them nicely wrapped in a Vector<gid_t>.
2022-01-02 18:08:02 +01:00
circl
63760603f3
Kernel+LibC+LibCore: Add lchown and fchownat functions
...
This modifies sys$chown to allow specifying whether or not to follow
symlinks and in which directory.
This was then used to implement lchown and fchownat in LibC and LibCore.
2022-01-01 15:08:49 +01:00
Ali Mohammad Pur
8de8a7766d
LibCore: Add Core::System::setpgid()
2021-12-31 02:19:45 +03:30
Ali Mohammad Pur
ee46cee31f
LibCore: Make Core::System::pipe2() available on Lagom
...
Note that this drops the flags on the floor if not on linux or serenity.
2021-12-31 02:19:45 +03:30
tuftedocelot
ea0a002468
LibCore: Add OpenBSD headers to System and LocalSocket
...
Add the correct header to System.h and add OpenBSD-specific handling of
signals and socket process id
2021-12-29 03:46:56 -08:00
Kenneth Myhra
7772309169
LibCore+chown: Return ErrorOr<Optional<...>> for getgrnam and getpwnam
...
This patch returns an empty Optional<...> instead of an Error for
Core::System::getgrname and Core::System::getpwnam if we can't find a
matching group or user entry.
It also updates the 'chown' utility to support this new behavior.
2021-12-28 23:23:54 +01:00
Sam Atkins
289cf8d7ef
LibCore: Add ErrorOr wrappers to socket syscalls
...
These are all pretty simple so I thought I would add them all in one go:
- socket()
- bind()
- listen()
- accept()
- accept4()
- connect()
- shutdown()
- send()
- sendmsg()
- sendto()
- recv()
- recvmsg()
- recvfrom()
- getsockopt()
- setsockopt()
- getsockname()
- getpeername()
- socketpair()
2021-12-27 22:00:01 +01:00
Andreas Kling
2bd1a62ce1
LibCore: Add syscall wrapper for ptrace()
2021-12-25 11:05:30 +01:00
Brian Gianforcaro
a62669ebcf
LibCore: Add Core::System::getcwd() wrapper
2021-12-24 14:29:52 -08:00
Andreas Kling
7f5d060450
LibCore: Add missing <utime.h> include to System.h
2021-12-21 01:27:51 +01:00
Andreas Kling
bd8f10db80
LibCore: Add syscall wrapper for utime()
2021-12-20 22:16:05 +01:00
Junior Rantila
4178479ee5
LibCore: Add wrapper for signal()
2021-12-19 18:26:57 -08:00
Andreas Kling
ead9c36c92
LibCore: Add syscall wrapper for rename()
2021-12-16 22:48:17 +01:00
Andreas Kling
fb4ffe22c8
LibCore: Add syscall wrapper for fchmod()
2021-12-16 22:48:17 +01:00
Andreas Kling
aa7e8b5797
LibCore: Add syscall wrapper for mkstemp()
2021-12-16 22:48:17 +01:00
Andreas Kling
2637a64130
LibCore: Add syscall wrapper for fork()
2021-12-16 22:48:17 +01:00
Andreas Kling
01c2756e9a
LibCore: Add syscall wrapper for mkdir()
2021-12-16 22:48:17 +01:00
Andreas Kling
f69bd3bd46
LibCore: Add syscall wrapper for mount()
2021-12-16 22:48:17 +01:00