From 4fa6a132e25fc9b6eabf826c8a7f38b628868f09 Mon Sep 17 00:00:00 2001 From: Achille Roussel Date: Mon, 1 May 2023 10:59:12 -0700 Subject: [PATCH] syscall: add fsync using libc Signed-off-by: Achille Roussel --- src/syscall/syscall_libc.go | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/syscall/syscall_libc.go b/src/syscall/syscall_libc.go index 68072faff..7300afc88 100644 --- a/src/syscall/syscall_libc.go +++ b/src/syscall/syscall_libc.go @@ -71,6 +71,13 @@ func Open(path string, flag int, mode uint32) (fd int, err error) { return } +func Fsync(fd int) (err error) { + if libc_fsync(int32(fd)) < 0 { + err = getErrno() + } + return +} + func Readlink(path string, p []byte) (n int, err error) { data := cstring(path) buf, count := splitSlice(p) @@ -404,6 +411,11 @@ func libc_rename(from, to *byte) int32 //export symlink func libc_symlink(from, to *byte) int32 +// int fsync(int fd); +// +//export fsync +func libc_fsync(fd int32) int32 + // ssize_t readlink(const char *path, void *buf, size_t count); // //export readlink