History log of /freebsd-10.0-release/include/rpcsvc/
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
259065 07-Dec-2013 gjb

- Copy stable/10 (r259064) to releng/10.0 as part of the
10.0-RELEASE cycle.
- Update __FreeBSD_version [1]
- Set branch name to -RC1

[1] 10.0-CURRENT __FreeBSD_version value ended at '55', so
start releng/10.0 at '100' so the branch is started with
a value ending in zero.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation

256281 10-Oct-2013 gjb

Copy head (r256279) to stable/10 as part of the 10.0-RELEASE cycle.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation


249583 17-Apr-2013 gabor

- Correct mispellings of the word necessary

Submitted by: Christoph Mallon <christoph.mallon@gmx.de> (via private mail)


231118 07-Feb-2012 dim

Consistently set RPCGEN_CPP when running rpcgen, so the C preprocessor
set via ${CPP} is used, instead of always using hardcoded /usr/bin/cpp.

MFC after: 1 week


229781 07-Jan-2012 uqs

Spelling fixes for include/


153149 06-Dec-2005 peter

Fix ypwhich -m. This should be MFC'ed back at least as far as RELENG_5.

Submitted by: Gil Kloepfer <gil@arlut.utexas.edu>
PR: 64445


129777 27-May-2004 tmm

Correct some types in the yp structures; this fixes a number of problems
on sparc64. Obtained from and cross-checked with the NetBSD version
of this file and the rpcgen-generated code.


121577 26-Oct-2003 peter

Argh. Forward declare some structs rather than increase include file
dependencies.


121549 26-Oct-2003 peter

Prototype yp_maplist()


114629 04-May-2003 obrien

Use __FBSDID vs. rcsid[].


108533 01-Jan-2003 schweikh

Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup,
especially in troff files.


104311 01-Oct-2002 alfred

Add prototypes for rstat(3) and havedisk(3).

Requested by: kris, Emil Mikulic <emikulic@optushome.com.au>
MFC After: 1 day


97406 28-May-2002 alfred

Assume __STDC__, remove non-__STDC__ code.
Add $FreeBSD$.

Submitted by: keramida


96462 12-May-2002 ru

Added new bsd.incs.mk which handles installing of header files
via INCS. Implemented INCSLINKS (equivalent to SYMLINKS) to
handle symlinking include files. Allow for multiple groups of
include files to be installed, with the powerful INCSGROUPS knob.
Documentation to follow.

Added standard `includes' and `incsinstall' targets, use them
in Makefile.inc1. Headers from the following makefiles were
not installed before (during `includes' in Makefile.inc1):

kerberos5/lib/libtelnet/Makefile
lib/libbz2/Makefile
lib/libdevinfo/Makefile
lib/libform/Makefile
lib/libisc/Makefile
lib/libmenu/Makefile
lib/libmilter/Makefile
lib/libpanel/Makefile

Replaced all `beforeinstall' targets for installing includes
with the INCS stuff.

Renamed INCDIR to INCSDIR, for consistency with FILES and SCRIPTS,
and for compatibility with NetBSD. Similarly for INCOWN, INCGRP,
and INCMODE.

Consistently use INCLUDEDIR instead of /usr/include.

gnu/lib/libstdc++/Makefile and gnu/lib/libsupc++/Makefile changes
were only lightly tested due to the missing contrib/libstdc++-v3.
I fully tested the pre-WIP_GCC31 version of this patch with the
contrib/libstdc++.295 stuff.

These changes have been tested on i386 with the -DNO_WERROR "make
world" and "make release".


95658 28-Apr-2002 des

Spell void * as void * rather than caddr_t. This is complicated by the
fact that caddr_t is often misspelled as char *.

Sponsored by: DARPA, NAI Labs


93064 24-Mar-2002 imp

Missed a __P in a .x file, remove it anyway


93032 23-Mar-2002 imp

Breath deep and take __P out of the system include files.

# This appears to not break X11, but I'm having problems compiling the
# glide part of the server with or without this patch, so I can't tell
# for sure.


92970 22-Mar-2002 alfred

rename 'enum res' and 'struct status' to 'enum sm_res' and 'struct sm_status'
to avoid -Wshadow warnings in consumers of its generated header files.


90297 06-Feb-2002 des

Apply the following mechanical transformations in preparation for
ansification and constification:

s{\s+__P\((\(.*?\))\)}{$1}g;
s{\(\s+}{\(}g;
s{\s+\)}{\)}g;
s{\s+,}{,}g;
s{(\s+)(for|if|switch|while)\(}{$1$2 \(}g;
s{return ([^\(].*?);}{return ($1);}g;
s{([\w\)])([!=+/\*-]?=)([\w\(+-])}{$1 $2 $3}g;
s{\s+$}{\n};g

Also add $FreeBSD$ where needed.

MFC after: 1 week


81586 13-Aug-2001 ru

Removed duplicate VCS ID tags, as per style(9).


75631 17-Apr-2001 alfred

Implement client side NFS locks.

Obtained from: BSD/os
Import Ok'd by: mckusick, jkh, motd on builder.freebsd.org


74462 19-Mar-2001 alfred

Bring in a hybrid of SunSoft's transport-independent RPC (TI-RPC) and
associated changes that had to happen to make this possible as well as
bugs fixed along the way.

Bring in required TLI library routines to support this.

Since we don't support TLI we've essentially copied what NetBSD
has done, adding a thin layer to emulate direct the TLI calls
into BSD socket calls.

This is mostly from Sun's tirpc release that was made in 1994,
however some fixes were backported from the 1999 release (supposedly
only made available after this porting effort was underway).

The submitter has agreed to continue on and bring us up to the
1999 release.

Several key features are introduced with this update:
Client calls are thread safe. (1999 code has server side thread
safe)
Updated, a more modern interface.

Many userland updates were done to bring the code up to par with
the recent RPC API.

There is an update to the pthreads library, a function
pthread_main_np() was added to emulate a function of Sun's threads
library.

While we're at it, bring in NetBSD's lockd, it's been far too
long of a wait.

New rpcbind(8) replaces portmap(8) (supporting communication over
an authenticated Unix-domain socket, and by default only allowing
set and unset requests over that channel). It's much more secure
than the old portmapper.

Umount(8), mountd(8), mount_nfs(8), nfsd(8) have also been upgraded
to support TI-RPC and to support IPV6.

Umount(8) is also fixed to unmount pathnames longer than 80 chars,
which are currently truncated by the Kernel statfs structure.

Submitted by: Martin Blapp <mb@imp.ch>
Manpage review: ru
Secure RPC implemented by: wpaul


72089 06-Feb-2001 asmodai

Fix typo: seperate -> separate.

Seperate does not exist in the english language.

Submitted to look at by: kris


69394 30-Nov-2000 alfred

remove unneeded sys/ucred.h include


50473 27-Aug-1999 peter

$Id$ -> $FreeBSD$


41557 06-Dec-1998 archie

Make rcsid a const char[] instead of char[] to avoid compiler warnings


39429 17-Sep-1998 obrien

Build headers with -DWANT_NFS3.
(finishing up on Amd upgrade)


38879 06-Sep-1998 obrien

Fix tons of cut-n-paste errors in the WANT_NFS3 code.


33298 13-Feb-1998 bde

Uncommit the generated file key_prot.h. Install it from where it
is generated. It must be installed in both /usr/include/rpc/ and
/usr/include/rpcsvc/ for historical reasons. The generated version
was once missing ANSI prototypes because the wrong flags were passed
to rpcgen, but that is fixed now. The committed version had `#pragma
indent' which gratuitously broke K&R support. Apart from this, all
versions before and after this commit are identical.


32624 19-Jan-1998 wpaul

Invoke rpcgen with -C so that headers are created with ANSI prototypes.

Note: this may cause some problems in a few cases. With very old versions
of rpcgen, if you defined a procedure called foo, then rpcen would create
client stubs for function foo_1() and server stubs _also_ with function
foo_1(). This only worked because of the lack of ANSI prototypes: the
client side stub takes different arguments than the server side stub.
(The client side takes a CLIENT * handle, while the server side wants
an svc_req *.)

To fix this conflict, rpcgen in ANSI mode generates foo_1() for the client
and foo_1_svc() for the server. RPC server code that depends on the old
behavior might break because of this. (Fixing it is just a matter of
adding the _svc suffix onto the server procedure names.)


32556 16-Jan-1998 bde

Fixed pedantic syntax error (trailing comma in enum).


32555 16-Jan-1998 bde

Removed `#pragma ident' (for a FreeBSD Id) so that the K&R support
isn't gratuitously broken. This also prevents ANSI compilers from
recognizing the pragma as a request to run /usr/games/hack...
FreeBSD Ids should be in comments or rcsids, not in `#pragma ident's
(which are equivalent to comments when compiled by gcc), and the
only FreeBSD change in this file seems to be adding the Id.


32554 16-Jan-1998 bde

Commented out `#pragma ident' (for a Sun id) so that the K&R support
isn't gratuitously broken. This also prevents ANSI compilers from
recognizing the pragma as a request to run /usr/games/hack...


32553 16-Jan-1998 bde

Removed redundant declarations. rpcgen generates `typedef enum foo;'
from `enum foo;'.


32552 16-Jan-1998 bde

Made this header self-sufficent. It had unnecessary dependencies on
<sys/cdefs.h>, <sys/types.h>, <rpcsvc/yp_prot.h>, and on the latter's
prerequisites (5 more).


32551 16-Jan-1998 bde

Fixed a missing dependency.


31387 24-Nov-1997 charnier

Add Ids, from lite2.


31305 20-Nov-1997 charnier

Remove sccsid, not present in Lite2.


30870 31-Oct-1997 charnier

Add const to rcsid[] definition so that -Wall will not complain.


29504 16-Sep-1997 bde

Removed installhdrs target. It was an unnecessary complication.


28542 21-Aug-1997 bde

Fix and simplify installhdrs target. It didn't install the headers in
${HFILES} and it's simpler to install the non-headers in ${XFILES}.


28524 21-Aug-1997 jmg

fix a problem with headers not being installed properly... basicly the
installhdrs target was not being propagated to the subdirs...

also fix rpcsvc's Makefile to have a installhdrs target to install the
headers..


26248 28-May-1997 wpaul

Undo small change I accidentally left in while testing (files were
installed with wrong ownerships).

Pointed out by: bde


26208 28-May-1997 wpaul

Resolve conflicts.


26207 28-May-1997 wpaul

This commit was generated by cvs2svn to compensate for changes in r26206,
which included commits to RCS files with non-trunk default branches.


25551 07-May-1997 eivind

Back out all of yesterdays include file changes.


25541 07-May-1997 eivind

Back out part of yesterdays changes. They were obviously not tested well
enough :-( (With backout on this file, libc compiles. 'make world' isn't
finished yet.)

Pointed out by: Oliver Roberts


25520 07-May-1997 eivind

Make a lot of include-files self-contained. I excluded the patches changing
int's to gid_t and uid_t - should I commit these, too?

Closes PR misc/2625.

Submitted by: Julian Assange <proff@iq.org>


25000 18-Apr-1997 dfr

Add protocol definitions for NFSv3. Use -DWANT_NFS3 with rpcgen to get
the new protocol.

Obtained from: rfc1813


23037 23-Feb-1997 peter

Revert $FreeBSD$ to $Id$


21673 14-Jan-1997 jkh

Make the long-awaited change from $Id$ to $FreeBSD$

This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore. This update would have been
insane otherwise.


21060 30-Dec-1996 peter

- Prototypes, including pointers to functions
- C++ safe


17963 30-Aug-1996 peter

'make install' is not supposed to touch anything.


17960 30-Aug-1996 peter

missed these parts of Bruce's changes last time..

Submitted by: bde (again :-)


17953 30-Aug-1996 peter

Some bmake magic to clean up the install more.
fix another missed -c typo of mine.
clean the rpcgen implicit rule more

Submitted by: bde


17901 29-Aug-1996 peter

replace cmp -s || install with ${INSTALL} -C, and @for with .for


16957 04-Jul-1996 wpaul

There are a few small additions to the protocol to make it
easier to use in mixed environments:

- Add three new members to the request structure:

- a filename specification
- a database type specification
- a system byte prder specification

These allow the client to ask the server for a particular type of
database (Berkeley DB hash/btree/recno, GNU GDBM, dbm, ndbm, etc...)
and get back a meaningful error if the server doesn't support it.
The byte order spec is needed if the database type is byte order
sensntive. You don't, for example, want to read an ndbm database
from a big endian machine on a little endian machine (the ndbm code
will explode). The filename spec lets the client handle things like
ndbm which uses two seperate files per database (foo.dir and foo.pag).
The client can ask for each half, one at a time.

- Add a list of database types and byte order values. Each list has
a wildcard 'ANY' entry which lets the client ask for whatever the
server supports. (XFR_ENDIAN_ANY is useful with the Berkeley DB hash
method for instance, since it isn't byte order sensitive.)

- Add two newserver failure codes: XFR_DB_TYPE_MISMATCH and
XFR_DB_ENDIAN_MISMATCH. The server uses these to tell the client
that it doesn't support the requested type/byte order.

These changes were made at the suggestion of Thorsten Kukuk, the
current maintainer of the Linux ypserv distribution. This allows
Linux and FreeBSD NIS servers to use the same ypxfrd protocol and
avoid accidentally exchanging incompatible map files.


16123 05-Jun-1996 wpaul

Now that Peter has been nice enough to bail me out of my last little
mishap, it's time to have the Makefile install ypxfrd.x and ypxfrd.h.


16120 05-Jun-1996 wpaul

This commit was generated by cvs2svn to compensate for changes in r16119,
which included commits to RCS files with non-trunk default branches.


14261 26-Feb-1996 wpaul

Add structure and procedure definitions for NIS v1. (This information
was reverse-engineered using the <rpcsvc/ypv1_prot.h> file supplied
with SunOS 4.1.3 as a guide.)


13771 30-Jan-1996 mpp

Fix a bunch of spelling errors in the comment fields
of a bunch of system include files.


12957 22-Dec-1995 wpaul

*groan* Fix yet _ANOTHER_ discrepancy between the NIS protocol definition
and real life. YPPUSHPROC_XFRRESP is supposed to return void and take
an argument of type yppushresp_xfr, not the other way around as yp.x seems
to imply. (I spent two hours today staring intensely at my prototype ypxfr
code and scratching my head before I finally figured this out.)


12690 09-Dec-1995 wpaul

*sigh* Yet another bogosity: the YPPROC_FIRST procedure is listed as
taking an argument of type ypresp_key. This is incorrect: it should be
ypresp_nokey. (yp_first() is supposed to return the first key in a
given map; the server doesn't need any client-specified key to handle
such a request.)


12677 08-Dec-1995 wpaul

"What? He's modifying the NIS protocol definition!?"

No, not really. There are just a couple of long-standing bogosities here
that I feel compelled to fix. :)

There are two small changes here:

1) yp.x actually contains _three_ protocol definitions: YPPROG (standard
NIS client/server procedures), YPPUSH_XFRRESPPROG (callback handler
for the YPPROC_XFR service, aka ypxfr/yppush) and YPBINDPROG (for ypbind,
ypset & friends). The problem is that when you run yp.x through rpcgen(1),
it generates client and server stubs with hooks for all three services.
This makes it impossible to actually use the rpcgen-erated code in a
program that only deals with _one_ of these services (ypserv, ypbind,
etc...) without manually removing the unneeded stubs (either by hand
editing or by committing unspeakable horrors with sed). This defeats
the whole purpose of using rpcgen and is generally annoying.

What I've done is to insert a few #ifndefs and #endifs to allow a
programmer to selectively blot out those functions that aren't needed
for a particular program. For instance, if you do 'rpcgen -DYPSERV_ONLY',
you'll get only the necessary client/server stubs to implement the
standard yp client and server functions. If you do 'rpcgen -DYPBIND_ONLY',
you get only what you need for ypbind. If you don't #define anything,
you get the whole mess, just like before, so existing programs won't
notice the difference. (Note that the -D flag is not supported by our
existing crufty version of rpcgen, but I intend to update it soon.)

2) The definition for the ypresp_key_val structure is actually incorrect
with respect to reality: the key and val members are specified in the
wrong order. It should be val/key rather than key/val. For whatever
the reason, Sun's actual NIS implementation contradicts the protocol
definition in this case. Again, accounting for this bogosity here is
cleaner and easier than mangling the output from rpcgen.


10071 15-Aug-1995 joerg

Install the headers and sample files with 444 perms (as opposed to
555).

Submitted by: graichen@sirius.physik.fu-berlin.de (Thomas Graichen)


9970 06-Aug-1995 bde

Change `install' to `${INSTALL}' so that default install flags can be
specified in the top level Makefiles.

Previously I missed dozens of Makefiles that skip the install after
using `cmp -s' to decide that the install isn't necessary.


9375 29-Jun-1995 wollman

Fix a bug I didn't manage to trigger until after committing previous
fix to header installation.


9374 29-Jun-1995 wollman

Make this include installation conform to the standard of all the rest:

- Don't do mkdir/chown/chmod
- Do `cmp -s' before attempting to install a header

This should fix the obnoxious problem of yp programs wanting to
rebuild every time.


9336 27-Jun-1995 dfr

Changes to support version 3 of the NFS protocol.
The version 2 support has been tested (client+server) against FreeBSD-2.0,
IRIX 5.3 and FreeBSD-current (using a loopback mount). The version 2 support
is stable AFAIK.
The version 3 support has been tested with a loopback mount and minimally
against an IRIX 5.3 server. It needs more testing and may have problems.
I have patched amd to support the new variable length filehandles although
it will still only use version 2 of the protocol.

Before booting a kernel with these changes, nfs clients will need to at least
build and install /usr/sbin/mount_nfs. Servers will need to build and
install /usr/sbin/mountd.

NFS diskless support is untested.

Obtained from: Rick Macklem <rick@snowhite.cis.uoguelph.ca>


8858 30-May-1995 rgrimes

Remove trailing whitespace.


7983 21-Apr-1995 wpaul

Add prototype for ypbinderr_string().


7132 18-Mar-1995 rgrimes

Correct chmod of /usr/include/rpcsvc to match mtree file.


6747 26-Feb-1995 wpaul

The bootparam protocol file needs some extra includes in FreeBSD in order
to properly resolve some definitions in <nfs/nfs.h>. I suppose nobody noticed
this before because no one's tried to build bootparamd in FreeBSD until
now.

(Yes, you read that right: I've got bootparamd ready to go. And
rarpd is on the way. :)


2367 28-Aug-1994 bde

Use ${ECHO} instead of `echo' so that `make -s' is fairly quiet.


1832 04-Aug-1994 wollman

Moved 1.1.5 RPC service files from 1.1.5. Tese are the correct ones;
the ones in /usr/src/lib/librpc/rpcsvc are somewhat bogus and will
be deleted.

Submitted by: Original work in 1.1 by J.T. Conklin.