eventfd syscall wrapper and read/write wrappers
This commit is contained in:
parent
11e4b92556
commit
15b77d52c9
4 changed files with 46 additions and 0 deletions
7
src/linux/eventfd.c
Normal file
7
src/linux/eventfd.c
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
#include <sys/eventfd.h>
|
||||
#include "syscall.h"
|
||||
|
||||
int eventfd(unsigned int count, int flags)
|
||||
{
|
||||
return syscall(flags ? SYS_eventfd2 : SYS_eventfd, count, flags);
|
||||
}
|
||||
7
src/linux/eventfd_read.c
Normal file
7
src/linux/eventfd_read.c
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
#include <sys/eventfd.h>
|
||||
#include <unistd.h>
|
||||
|
||||
int eventfd_read(int fd, eventfd_t *value)
|
||||
{
|
||||
return (sizeof(*value) == read(fd, value, sizeof(*value))) ? 0 : -1;
|
||||
}
|
||||
7
src/linux/eventfd_write.c
Normal file
7
src/linux/eventfd_write.c
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
#include <sys/eventfd.h>
|
||||
#include <unistd.h>
|
||||
|
||||
int eventfd_write(int fd, eventfd_t value)
|
||||
{
|
||||
return (sizeof(value) == write(fd, &value, sizeof(value))) ? 0 : -1;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue