From owner-svn-src-projects@freebsd.org Mon Jun 22 20:55:49 2020 Return-Path: Delivered-To: svn-src-projects@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 3B9EE33C2E4 for ; Mon, 22 Jun 2020 20:55:49 +0000 (UTC) (envelope-from rmacklem@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 49rMBY0qgZz4QQD; Mon, 22 Jun 2020 20:55:49 +0000 (UTC) (envelope-from rmacklem@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 1347314900; Mon, 22 Jun 2020 20:55:49 +0000 (UTC) (envelope-from rmacklem@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 05MKtmUK030146; Mon, 22 Jun 2020 20:55:48 GMT (envelope-from rmacklem@FreeBSD.org) Received: (from rmacklem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 05MKtkfR030134; Mon, 22 Jun 2020 20:55:46 GMT (envelope-from rmacklem@FreeBSD.org) Message-Id: <202006222055.05MKtkfR030134@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rmacklem set sender to rmacklem@FreeBSD.org using -f From: Rick Macklem Date: Mon, 22 Jun 2020 20:55:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r362510 - in projects/nfs-over-tls/sys: compat/freebsd32 kern sys X-SVN-Group: projects X-SVN-Commit-Author: rmacklem X-SVN-Commit-Paths: in projects/nfs-over-tls/sys: compat/freebsd32 kern sys X-SVN-Commit-Revision: 362510 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 22 Jun 2020 20:55:49 -0000 Author: rmacklem Date: Mon Jun 22 20:55:45 2020 New Revision: 362510 URL: https://svnweb.freebsd.org/changeset/base/362510 Log: Add the rpctls_syscall. Modified: projects/nfs-over-tls/sys/compat/freebsd32/freebsd32_syscall.h projects/nfs-over-tls/sys/compat/freebsd32/freebsd32_syscalls.c projects/nfs-over-tls/sys/compat/freebsd32/freebsd32_sysent.c projects/nfs-over-tls/sys/compat/freebsd32/freebsd32_systrace_args.c projects/nfs-over-tls/sys/compat/freebsd32/syscalls.master projects/nfs-over-tls/sys/kern/init_sysent.c projects/nfs-over-tls/sys/kern/syscalls.c projects/nfs-over-tls/sys/kern/syscalls.master projects/nfs-over-tls/sys/kern/systrace_args.c projects/nfs-over-tls/sys/sys/syscall.h projects/nfs-over-tls/sys/sys/syscall.mk projects/nfs-over-tls/sys/sys/sysproto.h Modified: projects/nfs-over-tls/sys/compat/freebsd32/freebsd32_syscall.h ============================================================================== --- projects/nfs-over-tls/sys/compat/freebsd32/freebsd32_syscall.h Mon Jun 22 20:42:58 2020 (r362509) +++ projects/nfs-over-tls/sys/compat/freebsd32/freebsd32_syscall.h Mon Jun 22 20:55:45 2020 (r362510) @@ -502,4 +502,5 @@ #define FREEBSD32_SYS_sigfastblock 573 #define FREEBSD32_SYS___realpathat 574 #define FREEBSD32_SYS_close_range 575 -#define FREEBSD32_SYS_MAXSYSCALL 576 +#define FREEBSD32_SYS_rpctls_syscall 576 +#define FREEBSD32_SYS_MAXSYSCALL 577 Modified: projects/nfs-over-tls/sys/compat/freebsd32/freebsd32_syscalls.c ============================================================================== --- projects/nfs-over-tls/sys/compat/freebsd32/freebsd32_syscalls.c Mon Jun 22 20:42:58 2020 (r362509) +++ projects/nfs-over-tls/sys/compat/freebsd32/freebsd32_syscalls.c Mon Jun 22 20:55:45 2020 (r362510) @@ -612,4 +612,5 @@ const char *freebsd32_syscallnames[] = { "sigfastblock", /* 573 = sigfastblock */ "__realpathat", /* 574 = __realpathat */ "close_range", /* 575 = close_range */ + "rpctls_syscall", /* 576 = rpctls_syscall */ }; Modified: projects/nfs-over-tls/sys/compat/freebsd32/freebsd32_sysent.c ============================================================================== --- projects/nfs-over-tls/sys/compat/freebsd32/freebsd32_sysent.c Mon Jun 22 20:42:58 2020 (r362509) +++ projects/nfs-over-tls/sys/compat/freebsd32/freebsd32_sysent.c Mon Jun 22 20:55:45 2020 (r362510) @@ -665,4 +665,5 @@ struct sysent freebsd32_sysent[] = { { AS(sigfastblock_args), (sy_call_t *)sys_sigfastblock, AUE_NULL, NULL, 0, 0, SYF_CAPENABLED, SY_THR_STATIC }, /* 573 = sigfastblock */ { AS(__realpathat_args), (sy_call_t *)sys___realpathat, AUE_REALPATHAT, NULL, 0, 0, 0, SY_THR_STATIC }, /* 574 = __realpathat */ { AS(close_range_args), (sy_call_t *)sys_close_range, AUE_CLOSERANGE, NULL, 0, 0, SYF_CAPENABLED, SY_THR_STATIC }, /* 575 = close_range */ + { AS(rpctls_syscall_args), (sy_call_t *)lkmressys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 576 = rpctls_syscall */ }; Modified: projects/nfs-over-tls/sys/compat/freebsd32/freebsd32_systrace_args.c ============================================================================== --- projects/nfs-over-tls/sys/compat/freebsd32/freebsd32_systrace_args.c Mon Jun 22 20:42:58 2020 (r362509) +++ projects/nfs-over-tls/sys/compat/freebsd32/freebsd32_systrace_args.c Mon Jun 22 20:55:45 2020 (r362510) @@ -3376,6 +3376,14 @@ systrace_args(int sysnum, void *params, uint64_t *uarg *n_args = 3; break; } + /* rpctls_syscall */ + case 576: { + struct rpctls_syscall_args *p = params; + iarg[0] = p->op; /* int */ + uarg[1] = (intptr_t) p->path; /* const char * */ + *n_args = 2; + break; + } default: *n_args = 0; break; @@ -9103,6 +9111,19 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *d break; }; break; + /* rpctls_syscall */ + case 576: + switch(ndx) { + case 0: + p = "int"; + break; + case 1: + p = "userland const char *"; + break; + default: + break; + }; + break; default: break; }; @@ -10999,6 +11020,11 @@ systrace_return_setargdesc(int sysnum, int ndx, char * break; /* close_range */ case 575: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* rpctls_syscall */ + case 576: if (ndx == 0 || ndx == 1) p = "int"; break; Modified: projects/nfs-over-tls/sys/compat/freebsd32/syscalls.master ============================================================================== --- projects/nfs-over-tls/sys/compat/freebsd32/syscalls.master Mon Jun 22 20:42:58 2020 (r362509) +++ projects/nfs-over-tls/sys/compat/freebsd32/syscalls.master Mon Jun 22 20:55:45 2020 (r362510) @@ -1164,5 +1164,8 @@ char *buf, size_t size, int flags); } 575 AUE_CLOSERANGE NOPROTO { int close_range(u_int lowfd, u_int highfd, \ int flags); } +; 576 is initialised by the krpc code, if present. +576 AUE_NULL NOSTD|NOPROTO { int rpctls_syscall(int op, \ + const char *path); } ; vim: syntax=off Modified: projects/nfs-over-tls/sys/kern/init_sysent.c ============================================================================== --- projects/nfs-over-tls/sys/kern/init_sysent.c Mon Jun 22 20:42:58 2020 (r362509) +++ projects/nfs-over-tls/sys/kern/init_sysent.c Mon Jun 22 20:55:45 2020 (r362510) @@ -631,4 +631,5 @@ struct sysent sysent[] = { { AS(sigfastblock_args), (sy_call_t *)sys_sigfastblock, AUE_NULL, NULL, 0, 0, SYF_CAPENABLED, SY_THR_STATIC }, /* 573 = sigfastblock */ { AS(__realpathat_args), (sy_call_t *)sys___realpathat, AUE_REALPATHAT, NULL, 0, 0, 0, SY_THR_STATIC }, /* 574 = __realpathat */ { AS(close_range_args), (sy_call_t *)sys_close_range, AUE_CLOSERANGE, NULL, 0, 0, SYF_CAPENABLED, SY_THR_STATIC }, /* 575 = close_range */ + { AS(rpctls_syscall_args), (sy_call_t *)lkmressys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 576 = rpctls_syscall */ }; Modified: projects/nfs-over-tls/sys/kern/syscalls.c ============================================================================== --- projects/nfs-over-tls/sys/kern/syscalls.c Mon Jun 22 20:42:58 2020 (r362509) +++ projects/nfs-over-tls/sys/kern/syscalls.c Mon Jun 22 20:55:45 2020 (r362510) @@ -582,4 +582,5 @@ const char *syscallnames[] = { "sigfastblock", /* 573 = sigfastblock */ "__realpathat", /* 574 = __realpathat */ "close_range", /* 575 = close_range */ + "rpctls_syscall", /* 576 = rpctls_syscall */ }; Modified: projects/nfs-over-tls/sys/kern/syscalls.master ============================================================================== --- projects/nfs-over-tls/sys/kern/syscalls.master Mon Jun 22 20:42:58 2020 (r362509) +++ projects/nfs-over-tls/sys/kern/syscalls.master Mon Jun 22 20:55:45 2020 (r362510) @@ -3234,6 +3234,13 @@ int flags ); } +; 576 is initialised by the krpc code, if present. +576 AUE_NULL NOSTD { + int rpctls_syscall( + int op, + _In_z_ const char *path + ); + } ; Please copy any additions and changes to the following compatability tables: ; sys/compat/freebsd32/syscalls.master Modified: projects/nfs-over-tls/sys/kern/systrace_args.c ============================================================================== --- projects/nfs-over-tls/sys/kern/systrace_args.c Mon Jun 22 20:42:58 2020 (r362509) +++ projects/nfs-over-tls/sys/kern/systrace_args.c Mon Jun 22 20:55:45 2020 (r362510) @@ -3368,6 +3368,14 @@ systrace_args(int sysnum, void *params, uint64_t *uarg *n_args = 3; break; } + /* rpctls_syscall */ + case 576: { + struct rpctls_syscall_args *p = params; + iarg[0] = p->op; /* int */ + uarg[1] = (intptr_t) p->path; /* const char * */ + *n_args = 2; + break; + } default: *n_args = 0; break; @@ -9008,6 +9016,19 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *d break; }; break; + /* rpctls_syscall */ + case 576: + switch(ndx) { + case 0: + p = "int"; + break; + case 1: + p = "userland const char *"; + break; + default: + break; + }; + break; default: break; }; @@ -10931,6 +10952,11 @@ systrace_return_setargdesc(int sysnum, int ndx, char * break; /* close_range */ case 575: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* rpctls_syscall */ + case 576: if (ndx == 0 || ndx == 1) p = "int"; break; Modified: projects/nfs-over-tls/sys/sys/syscall.h ============================================================================== --- projects/nfs-over-tls/sys/sys/syscall.h Mon Jun 22 20:42:58 2020 (r362509) +++ projects/nfs-over-tls/sys/sys/syscall.h Mon Jun 22 20:55:45 2020 (r362510) @@ -511,4 +511,5 @@ #define SYS_sigfastblock 573 #define SYS___realpathat 574 #define SYS_close_range 575 -#define SYS_MAXSYSCALL 576 +#define SYS_rpctls_syscall 576 +#define SYS_MAXSYSCALL 577 Modified: projects/nfs-over-tls/sys/sys/syscall.mk ============================================================================== --- projects/nfs-over-tls/sys/sys/syscall.mk Mon Jun 22 20:42:58 2020 (r362509) +++ projects/nfs-over-tls/sys/sys/syscall.mk Mon Jun 22 20:55:45 2020 (r362510) @@ -416,4 +416,5 @@ MIASM = \ shm_rename.o \ sigfastblock.o \ __realpathat.o \ - close_range.o + close_range.o \ + rpctls_syscall.o Modified: projects/nfs-over-tls/sys/sys/sysproto.h ============================================================================== --- projects/nfs-over-tls/sys/sys/sysproto.h Mon Jun 22 20:42:58 2020 (r362509) +++ projects/nfs-over-tls/sys/sys/sysproto.h Mon Jun 22 20:55:45 2020 (r362510) @@ -1832,6 +1832,10 @@ struct close_range_args { char highfd_l_[PADL_(u_int)]; u_int highfd; char highfd_r_[PADR_(u_int)]; char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; }; +struct rpctls_syscall_args { + char op_l_[PADL_(int)]; int op; char op_r_[PADR_(int)]; + char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; +}; int nosys(struct thread *, struct nosys_args *); void sys_sys_exit(struct thread *, struct sys_exit_args *); int sys_fork(struct thread *, struct fork_args *); @@ -2222,6 +2226,7 @@ int sys_shm_rename(struct thread *, struct shm_rename_ int sys_sigfastblock(struct thread *, struct sigfastblock_args *); int sys___realpathat(struct thread *, struct __realpathat_args *); int sys_close_range(struct thread *, struct close_range_args *); +int sys_rpctls_syscall(struct thread *, struct rpctls_syscall_args *); #ifdef COMPAT_43 @@ -3152,6 +3157,7 @@ int freebsd12_closefrom(struct thread *, struct freebs #define SYS_AUE_sigfastblock AUE_NULL #define SYS_AUE___realpathat AUE_REALPATHAT #define SYS_AUE_close_range AUE_CLOSERANGE +#define SYS_AUE_rpctls_syscall AUE_NULL #undef PAD_ #undef PADL_