General further adoption of SPDX licensing ID tags.Mainly focus on files that use BSD 3-Clause license.The Software Package Data Exchange (SPDX) group provides a specificationto make it easier f
General further adoption of SPDX licensing ID tags.Mainly focus on files that use BSD 3-Clause license.The Software Package Data Exchange (SPDX) group provides a specificationto make it easier for automated tools to detect and summarize well knownopensource licenses. We are gradually adopting the specification, notingthat the tags are considered only advisory and do not, in any way,superceed or replace the license texts.Special thanks to Wind River for providing access to "The Duke ofHighlander" tool: an older (2014) run over FreeBSD tree was useful as astarting point.
show more ...
* limit size of buffers to RPC_MAXDATASIZE * don't leak memory * be more picky about bad parametersFrom:https://raw.githubusercontent.com/guidovranken/rpcbomb/master/libtirpc_patch.txthttps://
* limit size of buffers to RPC_MAXDATASIZE * don't leak memory * be more picky about bad parametersFrom:https://raw.githubusercontent.com/guidovranken/rpcbomb/master/libtirpc_patch.txthttps://github.com/guidovranken/rpcbomb/blob/master/rpcbind_patch.txtvia NetBSD.Reviewed by: emaste, cem (earlier version)Differential Revision: https://reviews.freebsd.org/D10922MFC after: 3 days
xdr(3): add missing comma after xdr_sizeof(3) in SYNOPSISThis unbreaks the .Nm declarationReported by: make manlintMFC after: 2 weeksSponsored by: Dell EMC Isilon
libc/xdr: unsign some loop indexes.Although usually small, values produced by nitems() are unsigned.Unsign inxdeing variables related to nitems() macros to avoidsigned vs. unsigned comparisons.
libc: do not include <sys/types.h> where <sys/param.h> was already includedAccording to style(9):> normally, include <sys/types.h> OR <sys/param.h>, but not both.(<sys/param.h> already includes <
libc: do not include <sys/types.h> where <sys/param.h> was already includedAccording to style(9):> normally, include <sys/types.h> OR <sys/param.h>, but not both.(<sys/param.h> already includes <sys/types.h> when LOCORE is not defined).
libc: make some more use of the nitems() macro.We have an nitems() macro in the <sys/param.h> header that isconvenient to re-use as it makes things easier to read.Given that it is available alrea
libc: make some more use of the nitems() macro.We have an nitems() macro in the <sys/param.h> header that isconvenient to re-use as it makes things easier to read.Given that it is available already without adding additionalheaders and other parts of libc already use it, extend a bitmore its use.
libc: replace 0 with NULL for pointers.While here also cleanup some surrounding code; particularlydrop some malloc() casts.Found with devel/coccinelle.Reviewed by: bde (previous version - all
libc: replace 0 with NULL for pointers.While here also cleanup some surrounding code; particularlydrop some malloc() casts.Found with devel/coccinelle.Reviewed by: bde (previous version - all new bugs are mine)
Bring in initial libc and libstand support for RISC-V.Reviewed by: andrew, emaste, kibSponsored by: DARPA, AFRLSponsored by: HEIF5Differential Revision: https://reviews.freebsd.org/D4943
Use ANSI C prototypes. Eliminates -Wold-style-definition warnings.
Use proper prototype for harmless().
Make x_putlong() and x_putbytes() prototypes match theprototypes in <rpc/xdr.h>
Use ANSI C prototypes.
Add the start of libc and libstand for arm64. Not all of the machinedependent functions have been implemented, but this is enough for world.Differential Revision: https://reviews.freebsd.org/D2132
Add the start of libc and libstand for arm64. Not all of the machinedependent functions have been implemented, but this is enough for world.Differential Revision: https://reviews.freebsd.org/D2132Reviewed by: emasteSponsored by: The FreeBSD Foundation
Remove ia64.This includes:o All directories named *ia64*o All files named *ia64*o All ia64-specific code guarded by __ia64__o All ia64-specific makefile logico Mention of ia64 in com
Remove ia64.This includes:o All directories named *ia64*o All files named *ia64*o All ia64-specific code guarded by __ia64__o All ia64-specific makefile logico Mention of ia64 in comments and documentationThis excludes:o Everything under contrib/o Everything under crypto/o sys/xen/interfaceo sys/sys/elf_common.hDiscussed at: BSDcan
Replace use of ${.CURDIR} by ${LIBC_SRCTOP} and define ${LIBC_SRCTOP}if not already defined. This allows building libc from outside oflib/libc using a reach-over makefile.A typical use-case is to
Replace use of ${.CURDIR} by ${LIBC_SRCTOP} and define ${LIBC_SRCTOP}if not already defined. This allows building libc from outside oflib/libc using a reach-over makefile.A typical use-case is to build a standard ILP32 version and a COMPAT32version in a single iteration by building the COMPAT32 version using areach-over makefile.Obtained from: Juniper Networks, Inc.
Replace Sun RPC license with a 3-clause BSD license. This license changewas approved in 2010 by Wim Coekaerts, Senior Vice President, Linux andVirtualization at Oracle Corporation.
Fix undefined behavior: (1 << 31) is not defined as 1 is an int and thisshifts into the sign bit. Instead use (1U << 31) which gets theexpected result.This fix is not ideal as it assumes a 32 bi
Fix undefined behavior: (1 << 31) is not defined as 1 is an int and thisshifts into the sign bit. Instead use (1U << 31) which gets theexpected result.This fix is not ideal as it assumes a 32 bit int, but does fix the issuefor most cases.A similar change was made in OpenBSD.Discussed with: -arch, rdivackyReviewed by: cperciva
Add a HISTORY sectionRequested by: arundel
- Add xdr_sizeof(3) to libc- Document xdr_sizeof(3); from NetBSDDiscussed with: kib
Implement support for RPCSEC_GSS authentication to both the NFS clientand server. This replaces the RPC implementation of the NFS client andserver with the newer RPC implementation originally devel
Implement support for RPCSEC_GSS authentication to both the NFS clientand server. This replaces the RPC implementation of the NFS client andserver with the newer RPC implementation originally developed(actually ported from the userland sunrpc code) to support the NFSLock Manager. I have tested this code extensively and I believe it isstable and that performance is at least equal to the legacy RPCimplementation.The NFS code currently contains support for both the new RPCimplementation and the older legacy implementation inherited from theoriginal NFS codebase. The default is to use the new implementation -add the NFS_LEGACYRPC option to fall back to the old code. When Imerge this support back to RELENG_7, I will probably change this sothat users have to 'opt in' to get the new code.To use RPCSEC_GSS on either client or server, you must build a kernelwhich includes the KGSSAPI option and the crypto device. On theuserland side, you must build at least a new libc, mountd, mount_nfsand gssd. You must install new versions of /etc/rc.d/gssd and/etc/rc.d/nfsd and add 'gssd_enable=YES' to /etc/rc.conf.As long as gssd is running, you should be able to mount an NFSfilesystem from a server that requires RPCSEC_GSS authentication. Themount itself can happen without any kerberos credentials but allaccess to the filesystem will be denied unless the accessing user hasa valid ticket file in the standard place (/tmp/krb5cc_<uid>). Thereis currently no support for situations where the ticket file is in adifferent place, such as when the user logged in via SSH and hasdelegated credentials from that login. This restriction is alsopresent in Solaris and Linux. In theory, we could improve this infuture, possibly using Brooks Davis' implementation of variantsymlinks.Supporting RPCSEC_GSS on a server is nearly as simple. You must createservice creds for the server in the form 'nfs/<fqdn>@<REALM>' andinstall them in /etc/krb5.keytab. The standard heimdal utility ktutilmakes this fairly easy. After the service creds have been created, youcan add a '-sec=krb5' option to /etc/exports and restart both mountdand nfsd.The only other difference an administrator should notice is that nfsddoesn't fork to create service threads any more. In normal operation,there will be two nfsd processes, one in userland waiting for TCPconnections and one in the kernel handling requests. The latterprocess will create as many kthreads as required - these should bevisible via 'top -H'. The code has some support for varying the numberof service threads according to load but initially at least, nfsd usesa fixed number of threads according to the value supplied to its '-n'option.Sponsored by: Isilon SystemsMFC after: 1 month
Add an implementation of the RPCSEC_GSS authentication protocol for RPC. Thisis based on an old implementation from the University of Michigan with lots ofchanges and fixes by me and the addition o
Add an implementation of the RPCSEC_GSS authentication protocol for RPC. Thisis based on an old implementation from the University of Michigan with lots ofchanges and fixes by me and the addition of a Solaris-compatible API.Sponsored by: Isilon SystemsReviewed by: alfred
Don't assume that there is readable data on the stream after thefragment header.
Use C comments since we now preprocess these files with CPP.
Add each directory's symbol map file to SYM_MAPS.
Add symbol maps and initial symbol version definitions to libc.Reviewed by: davidxu
123