Move kern_extattr_* prototypes to <sys/syscallsubr.h>

All of the kern_* prototypes belong in this header.  While here, sort
the prototypes by function name.

Reviewed by:	dchagin
Fixes:		6453d4240f vfs: Export exattr methods to reuse by Linuxulator
Sponsored by:	DARPA
Differential Revision:	https://reviews.freebsd.org/D41766
This commit is contained in:
John Baldwin 2023-09-08 16:36:28 -07:00
parent 3b5fc5eead
commit 3555be0124
3 changed files with 21 additions and 22 deletions

View File

@ -43,6 +43,7 @@
#include <sys/vnode.h>
#include <sys/proc.h>
#include <sys/extattr.h>
#include <sys/syscallsubr.h>
#include <security/audit/audit.h>
#include <security/mac/mac_framework.h>

View File

@ -62,33 +62,11 @@
#ifdef _KERNEL
#include <sys/types.h>
enum uio_seg;
struct uio;
struct thread;
struct ucred;
struct vnode;
int extattr_check_cred(struct vnode *vp, int attrnamespace,
struct ucred *cred, struct thread *td, accmode_t accmode);
int kern_extattr_set_path(struct thread *td, const char *path,
int attrnamespace, const char *attrname, void *data,
size_t nbytes, int follow, enum uio_seg pathseg);
int kern_extattr_set_fd(struct thread *td, int fd, int attrnamespace,
const char *attrname, void *data, size_t nbytes);
int kern_extattr_get_path(struct thread *td, const char *path,
int attrnamespace, const char *attrname, void *data,
size_t nbytes, int follow, enum uio_seg pathseg);
int kern_extattr_get_fd(struct thread *td, int fd, int attrnamespace,
const char *attrname, void *data, size_t nbytes);
int kern_extattr_delete_path(struct thread *td, const char *path,
int attrnamespace, const char *attrname, int follow,
enum uio_seg pathseg);
int kern_extattr_delete_fd(struct thread *td, int fd, int attrnamespace,
const char *attrname);
int kern_extattr_list_path(struct thread *td, const char *path,
int attrnamespace, struct uio *auiop, int follow,
enum uio_seg pathseg);
int kern_extattr_list_fd(struct thread *td, int fd, int attrnamespace,
struct uio *auiop);
#else
#include <sys/cdefs.h>

View File

@ -139,6 +139,26 @@ int kern_cpuset_setid(struct thread *td, cpuwhich_t which,
int kern_dup(struct thread *td, u_int mode, int flags, int old, int new);
int kern_execve(struct thread *td, struct image_args *args,
struct mac *mac_p, struct vmspace *oldvmspace);
int kern_extattr_delete_fd(struct thread *td, int fd, int attrnamespace,
const char *attrname);
int kern_extattr_delete_path(struct thread *td, const char *path,
int attrnamespace, const char *attrname, int follow,
enum uio_seg pathseg);
int kern_extattr_get_fd(struct thread *td, int fd, int attrnamespace,
const char *attrname, void *data, size_t nbytes);
int kern_extattr_get_path(struct thread *td, const char *path,
int attrnamespace, const char *attrname, void *data,
size_t nbytes, int follow, enum uio_seg pathseg);
int kern_extattr_list_fd(struct thread *td, int fd, int attrnamespace,
struct uio *auiop);
int kern_extattr_list_path(struct thread *td, const char *path,
int attrnamespace, struct uio *auiop, int follow,
enum uio_seg pathseg);
int kern_extattr_set_fd(struct thread *td, int fd, int attrnamespace,
const char *attrname, void *data, size_t nbytes);
int kern_extattr_set_path(struct thread *td, const char *path,
int attrnamespace, const char *attrname, void *data,
size_t nbytes, int follow, enum uio_seg pathseg);
int kern_fchmodat(struct thread *td, int fd, const char *path,
enum uio_seg pathseg, mode_t mode, int flag);
int kern_fchownat(struct thread *td, int fd, const char *path,