mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 05:57:45 +00:00
Stub out poll() syscall and LibC wrapper.
This commit is contained in:
parent
8bb18fdc56
commit
2bedabbd6c
10 changed files with 63 additions and 10 deletions
|
@ -43,6 +43,7 @@ LIBC_OBJS = \
|
|||
utime.o \
|
||||
gui.o \
|
||||
sys/select.o \
|
||||
poll.o \
|
||||
entry.o
|
||||
|
||||
OBJS = $(AK_OBJS) $(WIDGETS_OBJS) $(LIBC_OBJS) $(SHAREDGRAPHICS_OBJS)
|
||||
|
|
14
LibC/poll.cpp
Normal file
14
LibC/poll.cpp
Normal file
|
@ -0,0 +1,14 @@
|
|||
#include <poll.h>
|
||||
#include <Kernel/Syscall.h>
|
||||
#include <errno.h>
|
||||
|
||||
extern "C" {
|
||||
|
||||
int poll(struct pollfd* fds, int nfds, int timeout)
|
||||
{
|
||||
int rc = syscall(SC_poll, fds, nfds, timeout);
|
||||
__RETURN_WITH_ERRNO(rc, rc, -1);
|
||||
}
|
||||
|
||||
}
|
||||
|
23
LibC/poll.h
Normal file
23
LibC/poll.h
Normal file
|
@ -0,0 +1,23 @@
|
|||
#pragma once
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
|
||||
__BEGIN_DECLS
|
||||
|
||||
#define POLLIN (1u << 0)
|
||||
#define POLLPRI (1u << 2)
|
||||
#define POLLOUT (1u << 3)
|
||||
#define POLLERR (1u << 4)
|
||||
#define POLLHUP (1u << 5)
|
||||
#define POLLNVAL (1u << 6)
|
||||
|
||||
struct pollfd {
|
||||
int fd;
|
||||
short events;
|
||||
short revents;
|
||||
};
|
||||
|
||||
int poll(struct pollfd* fds, int nfds, int timeout);
|
||||
|
||||
__END_DECLS
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue