From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.org/gmane.linux.lib.musl.general/13245 Path: news.gmane.org!.POSTED!not-for-mail From: Rich Felker Newsgroups: gmane.linux.lib.musl.general Subject: Re: [PATCH] wireup linux/name_to_handle_at and name_to_handle_at syscalls Date: Wed, 12 Sep 2018 21:30:41 -0400 Message-ID: <20180913013041.GE1878@brightrain.aerifal.cx> References: <20180913010211.40336-1-raj.khem@gmail.com> Reply-To: musl@lists.openwall.com NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: blaine.gmane.org 1536802131 21471 195.159.176.226 (13 Sep 2018 01:28:51 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Thu, 13 Sep 2018 01:28:51 +0000 (UTC) User-Agent: Mutt/1.5.21 (2010-09-15) To: musl@lists.openwall.com Original-X-From: musl-return-13261-gllmg-musl=m.gmane.org@lists.openwall.com Thu Sep 13 03:28:47 2018 Return-path: Envelope-to: gllmg-musl@m.gmane.org Original-Received: from mother.openwall.net ([195.42.179.200]) by blaine.gmane.org with smtp (Exim 4.84_2) (envelope-from ) id 1g0GR3-0005Ti-MT for gllmg-musl@m.gmane.org; Thu, 13 Sep 2018 03:28:45 +0200 Original-Received: (qmail 20113 invoked by uid 550); 13 Sep 2018 01:30:54 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-ID: Original-Received: (qmail 20092 invoked from network); 13 Sep 2018 01:30:54 -0000 Content-Disposition: inline In-Reply-To: <20180913010211.40336-1-raj.khem@gmail.com> Original-Sender: Rich Felker Xref: news.gmane.org gmane.linux.lib.musl.general:13245 Archived-At: On Wed, Sep 12, 2018 at 06:02:11PM -0700, Khem Raj wrote: > Signed-off-by: Khem Raj > --- > include/fcntl.h | 7 +++++++ > src/linux/name_to_handle_at.c | 11 +++++++++++ > src/linux/open_by_handle_at.c | 10 ++++++++++ > 3 files changed, 28 insertions(+) > create mode 100644 src/linux/name_to_handle_at.c > create mode 100644 src/linux/open_by_handle_at.c > > diff --git a/include/fcntl.h b/include/fcntl.h > index 6d8edcd1..5c3defcb 100644 > --- a/include/fcntl.h > +++ b/include/fcntl.h > @@ -155,6 +155,11 @@ int lockf(int, int, off_t); > #define F_OWNER_PID 1 > #define F_OWNER_PGRP 2 > #define F_OWNER_GID 2 > +struct file_handle { > + unsigned int handle_bytes; > + int handle_type; > + unsigned char f_handle[]; > +}; > struct f_owner_ex { > int type; > pid_t pid; > @@ -170,6 +175,8 @@ struct f_owner_ex { > #define SPLICE_F_GIFT 8 > int fallocate(int, int, off_t, off_t); > #define fallocate64 fallocate > +int name_to_handle_at(int, const char *, struct file_handle *, int *, int); > +int open_by_handle_at(int, struct file_handle *, int); > ssize_t readahead(int, off_t, size_t); > int sync_file_range(int, off_t, off_t, unsigned); > ssize_t vmsplice(int, const struct iovec *, size_t, unsigned); > diff --git a/src/linux/name_to_handle_at.c b/src/linux/name_to_handle_at.c > new file mode 100644 > index 00000000..bb6f8007 > --- /dev/null > +++ b/src/linux/name_to_handle_at.c > @@ -0,0 +1,11 @@ > +#define _GNU_SOURCE > +#include > +#include "syscall.h" > + > +int name_to_handle_at(int dirfd, const char *pathname, > + struct file_handle *handle, > + int *mount_id, int flags) > +{ > + return syscall(SYS_name_to_handle_at, dirfd, > + pathname, handle, mount_id, flags); > +} > diff --git a/src/linux/open_by_handle_at.c b/src/linux/open_by_handle_at.c > new file mode 100644 > index 00000000..9bc93f14 > --- /dev/null > +++ b/src/linux/open_by_handle_at.c > @@ -0,0 +1,10 @@ > +#define _GNU_SOURCE > +#include > +#include "syscall.h" > + > +int open_by_handle_at(int mount_fd, struct file_handle *handle, > + int flags) > +{ > + return syscall(SYS_open_by_handle_at, mount_fd, > + handle, flags); > +} > -- > 2.19.0 Thanks. Merging with minor style fixes. Rich