Browse Source

LibC: Add stubs for several functions in xattr.h

The following functions are stubbed out:
- getxattr
- lgetxattr
- fgetxattr
- setxattr
- lsetxattr
- fsetxattr
- listxattr
- llistxattr
- flistxattr
Kenneth Myhra 4 năm trước cách đây
mục cha
commit
f8d27303d0

+ 1 - 0
Userland/Libraries/LibC/CMakeLists.txt

@@ -51,6 +51,7 @@ set(LIBC_SOURCES
     sys/uio.cpp
     sys/wait.cpp
     sys/statvfs.cpp
+    sys/xattr.cpp
     termcap.cpp
     termios.cpp
     time.cpp

+ 62 - 0
Userland/Libraries/LibC/sys/xattr.cpp

@@ -0,0 +1,62 @@
+/*
+ * Copyright (c) 2021, the SerenityOS developers
+ *
+ * SPDX-License-Identifier: BSD-2-Clause
+ */
+
+#include <AK/Format.h>
+#include <sys/xattr.h>
+
+ssize_t getxattr(const char*, const char*, void*, size_t)
+{
+    dbgln("FIXME: Implement getxattr()");
+    return 0;
+}
+
+ssize_t lgetxattr(const char*, const char*, void*, size_t)
+{
+    dbgln("FIXME: Implement lgetxattr()");
+    return 0;
+}
+
+ssize_t fgetxattr(int, const char*, void*, size_t)
+{
+    dbgln("FIXME: Implement fgetxattr()");
+    return 0;
+}
+
+int setxattr(const char*, const char*, const void*, size_t, int)
+{
+    dbgln("FIXME: Implement setxattr()");
+    return 0;
+}
+
+int lsetxattr(const char*, const char*, const void*, size_t, int)
+{
+    dbgln("FIXME: Implement lsetxattr()");
+    return 0;
+}
+
+int fsetxattr(int, const char*, const void*, size_t, int)
+{
+    dbgln("FIXME: Implement fsetxattr()");
+    return 0;
+}
+
+ssize_t listxattr(const char*, char*, size_t)
+{
+    dbgln("FIXME: Implement listxattr()");
+    return 0;
+}
+
+ssize_t llistxattr(const char*, char*, size_t)
+{
+    dbgln("FIXME: Implement llistxattr()");
+    return 0;
+}
+
+ssize_t flistxattr(int, char*, size_t)
+{
+    dbgln("FIXME: Implement flistxattr()");
+    return 0;
+}

+ 25 - 0
Userland/Libraries/LibC/sys/xattr.h

@@ -0,0 +1,25 @@
+/*
+ * Copyright (c) 2021, the SerenityOS developers
+ *
+ * SPDX-License-Identifier: BSD-2-Clause
+ */
+
+#pragma once
+
+#include <sys/types.h>
+
+__BEGIN_DECLS
+
+ssize_t getxattr(const char* path, const char* name, void* value, size_t size);
+ssize_t lgetxattr(const char* path, const char* name, void* value, size_t size);
+ssize_t fgetxattr(int fd, const char* name, void* value, size_t size);
+
+int setxattr(const char* path, const char* name, const void* value, size_t size, int flags);
+int lsetxattr(const char* path, const char* name, const void* value, size_t size, int flags);
+int fsetxattr(int fd, const char* name, const void* value, size_t size, int flags);
+
+ssize_t listxattr(const char* path, char* list, size_t size);
+ssize_t llistxattr(const char* path, char* list, size_t size);
+ssize_t flistxattr(int fd, char* list, size_t size);
+
+__END_DECLS