ChangeLog   [plain text]


2005-01-14  Tom Yu  <tlyu@mit.edu>

	* xdr.c (xdr_bytes): Revert previous; the problem was actually in
	xdr_rpc_gss_buf.

	* authgss_prot.c (xdr_rpc_gss_wrap_data): Use xdr_alloc to avoid
	size limit issues.  Use (unsigned int)-1 instead of MAX_NETOBJ_SZ.
	(xdr_rpc_gss_unwrap_data): Use (unsigned int)-1 instead of
	MAX_NETOBJ_SZ.
	(xdr_rpc_gss_buf): Set tmplen even if doing XDR_FREE.

	* xdr.c (xdr_bytes): Don't assign from *sizep if XDR_FREE, since
	it'll be uninitialized then.  Shuts up Purify.

2004-11-18  Tom Yu  <tlyu@mit.edu>

	* Makefile.in (install-unix): Install into KRB5_INCDIR/gssrpc,
	rather than just KRB5_INCDIR.

2004-10-25  Tom Yu  <tlyu@mit.edu>

	* auth_gss.c (authgss_get_private_data): New function.
	(authgss_refresh): Remove explicit OID checks.
	(authgss_create): Copy initiator name.
	(authgss_destroy): Release copied initiator name.
	(print_rpc_gss_sec): Explicitly code OID stringification.

	* auth_gss.h: Add cred and req_flags to struct rpc_gss_sec.  New
	structure authgss_private_data so kernel implementations can
	retrieve context state.

	* auth_gss.h, libgssrpc.exports, rename.h: Add
	authgss_get_private_data.

2004-10-18  Tom Yu  <tlyu@mit.edu>

	* Makefile.in (install-unix): Install headers.

2004-09-23  Ken Raeburn  <raeburn@mit.edu>

	* xdr_rec.c (LAST_FRAG): Use 1L in case int is small.

2004-09-22  Tom Yu  <tlyu@mit.edu>

	* libgssrpc.exports: Export svc_maxfd.

2004-09-21  Tom Yu  <tlyu@mit.edu>

	* configure.in: Check for sockaddr_in.sin_len and
	sockaddr.sa_len.  Check for sys/param.h in case we need NBBY
	somewhere.

	* auth.h, svc_auth.h: Namespace cleanup.

	* svc.h, rpc_commondata.c: New global svc_maxfd.

	* svc.c (svc_getreqset): Break inner part of loop out into
	local function svc_do_xprt().  Don't use rpc_dtablesize();
	instead, use svc_maxfd.

	* svc_run.c: Don't use rpc_dtablesize().

	* clnt_generic.c, clnt_simple.c, getrpcport.c:
	* svc_tcp.c, svc_udp.c: Set sockaddr_in.sin_len when available.

2004-09-17  Tom Yu  <tlyu@mit.edu>

	* libgssrpc.exports: Don't export internals.

	* svc.c (svc_getreqset):
	* svc_tcp.c (readtcp): Don't intersperse preprocessor
	conditionals with braces.

	* auth_gssapi.c, auth_gssapi_misc.c, auth_none.c:
	* auth_unix.c, authunix_prot.c, bindresvport.c:
	* clnt_generic.c, clnt_perror.c, clnt_raw.c
	* clnt_simple.c, clnt_tcp.c, clnt_udp.c, get_myaddress.c:
	* getrpcent.c, getrpcport.c, pmap_clnt.c:
	* pmap_getmaps.c, pmap_getport.c, pmap_prot.c, pmap_prot2.c:
	* pmap_rmt.c, rpc_callmsg.c, rpc_prot.c:
	* svc.c, svc_auth.c, svc_auth_gss.c:
	* svc_auth_gssapi.c, svc_auth_unix.c, svc_raw.c:
	* svc_run.c, svc_simple.c, svc_tcp.c:
	* svc_udp.c, xdr.c, xdr_alloc.c, xdr_array.c:
	* xdr_float.c, xdr_mem.c, xdr_rec.c, xdr_reference.c:
	* xdr_stdio.c: Protoize, to avoid potential problems when
	fixed-width types are not ints on some platforms.

2004-08-26  Tom Yu  <tlyu@mit.edu>

	* configure.in: Look for uint32_t, not int32_t, since some BSD-ish
	sys/types.h headers have int32_t and u_int32_t, but only have
	uint32_t in stdint.h.

	* types.hin: Change int32_t checks to uint32_t checks.

2004-08-17  Tom Yu  <tlyu@mit.edu>

	* svc.c (svc_getreqset): Allocate cred and verf memory to
	temporary pointers, and free the temporary pointers on exit.
	Freeing the actual cred and verf pointers can cause corruption
	because auth mechanisms can reassign the pointers.

2004-08-16  Tom Yu  <tlyu@mit.edu>

	* svc_auth_gss.c (gssrpc__svcauth_gss): Add some debug messages.

	* svc.c (svc_getreqset): Don't allocate either raw or cooked
	credentials on the stack using the cred_area char array; use
	mem_alloc() instead.  This avoids alignment problems.

2004-06-28  Tom Yu  <tlyu@mit.edu>

	* auth_gss.c (g_OID_equal): Fix signedness.
	(rpc_gss_data): Fix width of WIN.
	(authgss_validate): Fix width of NUM and QOP_STATE.
	(authgss_refresh): Fix width of SEQ and QOP_STATE.

	* auth_gssapi.c (auth_gssapi_create): Save clnt->cl_auth early
	enough to avoid unref use.

	* authgss_prot.c (xdr_rpc_gss_buf): Cast (void **) to (char **)
	in call to xdr_bytes.
	(xdr_rpc_gss_wrap_data): Fix signedness.
	(xdr_rpc_gss_unwrap_data): Fix signedness.  Fix width of SEQ_NUM.

	* clnt_udp.c (clntudp_bufcreate, clntudp_call, clntudp_call):
	Fix up some argument casting for socket calls.

	* pmap_prot.c (xdr_pmap): Use appropriate xdr macros for the
	typedefs instead of xdr_u_int32.

	* rpc_prot.c (xdr_accepted_reply, xdr_rejected_reply)
	(xdr_callhdr): Use appropriate xdr macros for the typedefs instead
	of xdr_u_int32.

	* svc_auth_unix.c (gssrpc__svcauth_unix): Fix signedness on call
	to XDR_INLINE.

	* xdr.c (xdr_int, xdr_long, xdr_short): Improve value checks.

	* xdr.h: Make the IXDR macros more paranoid about signedness.  Add
	macros for xdr_rpcprog, xdr_rpcvers, xdr_rpcprot, xdr_rpcproc,
	xdr_rpcport.

	* xdr_mem.c (xdrmem_getlong): Cast return value of ntohl to
	int32_t prior to casting it to long.

	* xdr_rec.c (xdrrec_getlong): Cast return value of ntohl to
	int32_t prior to casting it to long.
	(xdrrec_putlong): Make arithmetic more paranoid.
	(xdrrec_inline): Signedness fixes.  Arithmetic paranoia.
	(set_input_fragment): Don't cast return value of ntohl which is
	being assigned to uint32_t.

2004-06-25  Tom Yu  <tlyu@mit.edu>

	* types.hin: Delete rpc_int32, rpc_u_int32 aliases.

2004-06-24  Ken Raeburn  <raeburn@mit.edu>

	* configure.in: Fix typo in setting
	krb5_cv_header_sys_param_h_maxhostnamelen.

2004-06-18  Tom Yu  <tlyu@mit.edu>

	* auth_gss.h: Add prototype for xdr_rpc_gss_buf.

	* authgss_prot.c (xdr_rpc_gss_buf): New function.
	(xdr_rpc_gss_cred, xdr_rpc_gss_init_args, xdr_rpc_gss_init_res):
	(xdr_rpc_gss_wrap_data, xdr_rpc_gss_unwrap_data): Use
	xdr_rpc_gss_buf, to avoid passing a (size_t *) to a xdr_bytes(),
	which expects (u_int *).
	(xdr_rpc_gss_wrap_data): Use tmplen to avoid passing (size_t *) to
	xdr_u_int.

	* libgssrpc.exports:
	* rename.h: Add xdr_rpc_gss_buf.

	* xdr.c (xdr_enum): Fix (kind of) for 64-bit.  Still inherently
	bogus, due to casting of (enum foo *) to (enum_t *) by callers.

2004-06-17  Tom Yu  <tlyu@mit.edu>

	* libgssrpc.exports: Update.

2004-06-16  Ken Raeburn  <raeburn@mit.edu>

	* Makefile.in (clean-mac): Target deleted.

2004-06-16  Tom Yu  <tlyu@mit.edu>

	* auth_gss.h: Conditionalize log_debug, log_status, log_hexdump
	prototypes on GSSRPC__IMPL.

	* rename.h: More namespace fixes.

2004-06-15  Tom Yu  <tlyu@mit.edu>

	* auth_gss.c (print_rpc_gss_sec): Use gss_oid_to_str().
	(rpc_gss_data): Add field "established" to indicate whether
	context establishment is in progress; this prevents recursive
	failures when auth_refresh() calls clnt_call().  If clnt_call()
	called from auth_refresh() gets an error condition, the
	clnt_call() logic will attempt a refresh, which can cause the
	cl_auth to get destroyed multiple times, corrupting memory.
	(authgss_validate, authgss_refresh): Use gd->established.
	(authgss_refresh): Release gd->gc_wire_verf.
	(authgss_destroy_context): Log clnt_call() failures.

	* auth_gssapi.h: Add prototypes for svcauth_gss_set_log_*_func.

	* authgss_prot.c (log_status): Correctly reset msg_ctx between
	different types of calls to gss_display_status().

	* svc.c: Don't reset xp_auth prior to authenticating message.

	* svc.h (svc_req): Remove rq_svcname; application can get it from
	rq_svccred anyway.

	* svc_auth_gss.c: Include auth_gssapi.h to get typedefs for
	logging callback functions.  Enable logging callbacks.  Replace
	SVCAUTH_PRIVATE_LVALUE() kludge.  Fix up namespace somewhat to not
	use reserved names.
	(svcauth_gss_accept_sec_context): Free rpc_gss_init_args to avoid
	leak.  Release gr->gr_token on error conditions.
	(svcauth_gss_nextverf, svcauth_gss_accept_sec_context):
	(gssrpc__svcauth_gss): Use gd->checksum.
	(gssrpc__svcauth_gss): Use macro ret_freegc() to ensure freeing of
	gc.  On destroy, set *no_dispatch=TRUE and explicitly send reply
	to avoid application sending a NULLPROC reply with an invalid
	verifier.

	* svc_auth_gssapi.c (gssrpc__svcauth_gssapi): Set xp_auth to NULL
	upon destroy.
	(svc_auth_gssapi_destroy): New function so SVCAUTH_DESTROY() will
	work.

	* svc_tcp.c (svctcp_create, makefd_xprt): Initialize xp_auth to
	NULL.
	(svctcp_destroy): Call SVCAUTH_DESTROY() if appropriate.

	* svc_udp.c (svcudp_bufcreate, svcudp_destroy): Initialize xp_auth
	to NULL.
	(svcudp_destroy): Only close xp_sock if it's not -1.  Call
	SVCAUTH_DESTROY() if appropriate.

	* xdr_rec.c (xdrrec_getpos): Add CITI's fix to return position for
	non-flushed buffers.

2004-06-04  Ken Raeburn  <raeburn@mit.edu>

	* Makefile.in (LIBBASE): Renamed from LIB.

2004-05-30  Ken Raeburn  <raeburn@mit.edu>

	* clnt_tcp.c: Include string.h.

2004-05-27  Tom Yu  <tlyu@mit.edu>

	* auth_any.c, svc_auth_any.c: Removed.

	* auth_gss.h: New file, was CITI's auth_ssapi.h.

	* auth_gss.c, authgss_prot.c, svc_auth_gssapi.c, svc_auth_none.c:
	New files.

	* rename.h: New file containing renaming macros for external
	names.

	* Makefile.in (DEFINES): Add -DGSSRPC__IMPL for accessing
	internals.
	(LIBMAJOR): Bump due to ABI changes; this ABI is still subject to
	change without future version bumps until released.
	(SRCS, OBJS, STLIBOBJS, HDRS, SRC_HDRS): Adjust for new files

	* types.hin: Check for 8-bit bytes, two's-complement integers.
	Use configure-determined inclusions of various headers instead of
	depending on HAVE_*.  Rearrange logic of sys/select.h,
	netinet/in.h, etc. inclusions.  Include rename.h.  Add typedefs
	for rpcprog_t, rpcvers_t, rpcprot_t, rpcproc_t, rpcport_t,
	rpc_inline_t.
	(GSSRPC__BEGIN_DECLS, GSSRPC__END_DECLS): New macros for C++
	compatibility.
	[GSSRPC__FAKE_INT32]: Fake up a fixed-width 32-bit integer if the
	system doesn't provide one in its headers.
	[GSSRPC__BSD_TYPEALIASES]: Add typedefs for BSD-style type
	aliases, e.g., u_char.  Can be overridden at compile-time.

	* auth.h, auth_gssapi.h, auth_unix.h, clnt.h, pmax_clnt.h:
	* pmap_prot.h, pmap_rmt.h, rpc.h, rpc_msg.h, svc.h, svc_auth.h:
	* xdr.h: Fix inclusion protection.  Use GSSRPC__{BEGIN,END}_DECLS
	for declarations.  "unsigned int" -> "u_int", etc.  "rpc_int32" ->
	"int32_t", etc.  Move renaming to rename.h.  Move some external
	names out of implementation namespace.  Make struct tags identical
	to typedef names, mostly.  Use rpcprog_t and friends as
	appropriate.

	* auth.h: Add RPCSEC_GSS errors.  Add RPCSEC_GSS flavor.  Disable
	AUTH_GSSAPI_COMPAT flavor.  "AUTH_wrap" -> "auth_wrap",
	"AUTH_unwrap" -> "auth_unwrap".

	* svc_auth.h: Hide individual flavors of authenticators under
	GSSRPC__IMPL.  Adjust for "svc_auth_any" -> "svc_auth_none".
	(SVCAUTH_DESTROY): New macro.

	* rpc.h: Prototype gssrpc__rpc_dtablesize().

	* svc.h (svc_req): Add rq_clntname, rq_svcname.

	* xdr.h (MAX_NETOBJ_SZ): Adjust to 2048.

	* auth_gssapi.c, auth_gssapi_misc.c, auth_none.c, auth_unix.c:
	* bindresvport.c, clnt_generic.c, clnt_perror.c, clnt_raw.c:
	* clnt_simple.c, clnt_tcp.c, clnt_udp.c, get_myaddress.c:
	* getrpcent.c, getrpcport.c, pmax_clnt.c, pmap_getport.c:
	* pmap_prot2.c, pmap_rmt.c, rpc_callmsg.c, rpc_commondata.c:
	* rpc_dtablesize.c, rpc_port.c, svc.c, svc_auth.c:
	* svc_auth_gssapi.c, svc_auth_unix.c, svc_run.c, svc_simple.c:
	* svc_tcp.c, svc_udp.c, xdr.c, xdr_alloc.c, xdr_array.c:
	* xdr_float.c, xdr_mem.c, xdr_rec.c, xdr_reference.c, xdr_stdio.c:
	* xdr_stdio.c: Lots of type renaming, including BSD typealiases,
	use of int32_t and uint32_t, rpc*_t for protocol constants.  Fixed
	namespace issues, moving renaming out of individual files.  Moved
	symbols out of implementation namespace.

	* xdr.c: Add checks on integer values, in order to return errors
	when an attempt is made to encode an integer that won't fit in 4
	bytes, or to decode an integer that won't fit into its target
	type.

	* auth_none.c: Use authnone_wrap instead of authany_wrap.
	(authnone_wrap): New function.

	* auth_unix.c: Use authunix_wrap instead of authany_wrap.
	(authunix_wrap): New function.

	* xdr_mem.c, xdr_rec.c: Fix some sizeof vs BYTES_PER_XDR_UNIT
	issues.

2004-04-22  Ken Raeburn  <raeburn@mit.edu>

	* libgssrpc.exports: New file.

2004-04-02  Ken Raeburn  <raeburn@mit.edu>

	* svc_auth_gssapi.c (destroy_client): Don't call purify_watch_n
	even if PURIFY is defined.

2003-04-23  Ken Raeburn  <raeburn@mit.edu>

	* bindresvport.c: Include errno.h.
	(gssrpc_bindresvport): Don't declare errno.
	* clnt_tcp.c: Don't declare errno.
	* svc.c: Don't declare errno.  Include errno.h.

2003-03-24  Tom Yu  <tlyu@mit.edu>

	* xdr_mem.c (xdrmem_create): Perform some additional size checks.
	(xdrmem_getlong, xdrmem_putlong, xdrmem_getbytes): Check x_handy
	prior to decrementing it.

2003-01-12  Ezra Peisach  <epeisach@bu.edu>

	* svc_auth_gssapi.c (_svcauth_gssapi_unset_names): If invoked more
	than once, do not double free memory.

	* clnt_perror.c (clnt_sperror): Do not write past end of allocated
	buffer.

2003-01-10  Ken Raeburn  <raeburn@mit.edu>

	* configure.in: Don't explicitly invoke AC_PROG_ARCHIVE,
	AC_PROG_ARCHIVE_ADD, AC_PROG_RANLIB, AC_PROG_INSTALL.

	* configure.in: Use V5_AC_OUTPUT_MAKEFILE instead of
	K5_GEN_MAKEFILE and K5_AC_OUTPUT.

	* Makefile.in: Add AC_SUBST_FILE marker for lib_frag and libobj_frag.

2003-01-07  Ken Raeburn  <raeburn@mit.edu>

	* Makefile.ov: Deleted.

2003-01-05  Sam Hartman  <hartmans@mit.edu>

	* svc_run.c svc_udp.c : Remove declaration of errno

	* clnt_udp.c pmap_getmaps.c pmap_rmt.c svc_auth_gssapi.c: Remove
	declaration of errno 

2002-12-18  Ken Raeburn  <raeburn@mit.edu>

	* auth_gssapi_misc.c (xdr_gss_buf, auth_gssapi_wrap_data,
	auth_gssapi_unwrap_data): Use temporary variables rather than
	pointer casts when dealing with integral types of different
	sizes.

2002-12-12  Tom Yu  <tlyu@mit.edu>

	* Makefile.in (all-prerecurse): Change double colons to single
	colons.

2002-11-11  Ken Raeburn  <raeburn@mit.edu>

	* get_myaddress.c (get_myaddress): Local array buf size should be
	counted in ifreq structs, not ifconf structs.

2002-10-31  Ken Raeburn  <raeburn@mit.edu>

	* xdr_alloc.c (xdralloc_putlong): Coerce value pointed to by
	argument to 32 bits, rather than reading only 32 bits from the
	supplied address.

2002-09-24  Ken Raeburn  <raeburn@mit.edu>

	* Makefile.in ($(HDRS)): Depend on includes.

2002-08-29  Ken Raeburn  <raeburn@mit.edu>

	* Makefile.in: Revert $(S)=>/ change, for Windows support.

2002-08-23  Ken Raeburn  <raeburn@mit.edu>

	* Makefile.in: Change $(S)=>/ and $(U)=>.. globally.

2002-08-12  Tom Yu  <tlyu@mit.edu>

	* xdr.c (xdr_string): Fix off-by-one error; we're not vulnerable,
	since we don't call it.

2002-08-02  Tom Yu  <tlyu@mit.edu>

	* xdr_array.c (xdr_array): Account for elsize when checking
	encoded array count.

2002-07-17  Ken Raeburn  <raeburn@mit.edu>

	* dyn.c: New file, combining contents of old util/dyn library,
	with unused functions omitted, and memmove assumed.
	* dyn.h: Moved from util/dyn/dyn.h, symbol renaming macros added.
	Changed element size to size_t.  Include stdlib.h.
	* dynP.h: Moved from util/dyn/dynP.h, symbol renaming macros
	added.
	* dyntest.c: Moved from util/dyn/test.c.
	* Makefile.in (SHLIB_EXPDEPS, SHLIB_EXPLIBS): Omit libdyn
	references.
	(SRCS, OBJS, STLIBOBJS): Build dyn.c.
	(dyntest, run-dyntest, clean-dyntest): New targets.
	(check-unix): Depend on run-dyntest.
	(clean-unix): Depend on clean-dyntest.
	(LCLINT, LCLINTOPTS): Moved from util/dyn/Makefile.in.
	(do-dyn-lclint): New target, untested.
	* xdr_alloc.c: Include "dyn.h" instead of <dyn.h>.

2001-12-14  Ezra Peisach  <epeisach@mit.edu>

	* svc_auth_gssapi.c (_gssrpc_svcauth_gssapi): Local return
	variable declared enum auth_stat instead of int.

2001-12-07  Ezra Peisach  <epeisach@mit.edu>

	* clnt_raw, clnt_tcp.c, clnt_udp.c: Use a union structure to
	ensure argument alignment.

	* pmap_clnt.c, pmap_clnt.h (pmap_set): Change port argument to int
	to avoid width warnings.

	* rpc_callmsg.c (xdr_callmsg): Cast argument to XDR_INLINE to
	avoid signed vs. unsigned warning.

	* svc.c: Cast assignment to avoid signed warning.

	* xdr.c (xdr_u_short, xdr_u_long): cast pointers to long * in
	invocation of XDR_PUTLONG.

	* xdr_alloc.c (xdralloc_putbytes): Cast argument to DynInsert to
	avoid signed/unsigned warning.

	* auth_gssapi.c, svc_auth_gssapi, xdr_rec.c: Cast arguments to
	avoid alignment warnings.

	* svc_tcp.c, xdr_stdio.c: Cast argument to fread/fwrite/read/write.

2001-10-09  Ken Raeburn  <raeburn@mit.edu>

	* auth_gssapi.h, auth_gssapi_misc.c, getrpcent.c,
	svc_auth_gssapi.c, xdr.h: Make prototypes unconditional.  Don't
	define PROTOTYPE.

2001-10-05  Ken Raeburn  <raeburn@mit.edu>

	* auth_gssapi.h, getrpcent.c, xdr.h: Drop _MSDOS support.

2001-08-10    <epeisach@mit.edu>

	* clnt_udp.c (clntudp_call): Do not assume that select will not
	change the timeout struct timeval. Under Linux, this reflects the
	time left available - which might result in 0 in the case of a
	timeout. When attempting to resend a request, this may results in
	a timeout of zero - flooding the server with replay requests.
	
	* clnt_tcp.c (readtcp): Same.
	* pmap_rmt.c (clnt_broadcast): Same
	* svc_tcp.c (readtcp): Same

2001-07-26  Ezra Peisach  <epeisach@home>

	* xdr_reference.c (xdr_reference): Remove cast in argument to memset.

	* svc_auth_gssapi.c: In call to gss_accept_sec_context, pass
	OM_uint32 * instead of int *;

	* pmap_clnt.h, pmap_getport.c (pmap_getport): Prototype changed
 	for protocol from unsigned int to rpc_u_int32 to match struct
 	pmap.

	* getrpcport.c (gssrpc_getrpcport): Update to reflect proper
	calling conventions.

	* rpc.h (callrpc): Change prototype from expecting ints for
	prognum, versnum and procnum to rpc_u_int32 for consistancy.
	(getrpcport): Update arguments in similar fashion.
	
	* clnt_simple.c (gssrpc_callrpc): Update to reflect prototype change.

	* auth_gssapi_misc.c (auth_gssapi_display_status_1): Local
	variable msg_ctx should be OM_uint32 instead of int as argument to
	gss_display_status.

2001-07-25  Ezra Peisach  <epeisach@mit.edu>

	* auth_gssapi.c (auth_gssapi_create): Change calling convention
	from passing ints as arguments to OM_uint32 to match spec for
	gss_init_sec_context.

	* auth_gssapi.h: Update prototype for auth_gssapi_create.
	
	* svc.h (struct svc_req): The rq_clntcred and rq_svccred elements
	are now void *.

2001-07-19  Ezra Peisach  <epeisach@mit.edu>

	* xdr_mem.c: Do not assume that XDR x_private field is char *.

	* auth.h: AUTH ah_private structure element changed to void *. 

	* clnt.h: CLIENT cl_private structure element changed to type void *. 

	* svc.h: SVCXRPT elements xp_p1 and xp_p2 changed to void * from
	caddr_t.

	* svc_udp.c: su_cache element of svcudp_data from caddr_t to void *.

	* clnt_tcp.c, svc_tcp.c (writetcp, readtcp): Cleanup alignment
	warning in casts.

	* types.hin (mem_alloc): Do not cast type of malloc to char *.

	* xdr.h: Change type of x_private of XDR from caddr_t to void *.

2001-07-09  Ezra Peisach  <epeisach@mit.edu>

	* pmap_rmt.c, svc.c, svc_simple.c, svc_udp.c, svc_tcp.c,
	xdr_array.c, xdr_reference.c : Include string.h for memset and
	memcmp prototypes.

	* auth_gssapi.c, auth_gssapi_misc.c, svc_auth_gssapi.c: Cast
	argment to PRINTF to match format.

2001-07-08  Ezra Peisach  <epeisach@mit.edu>

	* svc.c (xprt_register): If svc_fdset has not been initilized, 
	FD_ZERO it.
	
	* rpc_commondata.c: Do not assume what the structure of an fd_set
	looks like. Add variable gssrpc_svc_fdset_init to determine if
	initialized. 

2001-07-06  Ezra Peisach  <epeisach@mit.edu>

	* auth_unix.c: In case GETGROUPS_T is not defined, default to int.

2001-07-05  Ezra Peisach  <epeisach@mit.edu>

	* configure.in: Add AC_TYPE_GETGROUPS to determine argument to
	getgroups.

	* auth_unix.c (authunix_create_default): Use GETGROUPS_T array in
	call to getgroups. Copy into array of int for call to
	authunix_create. Note: If auth_unix protection ever used with this
	code, we will need to cleanup assumptions in int being 32 bits in
	OTW transfer of gids.

	* clnt_tcp.c, svc_tcp.c: Change writetcp and readtcp to take char
	as first argument to be compatible with xdrrec_create.

	* xdr.c (xdr_opaque): Cast argument in call to XDR_GETBYTES.

	* svc.h: Add prototype for gssrpc_svcudp_enablecache.

	* svc_auth_gssapi.c (_gssrpc_svcauth_gssapi): Change
	_svcauth_gssapi to _gssrpc_svcauth_gssapi for consistancy.

	* svc_auth.c: Move prototypes for _gssrpc_svcauth_{unix, null,
	short, gssapi} to:
	* svc_auth.h: here.

	* svc_auth_unix.c: Update _gssrpc_svcauth_short and
	_gssrpc_svcauth_unix to match prototype.

2001-06-28  Ezra Peisach  <epeisach@mit.edu>

	* auth.h: Provide full prototype for xdr_des_block.

	* auth_gssapi.h: Complete prototypes for
	_svcauth_gssapi_unset_names().

	* clnt.h: Prototype dispatch functions and all functions.

	* clnt_perror.c: Prototype static auth_errmsg().

	* clnt_raw.h clnt_tcp.c, clnt_udp.c: Provide prototypes to static
	functions and match dispatch table prototypes. control function
	takes void * instead of caddr_t.

	* pmap_rmt.c: Move prototype for resultproc_t to pmap_clnt.h.

	* rpc.h: get_myaddress returns int. Add prototypes for callrpc and
	getrpcport.

	* rpc_commondata.c (rpc_createerr): When initializing rpc_creaerr
	use RPC_SUCCESS instead of 0. 

	* get_myaddress.c, rpc_dtablesize.c: Include gssrpc/rpc.h for
	prototype.

	* pmap_clnt.h, pmap_prot.h, pmap_rmt.h, rpc_msg.h: Full prototypes
	for all functions.

	* svc.c: Provide full prototype for static function.

	* svc.h: Prototypes for dispatch functions added. Flushed out
	prototypes for all functions missing prototypes. Added prototype
	for svcfd_create.

	* svc_auth.c: Prototypes for all functions referenced.

	* svc_auth.h: Prototype dispatch functions to svc_auth_ops.

	* svc_auth_any.c: Replace use of authany_wrap() with a new local
	function that matches svc_auth_ops dispatch table.

	* svc_simple.c: Provide prototype for static function
	universal. Fill in missing types of parameters to
	gssrpc_registerrpc.

	* svc_raw.c svc_tcp.c, svc_udp.c: Provide prototypes for static
	functions and match prototypes in dispatch table. Change getargs
	and freeargs argument to void * from caddr_t.

	* xdr.c (xdr_void): Function to match prototype of arguments given.

	* xdr.h: Provide full prototypes for xdr_ops dispatch table and
	xdr_void().

	* svc_auth_gssapi.c, xdr_alloc.c, xdr_mem.c, xdr_rec.c,
	xdr_stdio.c: Provide protypes for static functions and match
	dispatch tables.

2001-06-27  Ezra Peisach  <epeisach@mit.edu>

	* bindresvport.c: Include gssrpc/rpc.h for prototype.

	* auth_unix.h: Expand prototype for xdr_authunix_params to include
	arguments.

	* auth_gssapi.h: Give full prototypes for xdr_gss_buf,
	xdr_authgssapi_creds, xdr_authgssapi_init_arg and
	xdr_authgssapi_init_res.

	* auth_gssapi.c, auth_none.c, auth_unix.c: For struct AUTH
	disptach functions, provide full prototypes and ensure consistant
	usage in functions

	* auth.h: Provide prototypes dispatch functions in struct
	AUTH. Give a forward declaration of struct rpc_msg. Change
	duplicate definitions of AUTH_WRAP and AUTH_UNWRAP into auth_wrap
	and auth_unwrap. Give full prototype for authany_wrap.

2001-06-21  Ezra Peisach  <epeisach@mit.edu>

	* svc_simple.c (universal): Change transp to s_transp to not
	shadow filewide static definition of name.
	Move file wide definition of "pl" into respective functions.

	* pmap_rmt.c: Change sin->sockin and socket->sock.

	* pmap_getmaps.c, pmap_getport.c: Change socket to sock to not
 	shadow network function.

	* bindresvport.c, clnt_generic.c: Change sin to sockin to not
 	shadow function declaration.

2001-06-19  Ezra Peisach  <epeisach@mit.edu>

	* pmap_prot2.c (xdr_pmaplist): Ensure variable set before use. 

2001-06-18  Ezra Peisach  <epeisach@mit.edu>

	* auth_gssapi.c (auth_gssapi_create): Cast const gss_OID to
	gss_OID for gssapi functions.

	* xdr.c (xdr_u_int, xdr_int32, xdr_u_int32): If enumerated
	operation is not XDR_ENCODE, XDR_DECODE or XDR_FREE - return FALSE
	instead falling off end of function.

2001-06-08  Ezra Peisach  <epeisach@mit.edu>

	* auth_gssapi.h: Rename prototypes from _svcauth_set_log_XXX_func to 
	_svcauth_gssapi_set_log_XXX_func to match code.

2001-06-05  Ezra Peisach  <epeisach@mit.edu>

	* clnt_perror.c (clnt_spcreateerror): Enumerate missing cases in
	switch.

	* getrpcport.c: Include string.h for memmove() prototype and
	pmap_clnt.h for pmap_getport() prototype.

	* rpc_dtablesize.c (_gssrpc_rpc_dtablesize): Declare as returning int.
	* get_myaddress.c (gssrpc_get_myaddress): Likewise.

	* rpc_prot.c (gssrpc_xdr_accepted_reply, sunrpc_seterr_reply):
	Enumerate missing cases for switch.
	(rejected): Fix typo: RPC_VERMISMATCH -> RPC_MISMATCH for
	enumerated switch.

  	* svc_auth.c: Add braces to svcauthsw[] initialization.

	* svc_simple.c: Include pmap_clnt.h for pmap_unset prototype.

	* bindresvport.c, clnt_simple.c, clnt_tcp.c, clnt_udp.c, pmap_clnt.c,
	pmap_getmaps.c, pmap_gtport.c, pmap_rmt.c, svc_tcp.c, svc_udp.c:
	Include unistd.h for close() prototype.

	* xdr.c (xdr_opaque): Specify internal buffer as ints.
	(xdr_u_int32): Declare as returning bool_t.

	* clnt_generic.c, rpc_callmsg.c, svc_auth_unix.c, xdr_mem.c:
	Include string.h for memmove() prototype.

	* xdr_rec.c: Include string.h for memmove() prototype. Add dummy
	XDR_FREE cases for switches.

	* xdr_reference.c (xdr_reference): Add XDR_ENCODE case. (gcc warning). 
	* xdr_array.c (xdr_array): Likewise.

	* auth.h: Include gssrpc/xdr.h and provide prototype for
	gssrpc_xdr_opaque_auth().

	* auth_gssapi.h: Add prototypes for auth_gssapi_seal_seq() and
	auth_gssapi_unseal_seq().

	* clnt.h: Add prototype for _gssrpc_rpc_dtablesize(). 

	* rpc.h: Add prototypes for gssrpc_get_myaddress() and
	gssrpc_bindresvport().

2001-03-07  Ken Raeburn  <raeburn@mit.edu>

	* configure.in: Check for strerror.
	* clnt_perror.c (strerror) [!HAVE_STRERROR]: Define, with
	out-of-range check using sys_nerr.
	(sys_nerr) [!HAVE_STRERROR]: Declare at top level instead of in
	clnt_spcreateerror.
	(clnt_sperror, clnt_spcreateerror): Use strerror always.  Skip
	range check.

Sun Feb 18 17:48:35 2001  Ezra Peisach  <epeisach@kangaroo.mit.edu>

	* xdr.h: Flush out prototypes for xdrmem_create(),
        xdrstdio_create(), xdrrec_create(), xdralloc_create(),
        xdralloc_release(), xdrrec_endofrecord(), xdrrec_skiprecord(),
        xdrrec_eof(), xdralloc_getdata(). Add prototype for
        gssrpc_xdr_fre().

	* xdr.c: Argument to gssrpc_xdr_free(0 changed from char * to void
        *. xdr_u_char() changed to take unsigned char * instead of char *.

	* auth_unix.c: Include unistd.h and string.h for
        prototypes. Declare marshal_new_auth() as static void instead of
        static bool_t based on usage.

	* auth.h, svc_auth.h: Provide full prototypes for a number of
        functions.

2000-06-21  Tom Yu  <tlyu@mit.edu>

	* svc_auth_gssapi.c (_svcauth_gssapi): Missed a rename.  From
	Nathan Neulinger.

2000-05-31  Ken Raeburn  <raeburn@mit.edu>

	* pmap_rmt.c (GIFCONF_BUFSIZE): New macro.
	(getbroadcastnets): Use it for buffer size.
	(clnt_broadcast): Make buffer at least that big.

	* get_myaddress.c (get_myaddress): Increase buffer size.

2000-05-18  Ken Raeburn  <raeburn@mit.edu>

	* auth_gssapi_misc.c (auth_gssapi_display_status_1): Don't pass a
	gss_buffer_desc to fprintf.

	* clnt_tcp.c (clnttcp_create): Initialize "ct".
	* clnt_udp.c (clntudp_bufcreate): Initialize "cu".

	* svc_auth_gssapi.c (_svcauth_gssapi, create_client,
	destroy_client, dump_db, clean_client): Use %p format for
	displaying pointers.  Remove unused variables.

2000-05-17  Ken Raeburn  <raeburn@mit.edu>
            Nalin Dahyabhai  <nalin@redhat.com>

	* clnt_perror.c (clnt_sperror): Don't overflow buffer "str" beyond
	known allocation size.
	* clnt_simple.c (gssrpc_callrpc): Don't overfill buffer "crp->oldhost".

2000-05-03  Nalin Dahyabhai  <nalin@redhat.com>

	* clnt_perror.c (_buf): Use bigger buffer.
	(clnt_spcreateerror): Don't overflow buffer "buf" beyond known
	allocation size.

2000-02-22  Donn Cave  <donn@u.washington.edu>

	* Makefile.in (includes): Extract basename of header file to be
	installed, since Digital UNIX 4.0 native make substitutes the
	VPATH-derived pathname here.

2000-02-17  Tom Yu  <tlyu@mit.edu>

	* svc_auth_gssapi.c (_svcauth_gssapi): Don't explicitly free
	call_arg on error, since svc_getargs should do that now.

	* svc_udp.c (svcudp_getargs): Free args on xdr decode error to
	avoid leaks.

	* svc_tcp.c (svctcp_getargs): Free args on xdr decode error to
	avoid leaks.

	* svc_raw.c (svcraw_getargs): Free args on xdr decode error to
	avoid leaks.

	* auth_gssapi.c (auth_gssapi_create): Don't explicitly free
	call_res anymore, since clnt_call should deal now.

	* clnt_udp.c (clntudp_call): Free stuff on error from
	xdr_replymsg() to prevent leaking.

	* clnt_tcp.c (clnttcp_call): Free stuff on error from
	xdr_replymsg() to avoid leaking.

	* clnt_raw.c (clntraw_call): Free stuff on error from
	xdr_replymsg() to avoid leaking.

2000-02-16  Tom Yu  <tlyu@mit.edu>

	* auth_gssapi.c (auth_gssapi_create): Free call_res because
	xdr_authgssapi_init_res can potentially allocate memory.  Perhaps
	clnt_call should really deal with this, though.  It is not at all
	clear whether clnt_call or svc_getargs should actually end up
	freeing allocated memory themselves.

2000-02-15  Tom Yu  <tlyu@mit.edu>

	* svc_auth_gssapi.c (_svcauth_gssapi): Call gssrpc_xdr_free() if
	xdr_authgssapi_creds() or xdr_authgssapi_init_arg() fails.

	* auth_gssapi_misc.c (xdr_authgssapi_creds):
	(xdr_authgssapi_init_arg):
	(xdr_authgssapi_init_res): Revert prior change.  The caller should
	be the one dealing.  Additionally, it was probably wrong to
	unconditionally free the object regardless of whether the mode is
	XDR_DECODE.
	(auth_gssapi_unwrap_data): Use temp_xdrs rather than in_xdrs to
	force XDR_FREE operation.

2000-02-14  Tom Yu  <tlyu@mit.edu>

	* svc.c (xprt_register): Zero out xports after allocating.

	* auth_gssapi_misc.c (xdr_authgssapi_creds):
	(xdr_authgssapi_init_arg): 
	(xdr_authgssapi_init_res): 
	(auth_gssapi_unwrap_data): If xdr_gss_buf or xdr_bytes fails, call
	again with XDR_FREE set so that allocated memory doesn't leak.

2000-01-24  Tom Yu  <tlyu@mit.edu>

	* get_myaddress.c (gssrpc_get_myaddress): Copy in from NetBSD;
	use loopback address only.

1999-10-26  Wilfredo Sanchez  <tritan@mit.edu>

	* Makefile.in: Clean up usage of CFLAGS, CPPFLAGS, DEFS, DEFINES,
	LOCAL_INCLUDES such that one can override CFLAGS from the command
	line without losing CPP search patchs and defines. Some associated
	Makefile cleanup.

Fri Apr 23 20:05:38 1999  Tom Yu  <tlyu@mit.edu>

	* svc.c: Fix to reference the correct xprt because we're no longer
	calling ffs(); also remove some unused variables.

Wed Apr 21 16:22:32 1999  Tom Yu  <tlyu@mit.edu>

	* svc.c (xprt_unregister): Fix typo.

1999-04-14    <tytso@rsts-11.mit.edu>

	* svc.c (svc_getreq, svc_getreqset): Avoid using internal, private
		fd_set structure elements (Needed for Linux/glibc 2.1)

Thu Apr  1 19:11:50 1999  Tom Yu  <tlyu@mit.edu>

	* rpc_commondata.c: Add initializers to prevent lossage on systems
	that don't deal with common blocks in libraries.

1998-11-13  Theodore Ts'o  <tytso@rsts-11.mit.edu>

	* Makefile.in: Set the myfulldir and mydir variables (which are
		relative to buildtop and thisconfigdir, respectively.)

1998-10-27  Marc Horowitz  <marc@mit.edu>

	* svc_auth_gssapi.c, auth_gssapi.h: fix the set_name prototype,
	add a new unset_names function

Sun Jul 26 18:13:39 1998  Sam Hartman  <hartmans@utwig.mesas.com>

	* Makefile.in (LIBMAJOR): bump libmajor

Wed Apr 15 18:07:38 1998  Tom Yu  <tlyu@mit.edu>

	* Makefile.in (SHLIB_EXPDEPS): 
	(SHLIB_EXPLIBS): Rename libcrypto -> libk5crypto.

Mon Apr  6 19:44:51 1998  Tom Yu  <tlyu@voltage-multiplier.mit.edu>

	* Makefile.in (includes): Don't mkdir unless the directory doesn't
 	exist yet.

Wed Feb 18 16:26:19 1998  Tom Yu  <tlyu@mit.edu>

	* Makefile.in: Remove trailing slash from thisconfigdir.  Fix up
	BUILDTOP for new conventions.

Fri Feb 13 20:57:49 1998  Tom Yu  <tlyu@mit.edu>

	* auth.h: Renames.
	* auth_any.c: Update header locations.
	* auth_gssapi.c: Punt naughty RCS keywords.  Update header
	locations.  Remove explicit extern decl of rpc_createrr (clnt.h
	gets it).  Renames.
	* auth_gssapi.h: Punt naughty RCS keywords.
	* auth_gssapi_misc.c: Punt naught RCS keywords.  Update header
	locations.
	* auth_none.c: Update header locations.  Renames.
	* auth_unix.c: Update header locations.  Renames.
	* auth_unix.h: Renames.
	* authunix_prot.c: Update header locations.
	* bindresvport.c: Renames.
	* clnt.h: Renames.
	* clnt_generic.c: Update header locations.
	* clnt_perror.c: Update header locations.
	* clnt_raw.c: Update header locations.  Renames.
	* clnt_simple.c: Update header locations.  Renames.
	* clnt_tcp.c: Update header locations.  Renames.
	* clnt_udp.c: Upate header loations.  Renames.
	* get_myaddress.c: Update header locations.  Renames.
	* getrpcent.c: Update header locations.
	* getrpcport.c: Update header locations. Renames.
	* netdb.h: Update header locations.
	* pmap_clnt.c: Update header locations.  Renames.
	* pmap_clnt.h: Renames.
	* pmap_getmaps.c: Update header locations.
	* pmap_getport.c: Update header locations.
	* pmap_prot.c: Update header locations.
	* pmap_prot.h: Renames.
	* pmap_prot2.c: Update header locations.
	* pmap_rmt.c: Update header locations.  Renames.
	* pmap_rmt.h: Renames.
	* rpc.h: Update header locations.  No longer include rpc/netdb.h.
	* rpc_callmsg.c: Update header locations.  Renames.
	* rpc_commondata.c: Update header locations.
	* rpc_dtablesize.c: Renames.
	* rpc_msg.h: Renames.
	* rpc_prot.c: Update header locations.  Renames.
	* svc.c: Update header locations.  Renames.
	* svc.h: Renames.
	* svc_auth.c: Update header locations.  Renames.
	* svc_auth.h: Renames.
	* svc_auth_any.c: Update header locations.
	* svc_auth_gssapi.c: Punt naughty RCS keywords.  Update header
	locations.  Renames.
	* svc_auth_unix.c: Renames.
	* svc_raw.c: Update header locations.
	* svc_run.c: Update header locations.  Renames.
	* svc_simple.c: Update header locations.  Renames.  Make pl
	static.
	* svc_tcp.c: Update header locations.  Renames.
	* svc_udp.c: Update header locations.  Renames.
	* xdr.c: Update header locations.  Renames.
	* xdr.h: Renames.
	* xdr_alloc.c: Punt naughty RCS keywords.  Update header
	locations.
	* xdr_array.c: Update header locations.
	* xdr_float.c: Update header locations.
	* xdr_mem.c: Update header locations.
	* xdr_rec.c: Update header locations.
	* xdr_reference.c: Update header locations.
	* xdr_stdio.c: Update header locations.

	* Makefile.in: Bump major version due to changes.  Don't build
	getrpcent.o, since we don't use it, and dealing with the
	rpc/netdb.h lossage was a major pain.  Also, rename HDRDIR to
	$(BUILDTOP)/gssrpc in order to avoid problems with system headers
	including rpc/*.h.

Thu Feb 12 16:18:22 1998  Tom Yu  <tlyu@mit.edu>

	* configure.in: Add commented out AC_OUTPUT to force autoreconf to
	rebuild the configure script.

Mon Feb  2 17:00:16 1998  Theodore Ts'o  <tytso@rsts-11.mit.edu>

	* Makefile.in: Define BUILDTOP and thisconfigdir in the Makefile

	* configure.in, Makefile.in: Remove CopySrcHeader and CopyHeader 
		from configure.in and move equivalent functionality to
		Makefile.in 

Wed Jan 21 15:06:00 1998  Ezra Peisach  <epeisach@mit.edu>

	* bindresvport.c: Include string.h for memset prototype.

Tue Dec 16 11:22:13 1997  Ezra Peisach  <epeisach@mit.edu>

	* svc_auth_gssapi.c (_svcauth_gssapi): When looping over services,
		free previous output_tokens.

Fri Nov 21 00:37:14 1997  Ezra Peisach  <epeisach@mit.edu>

	* Makefile.in (types.h): Add rules to generate file by running
 	config.status. Remove on make clean.

Tue Oct 21 14:31:33 1997  Ezra Peisach  <epeisach@mit.edu>

	* svc_auth_gssapi.c (destroy_client): Fix to not lose entries in
        the chain linked list.

Mon Aug 18 09:48:06 1997  Ezra Peisach  <epeisach@kangaroo.mit.edu>

	* get_myaddress.c: Include string.h for memcpy prototype.

Sat Feb 22 01:34:19 1997  Sam Hartman  <hartmans@tertius.mit.edu>

	* Makefile.in (SHLIB_EXPDEPS): s/.so/$(SHLIBEXT)

Mon Feb 10 11:10:02 1997  Ezra Peisach  <epeisach@quest.rose.brandeis.edu>

	* configure.in: Check for sys/uio.h.

	* svc_udp.c: Include sys/uio.h is available for struct iovec.

Mon Feb 10 00:04:36 1997  Tom Yu  <tlyu@mit.edu>

	* svc_udp.c (svcudp_recv): Avoid coredumps under Solaris (and
	possibly other systems) by passing in a non-NULL iovec to
	recvmsg().

Thu Jan 16 19:02:22 1997  Tom Yu  <tlyu@mit.edu>

	* Makefile.in (all-prerecurse): Update to use double-colon rules.

Tue Jan 14 19:22:42 1997  Tom Yu  <tlyu@mit.edu>

	* Makefile.in:
	* configure.in: Update to new library build procedure.

Wed Dec  4 12:42:49 1996  Barry Jaspan  <bjaspan@mit.edu>

	* Various changes to allow channel bindings to work with both UDP
 	and TCP cleanly [krb5-libs/180]:

	* auth_gssapi.c: remove the special-case exception to channel
 	bindings failure added in the previous revision, since we now
 	solve the problem by making channel bindings not fail

	* clnt_udp.c: use a connected socket so that the client can
 	determine its own source address with getsockname

	* svc.h: add xp_laddr and xp_laddrlen fields to SVCXPRT structure

	* svc_tcp.c: set xp_laddr and xp_laddrlen when a connection is
 	established

	* svc_udp.c (svcudp_recv): use recvmsg with MSG_PEEK followed by
 	recvfrom in order to determine both source and dest address on
 	unconnected UDP socket, set xp_laddr and xp_laddrlen

Fri Nov 22 15:50:42 1996  unknown  <bjaspan@mit.edu>

	* get_myaddress.c (get_myaddress): use krb5_os_localaddr instead
 	of ioctl() to get local IP addresses [krb5-libs/227]

	* clnt_generic.c, clnt_simple.c, getrpcport.c: use sizeof instead
 	of h_length to determine number of bytes of addr to copy from DNS
 	response [krb5-misc/211]

Fri Nov 22 11:49:43 1996  Sam Hartman  <hartmans@mit.edu>

	* types.hin: Include stdlib.h if found at config time [203]

	* configure.in: Substitute STDLIB_INCLUDE into types.h. [203]

Tue Nov 12 16:27:27 1996  Barry Jaspan  <bjaspan@mit.edu>

	* auth_gssapi.c (auth_gssapi_create): handle channel bindings
 	failure so UDP connections can work [krb5-libs/180]

Tue Nov  5 18:43:46 1996  Tom Yu  <tlyu@mit.edu>

	* configure.in: Revert removal of CopySrcHeader, etc., for now.

	* Makefile.in (OBJS): Remove dependency of $(OBJS) on shared, also
	remove dependency of $(HDRS) on $(HDRDIR).  Both of these to avoid
	unecessary copying.

Wed Oct 30 13:18:34 1996  Barry Jaspan  <bjaspan@mit.edu>

	* xdr_stdio.c: Remove the #ifndef mc68000 cruft.  I'm not sure
 	what it was supposed to accomplish, but in both places it appeared
 	it was unquestionably wrong.  I suspect that the ifdef was put in
 	originally to optimize byte-alignment code that wasn't necessary
 	on the 68000.  Who knows?  Someone will complain if this isn't
 	right. [krb5-libs/47]
  
Tue Oct 29 13:03:50 1996  Barry Jaspan  <bjaspan@mit.edu>

	* auth_gssapi.c (auth_gssapi_create): #ifdef GSSAPI_KRB5, a null
 	mech_type implies gss_mech_krb5, so include that in the version 3
 	fallback test.  This change, along with the other changes for rpc
 	version 4, complete the fix for [krb5-libs/106].

Wed Oct 23 00:08:27 1996  Theodore Y. Ts'o  <tytso@mit.edu>

	* pmap_rmt.c:
	* clnt_udp.c: Change #ifdef sparc to #ifdef sun for more portability.
		[fixes PR#123]

Mon Oct 21 21:22:42 1996  Tom Yu  <tlyu@mit.edu>

	* Makefile.in, configure.in: Fixes to work with new directory
 	recursion method.

Wed Oct 16 16:12:07 1996  Barry Jaspan  <bjaspan@mit.edu>

	* svc_auth_gssapi.c (_svcauth_gssapi): accept add call_arg version
 	4

Tue Oct 15 17:04:09 1996  Barry Jaspan  <bjaspan@mit.edu>

	* Makefile.in (CFLAGS): compile with -DGSSAPI_KRB5

	* svc_auth_gssapi.c: add #ifdef GSSAPI_KRB5 for krb5 specific code

	* auth_gssapi.c (auth_gssapi_create): add call_arg version 4, make
 	version 3 use using gss_mech_krb5_old (under #ifdef GSSAPI_KRB5)

	* configure.in: add DO_SUBDIRS so make will descend into unit-test

Wed Oct  9 14:15:34 1996  Tom Yu  <tlyu@mit.edu>

	* Makefile.in (all-unix): Force $(OBJS) to depend on includes,
	fixing incompatibilty with makes that don't evaluate dependencies
	l-r.

Tue Sep  3 23:10:58 1996  Theodore Y. Ts'o  <tytso@mit.edu>

	* auth_gssapi.c: Remove $LOG$, including "unprofessional" comment
		which OV requested that we lose....

Sat Aug 31 01:46:45 1996  Ken Raeburn  <raeburn@cygnus.com>

	* pmap_rmt.c (getbroadcastnets): Tweak conditional layout to make
	emacs indentation code happier.

	* netdb.h: Comment fix.

	Tue Aug  6 18:52:47 1996  Marc Horowitz  <marc@mit.edu>

	* configure.in, getrpcent.c: Use configure to the return types of
	setrpcent() and getrpcent().  Also, check for struct rpcent in the
	system <netdb.h>, and only define the structure in rpc/netdb.h if
	it's not in the system file.

Tue Aug 13 15:18:16 1996  Tom Yu  <tlyu@mit.edu>

	* getrpcent.c: Add PROTOTYPE and conditionalize function
		prototypes.

	* xdr.h: Add PROTOTYPE and conditionalize function prototypes.

	* svc_auth_gssapi.c: Remove ANSI string concatenation, de-ANSI-fy
 		function definitions.

	* auth_gssapi_misc.c (auth_gssapi_display_status_1): Remove ANSI
		string concatenation, de-ANSI-fy function definitions.

	* auth_gssapi.h: Add PROTOTYPE and conditionalize function
		prototypes.

	* auth_gssapi.c (auth_gssapi_create): remove ANSI-ish string
		concatenation, de-ANSI-fy function definitions.

Thu Aug  8 15:30:01 1996  Tom Yu  <tlyu@voltage-multiplier.mit.edu>

	* configure.in, types.hin: Change search for struct rpcent yet
		again, this time compile-checking both netdb.h and
		rpc/netdb.h and taking action appropriately.  See the
		comments in configure.in for details.

Mon Aug  5 16:46:48 1996  Tom Yu  <tlyu@voltage-multiplier.mit.edu>

	* Makefile.in (CFLAGS): Change DEBUG_GSSAPI to 0 to avoid printing
		excess stuff to stderr.

Wed Jul 31 20:36:34 1996  Tom Yu  <tlyu@voltage-multiplier.mit.edu>

	* getrpcent.c: Shuffle inclusion order somewhat.

	* configure.in: Fix test for STRUCT_RPCENT_ALREADY_PROVIDED if
		there happens to be a /usr/include/rpc/netdb.h.  This
		causes /usr/include/netdb.h to include netdb.h from our
		tree rather from /usr/include/rpc, which of course results
		in massive damage.  Basically, if /usr/include/netdb.h
		contains rpcent declaration and /usr/include/rpc/netdb.h
		exists, then assume that there is no struct rpcent in the
		system include files.  It's really unfortunate that we
		need to do this at all, but it's all we can do short of
		renaming a bunch of include files or directories.

	* Makefile.in: Punt -I$(srcdir)/..; it was gross and not needed
		because headers get installed in build tree before
		building the library anyway.

Wed Jul 31 16:54:29 1996  Tom Yu  <tlyu@mit.edu>

	* types.hin: Remove #include <netdb.h> because it appears the only
		reason for doing so was to get struct rpcent, and we're
		getting that via <rpc/netdb.h>.

	* clnt_generic.c, clnt_simple.c, clnt_tcp.c, clnt_udp.c,
 		getrpcent.c, getrpcport.c, pmap_getmaps.c, svc_simple.c:
		Revert prior change due to netdb.h shuffling.

Tue Jul 30 18:59:17 1996  Tom Yu  <tlyu@mit.edu>

	* rpc.h: Don't include netdb.h (rpc/types.h already includes it)

	* svc_auth_gssapi.c: #include <rpc/rpc.h> before <sys/stat.h> (to
		get sys/types.h.

	* clnt_generic.c, clnt_simple.c, clnt_tcp.c, clnt_udp.c,
 		getrpcent.c, getrpcport.c, pmap_getmaps.c, svc_simple.c:
 		Remove #include <netdb.h>; it's already included in
 		rpc/types.h.

Mon Jul 29 22:02:47 1996  Sam Hartman  <hartmans@tertius.mit.edu>

	* configure.in: Determine whether netdb.h defines struct rpcent.

	* types.hin: Expand rpcent_define to be a null string or a #define
        on Linux.

	* netdb.h: Include rpc/types.h and only define struct rpcent if
        needed.

Wed Jul 24 07:58:38 1996  Ezra Peisach  <epeisach@kangaroo.mit.edu>

	* pmap_rmt.c (clnt_broadcast): Use memset insetad of bzero.

	* Makefile.in (DEPLIBS): Use correct version number for
		gssapi_krb5 dependency. 

Tue Jul 23 23:49:47 1996  Sam Hartman  <hartmans@tertius.mit.edu>

	* clnt_perror.c: Don't declare strcpy.

Tue Jul 23 11:24:32 1996  Ezra Peisach  <epeisach@kangaroo.mit.edu>

	* xdr.c: Do not declare malloc().

	* Makefile.in (SHLIB_LIBS): Link with gssapi_krb5 when creating
		shared library.


Mon Jul 22 21:46:48 1996  Ezra Peisach  <epeisach@kangaroo.mit.edu>

	* clnt_perror.c: Include errno.h.

Fri Jul 12 15:33:50 1996  Marc Horowitz  <marc@mit.edu>

	* rpc_dtablesize.c (_rpc_dtablesize): put in a few checks to make
 	sure that the return value is never larger than FD_SETSIZE, since
 	this function's purpose is to be used as the first arg to
 	select().

Tue Jul  9 17:56:54 1996  Marc Horowitz  <marc@mit.edu>

	* rpc.h, netdb.h, getrpcent.c: Our build can (and will) require
 	that the rpc header files shipped with kerberos be used if the
 	library shipped with kerberos is used.  Thus, some simplifying
 	assumptions can be made, mostly having to do with the declaration
 	of struct rpcent and the related functions.
	* clnt_perror.c: made usage of sys_errlist conditional on
 	NEED_SYS_ERRLIST
	* configure.in (DECLARE_SYS_ERRLIST): added
 	* Makefile.in (DONE): added a few rules and variable so shared
 	library creation would work