2005-12-16  Ken Raeburn  <raeburn@mit.edu>

	* k5-thread.h (USE_PTHREAD_LOCK_ONLY_IF_LOADED): Define any time
	HAVE_PRAGMA_WEAK_REF is defined.

2005-10-20  Jeffrey Altman <jaltman@mit.edu>

	* win-mac.h: 
          - Add definitions for int64_t and uint64_t
	  - Force the use of 32-bit time_t on 32-bit Windows
          - Correct the definition of MAX_SIZE to use the value
            of SIZE_MAX which is defined in limits.h
          - Add check to ensure that 32-bit time_t is forced
            only when k5-int.h has been loaded.
        * k5-int.h:
          - Add check to ensure that k5-int.h is loaded before
            krb5.h
        * krb5.hin:
          - Modify prototypes of functions that take krb5_int32
            when they are really passing krb5_timestamp values
            krb5_us_timeofday, krb5_timeofday, krb5_set_real_time,
            krb5_set_debugging_time, krb5_get_time_offsets,
            krb5_set_time_offsets

2005-10-20  Jeffrey Altman <jaltman@mit.edu>

	* win-mac.h: Add definitions for int32_t and uint32_t

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

	* k5-thread.h (krb5int_pthread_loaded) [HAVE_PRAGMA_WEAK_REF]:
	Declare.
	(K5_PTHREADS_LOADED) [HAVE_PRAGMA_WEAK_REF]: Use it.

2005-05-17  Ken Raeburn  <raeburn@mit.edu>

	* fake-addrinfo.c (fai_add_hosts_by_name): Pass null pointer
	instead of telnet as service name.

2005-03-25  Ken Raeburn  <raeburn@mit.edu>

	* configure.in: Don't check for getpwnam_r and getpwuid_r with
	AC_CHECK_FUNCS; use AC_CHECK_FUNC, and only set shell variables.
	Run stricter tests on return types and numbers of arguments, and
	only define the C macros if these parameters can actually be
	determined.
	* k5-platform.h (k5_getpwnam_r, k5_getpwuid_r): New macros.

	* k5-platform.h: Expand on init/fini comments some more.
	(MAKE_FINI_FUNCTION): Add an HP-UX specific variant that defines
	an auxiliary function fitting the signature of HP-UX 10 library
	combined initializer/finalizer functions.

2005-03-04  Ken Raeburn  <raeburn@mit.edu>

	* configure.in: Check return type of gmtime_r, and define
	GMTIME_R_RETURNS_INT if it returns int.  If the return type can't
	be determined, pretend the function isn't there.

2005-02-08  Ken Raeburn  <raeburn@mit.edu>

	* k5-platform.h (PROGRAM_EXITING) [__GNUC__ && !_WIN32 &&
	CONSTRUCTOR_ATTR_WORKS]: Define as zero.

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

	* k5-thread.h (KRB5_CALLCONV, KRB5_CALLCONV_C): Define if not
	defined.
	(k5_debug_make_loc): Change "lineno" to type int.
	(k5_debug_make_loc): Likewise for argument "line".

2005-01-04  Jeffrey Altman <jaltman@mit.edu>

        * win-mac.h: define NEED_INSIXADDR_ANY for ipv6 symbol

2005-01-21  Ezra Peisach  <epeisach@mit.edu>

	* k5-thread.h (k5_os_mutex_lock): Under Irix, invoke
	k5_pthread_mutex_lock() with the k5_os_mutex, not the
	pthread_mutex_t.
	(k5_pthread_assert_locked,unlocked): If DEBUG_THREADS not use, provide
	correct prototype. Add missing close paren.

2005-01-14  Ken Raeburn  <raeburn@mit.edu>

	* k5-thread.h [HAVE_PTHREAD && HAVE_PRAGMA_WEAK_REF]: Mark
	pthread_self and pthread_equal as weak references.

2005-01-13  Ken Raeburn  <raeburn@mit.edu>

	* k5-thread.h (k5_os_mutex) [pthread case]: Add new field "owner"
	if DEBUG_THREADS.
	(k5_pthread_mutex_lock, k5_pthread_mutex_unlock,
	k5_pthread_assert_locked): New macros/functions; if DEBUG_THREADS,
	and thread support loaded, set or check the owner field.
	(K5_OS_MUTEX_PARTIAL_INITIALIZER) [pthread case && DEBUG_THREADS]:
	Set the owner field.  If PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP
	is defined, use it.
	(k5_os_mutex_lock, k5_os_mutex_unlock, k5_os_mutex_assert_locked)
	[pthread case]: Use k5_pthread_ versions.
	(k5_mutex_destroy): Update the location data with the mutex
	locked, before destroying it.
	(k5_mutex_unlock): Update the location data while the mutex is
	still locked, and check the assertion that the mutex really is
	locked.  Convert inline function to macro.

	* k5-thread.h (krb5int_mutex_lock_update_stats,
	krb5int_mutex_unlock_update_stats, krb5int_mutex_report_stats)
	[!DEBUG_THREADS_STATS]: Declare KRB5_CALLCONV.

2005-01-04  Jeffrey Altman <jaltman@mit.edu>

        * krb5.hin: add prototype for krb5_is_thread_safe

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

	* krb5.hin: Flag krb5_principal2salt as KRB5_CALLCONV_WRONG.

2004-12-08  Ken Raeburn  <raeburn@mit.edu>

	* k5-int.h (KRB5INT_ACCESS_STRUCT_VERSION): Bump to 9.
	(struct _krb5int_access): Add function pointer field use_dns_kdc.

2004-11-19  Ken Raeburn  <raeburn@mit.edu>

	* win-mac.h (HAVE_GETADDRINFO, HAVE_GETNAMEINFO): Define.

2004-10-29  Ken Raeburn  <raeburn@mit.edu>

	* fake-addrinfo.h: Include errno.h earlier.

2004-10-28  Ken Raeburn  <raeburn@mit.edu>

	* k5-thread.h (return_after_yield, k5_mutex_lock) [__GNUC__]: Add
	macro versions so debugging line numbers will be useful.
	(DEBUG_THREADS_SLOW): Don't define.

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

	* fake-addrinfo.h (AI_ADDRCONFIG, AI_V4MAPPED, AI_ALL): If not
	defined, or when completely faking getaddrinfo, define them as
	zero.

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

	* configure.in: Check for struct if_laddrconf, as for struct
	lifconf.

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

	* configure.in: Use AC_MSG_NOTICE for krb4 messages instead of
	AC_MSG_RESULT, because there's no corresponding AC_MSG_CHECKING.

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

	* configure.in: Remove KRB5_AC_NEED_BIND_8_COMPAT.

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

	* configure.in: Check for h_errno declaration in netdb.h.

	* port-sockets.h: Explicitly declare h_errno if it's missing.

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

	* port-sockets.h: Remove _XOPEN_SOURCE_EXTENDED hack for netdb.h,
	as it can cause inconsistencies between headers.  It significantly
	broke HP-UX 10.20 anyway.

2004-09-01  Jeffrey Altman <jaltman@mit.edu>

        * krb5.hin: define KRB5_TC_NOTICKET for use with krb5_cc_set_flags

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

	* fake-addrinfo.h (fai_add_hosts_by_name): Handle case where
	returned ai_canonname is null.

2004-08-14  Ken Raeburn  <raeburn@mit.edu>

	* k5-thread.h (k5_os_nothread_mutex_assert_locked,
	k5_os_nothread_mutex_assert_unlocked, k5_os_mutex_assert_locked,
	k5_os_mutex_assert_unlocked): Assertion macros should always have
	type void.

2004-08-12  Ken Raeburn  <raeburn@mit.edu>

	* k5-thread.h (k5_os_nothread_mutex_finish_init,
	k5_os_nothread_mutex_init, k5_os_nothread_mutex_destroy,
	k5_os_nothread_mutex_lock, k5_os_nothread_mutex_unlock)
	[!DEBUG_THREADS]: Replace macros with inline functions, to gain
	type checking and eliminate gratuitous compiler warnings.
	(k5_pthread_assert_unlocked, k5_pthread_assert_locked): Likewise.
	(k5_os_mutex_finish_init) [HAVE_PTHREAD &&
	!USE_PTHREAD_LOCK_ONLY_IF_LOADED]: Likewise.
	(return_after_yield): New inline function.
	(k5_os_mutex_lock) [HAVE_PTHREAD]: Change back to a macro,
	calling return_after_yield.

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

	* configure.in: Solaris getpwnam_r returns struct passwd*, not
	struct pwd*.

2004-08-08  Ken Raeburn  <raeburn@mit.edu>

	* configure.in: If getpwnam_r is available, determine its return
	type.

2004-08-07  Ken Raeburn  <raeburn@mit.edu>

	* configure.in: Look for sched.h and sched_yield.
	* k5-thread.h: Only include sched.h if it's available.
	(MAYBE_SCHED_YIELD): Only use sched_yield if sched.h and
	sched_yield are available; if weak references are supported and
	sched_yield isn't available by default, check for it at run time.

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

	* k5-thread.h [HAVE_PTHREAD]: Include sched.h if
	DEBUG_THREADS_SLOW is defined.
	(MAYBE_SCHED_YIELD) [HAVE_PTHREAD]: Define, to call sched_yield or
	not, depending on DEBUG_THREADS_SLOW.
	(k5_os_mutex_lock, k5_os_mutex_unlock) [HAVE_PTHREAD]: Use
	MAYBE_SCHED_YIELD.
	(DEBUG_THREADS_SLOW): Define.

2004-08-03  Ken Raeburn  <raeburn@mit.edu>

	* configure.in: Actually check for pthread_mutex_lock.

	* k5-int.h (krb5_rc_recover_or_initialize): Declare.

2004-07-28  Ken Raeburn  <raeburn@mit.edu>

	* k5-thread.h [HAVE_PRAGMA_WEAK_REF]: Declare the pthread mutex
	functions as weak.
	(USE_PTHREAD_LOCK_ONLY_IF_LOADED): Define if pthread_mutex_lock
	isn't available by default.

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

	* fake-addrinfo.h: Include k5-thread.h.
	(struct fac): Add a mutex.
	(plant_face, find_face): Check that mutex is already locked.
	(krb5int_lock_fac, krb5int_unlock_fac): Declare.
	(fai_add_hosts_by_name): Use them to lock and unlock the mutex.

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

	* configure.in: Look for "struct lifconf" and maybe define
	HAVE_STRUCT_LIFCONF.

2004-07-19  Ken Raeburn  <raeburn@mit.edu>

	* fake-addrinfo.h (struct face, struct fac): Always declare.
	(krb5int_fac): Renamed from fac, and made extern.  Always
	declare.

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

	* configure.in, port-sockets.h: Don't check for macsock.h.

	* fake-addrinfo.h: Don't include netdb.h, since port-sockets.h
	already does.
	* port-sockets.h: Define _XOPEN_SOURCE_EXTENDED around inclusion
	of netdb.h if it's not defined and not Windows, as fake-addrinfo.h
	used to do; otherwise just include it normally.

	* port-sockets.h (inet_ntop): Cast NULL to desired return pointer
	type.

2004-07-15  Alexandra Ellwood  <lxs@mit.edu>

	* k5-int.h (krb5_os_context) 
        Removed default_ccprincipal field from krb5_context

2004-07-14  Jeffrey Altman <jaltman@mit.edu>

    * k5-int.h: define for WIN32 the macro krb5int_zap_data to 
      utilize the Win32 API SecureZeroMemory which is guaranteed
      by Microsoft not to be optimized out by the compiler.
      Both memset and ZeroMemory will be optimized out by the 
      compiler when possible.

2004-07-13  Ken Raeburn  <raeburn@mit.edu>

	* k5-platform.h (k5_call_init_function) [DELAY_INITIALIZER]
	[__GNUC__]: Use a statement expression so any line number info
	printed by assertion failures is useful.

	* k5-thread.h (k5_os_mutex_init, k5_os_mutex_destroy): If
	USE_PTHREAD_LOCK_ONLY_IF_LOADED is defined, use pthread_mutex_init
	and _destroy only if pthread support is loaded.
	(k5_key_t): Add a couple new values for GSSAPI ccache name
	manipulation.

2004-07-11  Ken Raeburn  <raeburn@mit.edu>

	* k5-thread.h (k5_os_mutex_lock, k5_os_mutex_unlock,
	k5_os_mutex_assert_locked, k5_os_mutex_assert_unlocked)
	[USE_PTHREAD_LOCK_ONLY_IF_LOADED]: Fix typo in accessing
	non-pthread versions.

	* configure.in: Check krb5_cv_inet6_with_dinet6 as well as
	krb5_cv_inet6 when deciding whether to test for in6addr_any.  If
	gcc is in use, suppress pedantic warnings about "inline".

	* fake-addrinfo.h (in6addr_any): If we need to define a static
	copy, rename it with a macro first.

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

	* k5-thread.h: Test HAVE_PTHREAD instead of HAVE_PTHREAD_H.

	* win-mac.h (KRB5_USE_INET6, ENABLE_THREADS): Define.

2004-07-07  Ken Raeburn  <raeburn@mit.edu>

	* k5-thread.h [! HAVE_PTHREAD_H]: Don't explicitly disable thread
	support when pthread.h is missing.
	(k5_os_mutex, K5_OS_MUTEX_PARTIAL_INITIALIZER,
	k5_os_mutex_finish_init, k5_os_mutex_init, k5_os_mutex_destroy,
	k5_os_mutex_lock, k5_os_mutex_unlock, k5_os_mutex_assert_unlocked,
	k5_os_mutex_assert_locked) [_WIN32]: Define Windows versions;
	still not enabled by default.

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

	* k5-thread.h: Use K5_THREAD_H for multiple inclusion protection.
	(k5_debug_mutex_stats, k5_mutex_init_stats,
	k5_mutex_finish_init_stats, K5_MUTEX_STATS_INIT): Add some dummy
	support for recording statistics on how long mutexes are held,
	etc.  Incomplete implementation started, but code not enabled.
	(k5_mutex_t): Add statistics field.
	(K5_MUTEX_PARTIAL_INITIALIZER, k5_mutex_init_1, k5_mutex_init):
	Initialize it.

	* configure.in: Check for getpwuid_r.

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

	* k5-thread.h: Restructured mutex code.
	(k5_debug_loc): New type, may contain file/line info if
	DEBUG_THREADS_LOC is defined.
	(k5_os_nothread_*): Dummy implementation of mutex lock for a
	single-threded process.  Uses a flag and assert() if DEBUG_THREADS
	is defined, does nothing interesting otherwise.
	(k5_os_mutex*, k5_once*): General implementations, with dummy or
	POSIX or POSIX-if-loaded-otherwise-dummy variants.
	(k5_mutex_*): Combine OS-specific mutex implementation with
	optional file/line tracking, and provide a place to instrument for
	other debugging or performance data.

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

	* configure.in: Test for 'inline' support.
	* k5-platform.h (inline): Don't define here.
	* win-mac.h (inline): Define as __inline.

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

	* k5-thread.h (k5_debug_assert_locked, k5_debug_assert_unlocked):
	New macros.
	(k5_assert_locked, k5_assert_unlocked): New macros, may or may not
	call the debug macros.
	(K5_MUTEX_DEBUG_INITIALIZER): Use current file and line.
	(k5_mutex_debug_finish_init, k5_mutex_debug_init,
	k5_mutex_debug_destroy): Save current file and line.
	(k5_mutex_debug_lock): Verify that the lock was unlocked before,
	and set the state to locked.
	(k5_mutex_debug_unlock): Verify that the mutex was locked before,
	and set the state to unlocked.
	(k5_debug_assert_locked, k5_debug_assert_unlocked): Use
	k5_mutex_debug_check_init instead of checking initialized==1.

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

	* k5-platform.h (JOIN4, JOIN4_2, JOIN3, JOIN3_2): Unused macros
	deleted.
	(JOIN__2, JOIN__2_2): Renamed from JOIN2 and JOIN2_2.  Insert
	two underscores between the tokens supplied.  All uses changed to
	use new macros, and not use identifiers with leading underscores.

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

	* k5-int.h: Don't test macintosh, __MWERKS__, applec, or THINK_C.

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

	* k5-platform.h (MAKE_INIT_FUNCTION, CALL_INIT_FUNCTION,
	INITIALIZER_RAN): Use the linker-driven version for Windows.  The
	auxinit function definition needs an argument list.
	(MAKE_FINI_FUNCTION): Likewise.

	* win-mac.h (HAVE_STRERROR, SYS_ERRLIST_DECLARED): Define.

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

	* Makefile.in (all-mac, clean-mac): Targets deleted.

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

	* Makefile.in ($(srcdir)/krb5/autoconf.stmp): Always use
	--include, don't try --localdir.
	(all-recurse): Depend on krb5/autoconf.h.

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

	* configure.in: Check number of arguments to getpwnam_r and
	getpwuid_r and define some new macros if they're the
	four-argument draft POSIX versions.

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

	* configure.in: Check for getpwnam_r, gmtime_r, and localtime_r.

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

	* k5-thread.h: Error out at compile time if thread support is
	enabled but the thread system isn't pthreads.  (This is after the
	code disabling thread support for non-pthreads systems, so it's a
	placeholder for now that should never get invoked.)

	* k5-int.h (struct krb5_rc_st, struct _krb5_rc_ops, krb5_rc_ops):
	Move type definitions to rc-int.h.
	(krb5_rc_register_type, krb5_rc_dfl_ops): Move declarations to
	rc-int.h.

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

	* k5-int.h (krb5int_crypto_init, krb5int_prng_init): Declare.

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

	* k5-thread.h: On IRIX, with threads enabled, reject gcc older
	than v3.

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

	* foreachaddr.c: Implementation moved to lib/krb5/os/localaddr.c.
	* foreachaddr.h: New file.
	(krb5int_foreach_localaddr): Declare.
	(foreach_localaddr): New macro.

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

	* k5-thread.h (k5_mutex_debug_check_init,
	k5_mutex_debug_update_loc): New macros.
	(k5_mutex_debug_lock, k5_mutex_debug_unlock): Use them.
	(k5_mutex_lock, k5_mutex_unlock) [ENABLE_THREADS &&
	DEBUG_THREADS]: Use them instead of k5_mutex_debug_lock and
	k5_mutex_debug_unlock.
	(enum k5_mutex_debug_states): New enum.
	(K5_MUTEX_DEBUG_LOCKED, K5_MUTEX_DEBUG_UNLOCKED): Change to
	enumerator values.
	(k5_mutex_debug_info): Use the enum type.  Reorder fields.
	(K5_MUTEX_DEBUG_INITIALIZER): Update for new field order.

	* k5-int.h: Include k5-thread.h.
	(struct krb5_rc_st): Add a mutex.

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

	* k5-platform.h (DELAY_INITIALIZER): Don't define.
	(CONSTRUCTOR_ATTR_WORKS, DESTRUCTOR_ATTR_WORKS): Don't define.
	(USE_LINKER_FINI_OPTION): Don't define.
	(MAYBE_DUMMY_INIT): New macro, to optionally produce a dummy
	initializer for the linker to reference in the case where other
	options indicate we don't want to use it.
	(MAKE_INIT_FUNCTION): Use it in some versions.  Set the exported
	function name to have a __auxinit suffix.
	(MAKE_FINI_FUNCTION) [!SHARED]: Declare the function static, and
	do nothing to try to cause it to get invoked.

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

	* k5-platform.h (DELAY_INITIALIZER): New macro, defined always.
	(CONSTRUCTOR_ATTR_WORKS, DESTRUCTOR_ATTR_WORKS): New macro,
	defined for Linux and NetBSD, and Solaris with gcc.
	(USE_LINKER_FINI_OPTION): New macro, defined on IRIX, and on
	Solaris with native compiler.
	(JOIN2, JOIN2_2, JOIN3, JOIN3_2, JOIN4, JOIN4_2): New utility
	macros.
	(k5_init_t): New typedef, for some platforms.
	(MAKE_INIT_FUNCTION, MAKE_FINI_FUNCTION, CALL_INIT_FUNCTION,
	INITIALIZER_RAN, PROGRAM_EXITING): New macros for library
	initialization and finalization support.

	* k5-thread.h: Use k5_mutex_init instead of K5_MUTEX_INITIALIZER
	for multiple-inclusion protection.
	(K5_MUTEX_DEBUG_INITIALIZER): Change initial initialized flag to
	2.
	(k5_mutex_debug_finish_init): New macro, verifies value 2 and
	changes it to 1.
	(k5_mutex_debug_lock): Test various values of initialized and
	locked flags separately, so assertion failure message is more
	immediately informative.
	(K5_MUTEX_PARTIAL_INITIALIZER): Rename from K5_MUTEX_INITIALIZER.
	(k5_mutex_finish_init): New macro.
	(pthread_once, pthread_mutexattr_setrobust_np): Consider
	declaring weak based on availability.
	(K5_PTHREADS_LOADED): New macro, tests to see if pthread
	functions are available, if weak references are supported.
	(k5_mutex_lock, k5_mutex_unlock): On IRIX, redefine to bypass
	pthread code if pthread library isn't loaded.
	(k5_once_t): New typedef.
	(K5_ONCE_INIT, k5_once): New macros.

	* Makefile.in (autoconf.stmp): Depend on aclocal.m4.

	* k5-platform.h: Include limits.h before testing for SIZE_MAX.

	* k5-thread.h (k5_key_t): New enumerator typedef.
	(k5_key_register, k5_getspecific, k5_setspecific): New macros.
	(krb5int_key_register, krb5int_getspecific, krb5int_setspecific,
	krb5int_key_delete): Declare.

2004-04-16  Sam Hartman  <hartmans@mit.edu>

	* k5-int.h: krb5int_populate_gic_opt now takes credentials  so it
	can get lifetime related options out of them 

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

	* k5-int.h (krb5int_prng_cleanup): Declare.

2004-03-25  Sam Hartman  <hartmans@mit.edu>

	* configure.in: Check for mkstemp

2004-03-08  Ken Raeburn  <raeburn@mit.edu>

	* Makefile.in (LOCAL_SUBDIRS): Renamed from MY_SUBDIRS.

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

	* krb5.hin (krb5_kt_register): Ops table is now const.

	* k5-thread.h: New file.

2004-02-26  Jeffrey Altman <jaltman@mit.edu>

    * k5-int.h: change prototype declarations necessary to support
      the use of krb5_get_init_creds_password's use_master as an
      in/out parameter

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

	* win-mac.h (GETSOCKNAME_ARG2_TYPE, GETSOCKNAME_ARG3_TYPE): Set
	proper values for Windows here.
	(GETPEERNAME_ARG2_TYPE, GETPEERNAME_ARG3_TYPE): Map to the
	getsockname versions.

2004-02-24  Sam Hartman  <hartmans@avalanche-breakdown.mit.edu>

	* krb5.hin: Remove des3 with 32-bit length

2004-01-04 Jeffrey Altman <jaltman@mit.edu>

    * win-mac.h: conditionally define strcasecmp/strncasecmp macros 
      only if they do not already exist.

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

	* configure.in: Check for flock, fchmod, chmod, strftime,
	strptime, geteuid, setenv, unsetenv, getenv, gethostbyname2,
	getifaddrs, stdarg.h, unistd.h, paths.h, regex.h, regexp.h,
	regexpr.h, fcntl.h, memory.h, ifaddrs.h, and sys/filio.h, as was
	previously done in the krb5 library configure script.

2003-12-19  Ken Raeburn  <raeburn@mit.edu>

	* fake-addrinfo.h: Include stdio.h.

2003-12-18  Jeffrey Altman <jaltman@mit.edu>

    * k5-int.h: add new functions to krb5int_access for use by gssapi

2003-12-15  Ken Raeburn  <raeburn@mit.edu>

	* k5-platform.h (SIZE_MAX): Provide default definition if stdint.h
	doesn't define it.

2003-12-15  Jeffrey Altman <jaltman@mit.edu>

  * win-mac.h: source code written to the C99 standard assumes there
    are standard definitions for the MAX sizes of C types including
    size_t.  The MAX preprocessor variables are declared in limits.h
    but limits.h is not included by any of the other header files.
    We will therefore include it via win-mac.h.  We must also add a
    declaration of SIZE_MAX (for size_t) because Microsoft does not
    provide one.  

2003-12-15  Jeffrey Altman <jaltman@mit.edu>

  * k5-platform.h: apply casts (unsigned char) to the assignments from
    64-bit ints to unsigned char fields to avoid warnings 

2003-12-13  Ken Raeburn  <raeburn@mit.edu>

	* krb5.hin (KRB5_AUTH_CONTEXT_USE_SUBKEY): New macro.

	* k5-int.h (struct krb5_keytypes): Added field required_ctype.
	(krb5int_c_mandatory_cksumtype): New declaration.
	(krb5int_generate_and_set_subkey): Declare.
	(memset) [__GNUC__ && __GLIBC__]: Undef, to reduce compilation
	warnings in zap() macro with volatile pointer.

	* k5-platform.h: New header file.  Manages inline-function and
	64-bit support, in platform-specific ways.
	* fake-addrinfo.h: Include k5-platform.h.
	(inline): Don't define here.
	* k5-int.h: Include k5-platform.h.
	(krb5_ui_8, krb5_int64): New typedefs.
	(krb5_ser_pack_int64, krb5_ser_unpack_int64): New function decls.

2003-10-08  Tom Yu  <tlyu@mit.edu>

	* k5-int.h: Add prototypes for decode_krb5_safe_with_body and
	encode_krb5_safe_with_body.

2003-09-26  Ken Raeburn  <raeburn@mit.edu>

	* Makefile.in ($(srcdir)/krb5/autoconf.h.in): Depend on
	autoconf.stmp only if maintainer mode is enabled.

2003-09-12  Ken Raeburn  <raeburn@mit.edu>

	* configure.in: Check for setsid() and <paths.h>.

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

	* fake-addrinfo.h (WRAP_GETADDRINFO, COPY_FIRST_CANONNAME): Don't
	define on Linux unless HAVE_GETADDRINFO is defined, for libc5
	compatibility.

2003-08-26  Ken Raeburn  <raeburn@mit.edu>

	* krb5.hin (struct _krb5_donot_replay, krb5_rc_default)
	(krb5_rc_resolve_type, krb5_rc_resolve_full, krb5_rc_get_type)
	(krb5_rc_default_type, krb5_rc_default_name, krb5_auth_to_rep):
	Private declarations moved...
	* k5-int.h: ...to here.

	* configure.in: Don't test for labs, memmove or bcopy.
	* k5-int.h (labs, HAVE_LABS): Never define.
	* win-mac.h (HAVE_LABS): Don't define.

	* configure.in: Check for some C99 headers and types.

	* fake-addrinfo.h (inline): Supported by Sun Forte Developer 7
	compiler.

	* foreachaddr.c (foreach_localaddr) [HAVE_IFADDRS_H]: Skip over
	any returned data structure with a NULL ifa_addr field.

2003-08-21  Ken Raeburn  <raeburn@mit.edu>

	* fake-addrinfo.h (getnameinfo): Define to my_fake_getnameinfo
	only if HAVE_GETADDRINFO is defined.

2003-08-20  Ken Raeburn  <raeburn@mit.edu>

	* fake-addrinfo.h (inline): Move definitions further up, before
	first use.  Do use __inline__ for gcc without c99 support.
	(GET_SERV_BY_NAME) [!GETSERVBYNAME_R_RETURNS_INT]: Fix invocation
	for IRIX definition.
	* socket-utils.h: Include port-sockets.h to get a definition for
	struct sockaddr_storage.

	First cut at adding local caching to the getaddrinfo support.
	Still needs work.
	* fake-addrinfo.h: Delete the unused WRAP_GETNAMEINFO support.
	(HAVE_GETADDRINFO) [__APPLE__ && __MACH__]: Don't undefine.
	(FAI_CACHE) [__APPLE__ && __MACH__]: Define.
	(system_getaddrinfo, system_freeaddrinfo, system_getnameinfo):
	New functions.
	(gaiptr, faiptr, gniptr): Variables deleted.  Change references
	to use the system_* functions above.
	(getaddrinfo, freeaddrinfo) [FAI_CACHE]: Define as macros to the
	my_fake_* versions.
	(protoname, socktypename, familyname): Use caller-supplied
	buffers instead of local static buffers.
	(debug_dump_getaddrinfo_args): Provide a buffer.
	(NEED_FAKE_GETNAMEINFO): Define if HAVE_GETADDRINFO is not
	defined.
	(inline): Rework macros to test for C99 and IRIX.
	(NEED_FAKE_GETADDRINFO): Define if FAI_CACHE is defined.
	(fai_add_entry) [KRB5_USE_INET6]: Support IPv6.
	(CACHE_ENTRY_LIFETIME): New macro.
	(struct face, struct fac): New types.
	(fac): New static variable.
	(plant_face, find_face): New functions.
	(fai_add_hosts_by_name) [FAI_CACHE]: Check the cache before
	looking up the hostname.  Add the looked-up host info to the
	cache.
	(fake_getaddrinfo): Call GET_SERV_BY_NAME instead of
	conditionally calling getservbyname or getservbyname_r.  Don't
	pass AF_INET to fai_add_hosts_by_name.
	(fake_getnameinfo): Define only if NEED_FAKE_GETNAMEINFO is
	defined.
	(gai_strerror): Define if either HAVE_FAKE_GETADDRINFO or
	NEED_FAKE_GETNAMEINFO is defined.
	(getaddrinfo): Do define function if FAI_CACHE is defined.
	(getnameinfo): Define only if NEED_FAKE_GETNAMEINFO is defined.

2003-08-13  Ken Raeburn  <raeburn@mit.edu>

	* configure.in: Check for mode_t.

2003-07-31  Jeffrey Altman  <jaltman@mit.edu>

	* krb5.hin: krb5_get_host_realm and krb5_free_host_realm should
	not be labeled as KRB5_PRIVATE.  They are required for many
	applications including OpenAFS and UMich's Kx509.  1.2.8 had them
	public but the change was never reflected on the trunk.

2003-07-22  Alexandra Ellwood  <lxs@mit.edu>

        * fake-addrinfo.h: Don't use broken getaddrinfo on Mac OS X

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

	* k5-int.h (krb5int_zap_data, zap): New macros; call memset with
	volatile cast for now.
	(struct krb5_enc_provider, struct krb5_hash_provider, struct
	krb5_keyhash_provider): Use numeric values for block size,
	key size, hash size, etc, instead of function pointers.

2003-07-21  Alexandra Ellwood  <lxs@mit.edu>

        * krb5.hin: Export krb5_principal2salt.

2003-07-09  Alexandra Ellwood  <lxs@mit.edu>

        * krb5.hin: Export krb5_get_permitted_enctypes and 
        krb5_set_real_time for Samba.

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

	* k5-int.h (struct krb5_cksumtypes): Add new field trunc_size.

2003-06-12  Tom Yu  <tlyu@mit.edu>

	* krb5.hin: krb524_init_ets() takes one argument.

2003-06-06  Ken Raeburn  <raeburn@mit.edu>

	* k5-int.h (struct srv_dns_entry): Declare.
	(krb5int_make_srv_query_realm, krb5int_free_srv_dns_data):
	Declare.
	(struct _krb5int_access): Add make_srv_query_realm and
	free_srv_dns_data fields.

2003-06-03  Ken Raeburn  <raeburn@mit.edu>

	* k5-int.h (struct _krb5int_access): Add locate_server back in.

2003-05-27  Ken Raeburn  <raeburn@mit.edu>

	* k5-int.h (KRB524_SERVICE, KRB524_PORT): Moved here...
	* krb5.h: ...from here.
	(krb5_524_convert_creds): Renamed from krb524_convert_creds_kdc,
	fixed calling convention spec.
	(krb524_convert_creds_kdc, krb524_init_ets) [KRB5_DEPRECATED]: New
	macros.

	* Makefile.in (clean-windows): Remove new "timestamp" file when
	cleaning up.

2003-05-25  Ezra Peisach  <epeisach@mit.edu>

	* krb5.hin: Sequence number of krb5_replay_data should be unsigned.

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

	* Makefile.in (krb5.h): Include krb524_err.h.
	(krb524_err.h): Depend on rebuild-error-tables like krb5_err.h and
	friends.  Add a null command to cause make to recheck the
	timestamp on the files possibly updated.
	(clean-unix): Get rid of it.
	* k5-int.h (KRb5INT_ACCESS_STRUCT_VERSION): Update to 7.
	(struct ktext) [!defined(ANAME_SZ)]: Declare forward.
	(krb5int_access): Delete krb5_locate_kdc, krb5_locate_server,
	krb5_max_dgram_size and timeout fields.  Add krb_life_to_time,
	krb_time_to_life, and krb524_encode_v4tkt function pointer
	fields.  Reorder fields, and add comments.
	(krb5int_krb_life_to_time, krb5int_krb_time_to_life,
	krb5int_encode_v4tkt, krb5int_524_sendto_kdc): Declare.
	* krb5.hin (KRB524_SERVICE, KRB524_PORT): New macros.
	(struct credentials): Declare forward.
	(krb524_convert_creds_kdc): Declare.

2003-05-22  Tom Yu  <tlyu@mit.edu>

	* k5-int.h: Add prototype for krb5int_auth_con_chkseqnum.

	* krb5.hin: Default KRB5_DEPRECATED to 0.  Default KRB5_PRIVATE to
	0 on all platforms.

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

	* k5-int.h: krb5int_populate_gic_opt returns void

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

	* k5-int.h: Prototype krb5int_populate_gic_opt

2003-05-18  Tom Yu  <tlyu@mit.edu>

	* k5-int.h: Sequence numbers are now unsigned.

	* krb5.hin: Sequence numbers are now unsigned.

2003-05-16  Ken Raeburn  <raeburn@mit.edu>

	* krb5.hin (KRB5_KPASSWD_ACCESSDENIED): New macro.
	(KRB5_KPASSWD_BAD_VERSION, KRB5_KPASSWD_INITIAL_FLAG_NEEDED): New
	macros.

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

	* k5-int.h: Add krb5int_copy_data_contents

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

	* krb5.hin: Add prototype for krb5_c_string_to_key_with_params

	* k5-int.h: Add s2kparams to krb5_gic_get_as_key_fct

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

	* krb5.hin: Add KRB5_PADATA_ETYPE_INFO2

2003-05-09  Ken Raeburn  <raeburn@mit.edu>

	* k5-int.h (struct _krb5_context): New fields conf_tgs_ktypes,
	conf_tgs_ktypes_count, use_conf_ktypes.

2003-05-09  Tom Yu  <tlyu@mit.edu>

	* krb5.hin: Add krb5_auth_con_getsendsubkey,
	krb5_auth_con_getrecvsubkey, krb5_auth_con_setsendsubkey,
	krb5_auth_con_setrecvsubkey.  Mark krb5_auth_con_getlocalsubkey
	and krb5_auth_con_getremotesubkey as deprecated.

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

	* k5-int.h: Add s2kparams to 
	krb5_etype_info_entry
	Add encode_etype_info2 and decode_etype_info2

2003-05-02  Ken Raeburn  <raeburn@mit.edu>

	* port-sockets.h (inet_ntop) [!_WIN32 && !HAVE_MACSOCK_H]: Define
	as a macro if not provided by the OS.

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

	* k5-int.h (struct _krb5_context): Change os_context to be an
	array of one _krb5_os_context instead of a void pointer.

2003-04-17  Sam Hartman  <hartmans@mit.edu>

	* k5-int.h: Add encode_krb5_setpw_req

2003-04-15  Sam Hartman  <hartmans@mit.edu>

	* krb5.hin: Add krb5_set_password
	Move krb5*_chpw internals to k5int.h

	* k5-int.h: Add prototypes for set-password helper functions

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

	* Makefile.in ($(srcdir)/krb5/autoconf.stmp): Try running
	autoheader with --include, and if that doesn't work, try
	--localdir.

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

	* fake-addrinfo.h (getaddrinfo) [NUMERIC_SERVICE_BROKEN]:
	Overwrite the port number only if a numeric service port was
	supplied.

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

	* fake-addrinfo.h (COPY_FIRST_CANONNAME) [_AIX]: Define.
	(GET_HOST_BY_NAME) [_AIX]: New version for AIX version of
	gethostbyname_r.
	(getaddrinfo) [NUMERIC_SERVICE_BROKEN]: Use "discard" as a dummy
	service name instead of none at all.  Don't check for unsigned
	value less than zero.
	(getaddrinfo) [COPY_FIRST_CANONNAME]: Set any ai_canonname fields
	other than the first one to null.

2003-03-18  Alexandra Ellwood  <lxs@mit.edu>

    * configure.in: Use KRB5_AC_NEED_BIND_8_COMPAT to check for bind 9
    and higher.  When bind 9 is present, BIND_8_COMPAT needs to be 
    defined to get bind 8 types.

2003-03-06  Alexandra Ellwood  <lxs@mit.edu>
    
    * krb5.h: Removed enumsalwaysint because there are no typed
    enums in this header.
    
    * k5-int.h: Removed Mac OS header goober. Added prototype for 
    os_get_default_config_files which will be used by KfM's 
    preference APIs (KFM needs to get the secure default files as 
    well as the normal ones). Moved profile.h inclusion higher so 
    it gets included before this function and thus its types are 
    defined (the reason I put it where I did was there is another 
    config file function next to it).

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

	* krb5.h (ENCTYPE_AES128_CTS_HMAC_SHA1_96,
	ENCTYPE_AES256_CTS_HMAC_SHA1_96, CKSUMTYPE_HMAC_SHA1_96_AES128,
	CKSUMTYPE_HMAC_SHA1_96_AES256): New macros.
	* k5-int.h (krb5_str2key_func): Added params argument.
	(krb5int_pbkdf2_hmac_sha1): Declare.
	(krb5_cryptosystem_entry, krb5_cs_table_entry, SUM_FUNC,
	SUM_VERF_FUNC, krb5_checksum_entry): Delete unused declarations.

2003-02-26  Ken Raeburn  <raeburn@mit.edu>

	* configure.in: Set and substitute maybe_kerberosIV.
	* Makefile.in (MY_SUBDIRS): Use it.

2003-02-19  Ken Raeburn  <raeburn@mit.edu>

	* krb5.hin (krb5_princ_component): Return NULL if going off the
	end of the array.

	* configure.in: Check for sys/select.h and time.h.

2003-02-07  Tom Yu  <tlyu@mit.edu>

	* Makefile.in (all-unix): Remove kerberosIV/krb_err.h, as it was
	causing spurious rebuilds of lots of stuff because it was
	depending on all-recurse, which is always out of date.
	(install-headers-unix): Also, no need to depend on
	kerberosIV/krb_err.h here, since the kerberosIV subdirectory takes
	care of it.

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

	* krb5.hin (krb5_mk_req_checksum_func): Fix Windows calling
	convention syntax.

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

	* socket-utils.h (socklen_t, krb5int_sockaddr_storage): Move
	definitions...
	* port-sockets.h (socklen_t, krb5int_sockaddr_storage): ...to
	here.
	(socket) [!_WIN32 && S_SPLINT_S]: Declare with Splint
	annotations.

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

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

	* fake-addrinfo.h (getaddrinfo) [_AIX]: Always overwrite sa_family
	and sa_len fields, since sa_family at least may be non-zero *and*
	wrong.
	(protoname, socktypename, familyname, debug_dump_getaddrinfo_args,
	debug_dump_error, debug_dump_error, debug_dump_addrinfos)
	[DEBUG_ADDRINFO]: New debugging functions.
	(fake_getaddrinfo, getaddrinfo) [DEBUG_ADDRINFO]: Use them.

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

	* fake-addrinfo.h (freeaddrinfo): Back out 1/3/03 change. ANSI
	does not require it.

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

	* krb5.hin :  Move KRB5_CALLCONV specifier for
	krb5_mk_req_checksum_func to right place 

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

	* k5-int.h (krb5_cc_dfl_ops): Declare as pointer to const.
	(struct krb5_rc_st): Field ops now points to const.
	(krb5_rc_register_type): Ops argument now points to const.
	(krb5_rc_dfl_ops): Now const.
	(struct _krb5_ccache): Field ops now points to const.

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

	* krb5.hin: Add support for setting a callback to generate the
	data  checksummed by mk_req

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

	* fake-addrinfo.h (freeaddrinfo): Do not free a NULL pointer.

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

	* krb5.hin (krb5_encrypt, krb5_decrypt, krb5_use_enctype,
	krb5_calculate_checksum, krb5_verify_checksum,
	krb5_get_credentials, krb5_get_credentials_validate,
	krb5_get_credentials_renew, krb5_get_cred_via_tkt, krb5_mk_req,
	krb5_mk_req_extended, krb5_524_conv_principal, krb5_send_tgs,
	krb5_get_in_tkt, krb5_get_in_tkt_with_password,
	krb5_get_in_tkt_with_skey, krb5_get_in_tkt_with_keytab,
	krb5_aname_to_localname): Clean up use of "const" in API, where it
	was applied to the value passed and not something pointed to.

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

	* krb5.hin: Update comment on krb5_kt_free_entry prototype to
	point at the correct recommended function.

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

	* k5-int.h: Update prototype of krb5int_locate_server() to take
	protocol family argument.  Update krb5int_access to current call
	signatures of locate_kdc() and locate_server(), as well as to add
	add_host_to_list() for use by krb4 library.

2002-11-26  Tom Yu  <tlyu@mit.edu>

	* port-sockets.h: Add SOCKET_CONNECT, SOCKET_GETSOCKNAME, and
	SOCKET_CLOSE to allow for porting of some KfM things.

2002-11-14  Tom Yu  <tlyu@mit.edu>

	* Makefile.in: Remove references to adm_err.h from here too.

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

	* fake-addrinfo.h [NEED_FAKE_GETADDRINFO]: Include errno.h.
	(fake_getnameinfo): Check that socklen_t size arguments are
	positive and fit in size_t; return EAI_SYSTEM/EINVAL if not.  Use
	the size_t variants when calling string functions.
	[_AIX]: Define NUMERIC_SERVICE_BROKEN.
	[NUMERIC_SERVICE_BROKEN]: Include ctype.h and stdlib.h.
	(getaddrinfo) [NUMERIC_SERVICE_BROKEN]: If the service name is a
	numeric string, save its value and the socket type, pass a null
	pointer to the real getaddrinfo, and patch the returned results.

2002-10-23  Sam Hartman  <hartmans@mit.edu>

	* spnego-asn1.h: New file.

2002-11-05  Tom Yu  <tlyu@mit.edu>

	* k5-int.h (DEFAULT_PWD_STRING1, DEFAULT_PWD_STRING2): Remove
	trailing colon, as new implementation of krb5_read_password()
	appends it.

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

	* k5-int.h (krb5_ser_handle): Now points to const.
	(krb5_kt_dfl_ops): Now const.
	(struct _krb5_kt_ops): Field serializer now points to const
	krb5_ser_entry instead of void.
	* krb5.hin (struct _krb5_kt): Field ops now points to const.

2002-10-30  Ken Hornstein  <kenh@cmf.nrl.navy.mil>

	* krb5.hin: Change definitions of new SAM preauth types to
	match kerberos-clarifications.

2002-10-24  Ken Hornstein  <kenh@cmf.nrl.navy.mil>

	* k5-int.h, krb5.hin: Add new protocols, definitions, and
	data structures for new hardware preauthentication protocol.

2002-10-23  Ken Hornstein  <kenh@cmf.nrl.navy.mil>

	* krb5.hin: Add new LRQ type for password expiration
	(from krb-clarifications)

2002-10-07  Sam Hartman  <hartmans@mit.edu>

	* Makefile.in : Add install-headers support

2002-09-26  Tom Yu  <tlyu@mit.edu>

	* socket-utils.h (sa2sin, sa2sin6): Add redundant cast to (void *)
	to get GCC to shut up about alignment increasing.

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

	* port-sockets.h: Include sys/filio.h if available.

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

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

	* cm.h: New file.

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

	* Makefile.in (maybe-make-db.h-sys, maybe-make-db.h-k5): New
	targets, doing nothing.
	(maybe-make-db.h-redirect): New target, creates db.h using
	@DB_HEADER@.
	(all-unix): Depend on maybe-make-db.h-@DB_HEADER_VERSION@.

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

	* fake-addrinfo.h (gaiptr, faiptr, gniptr): Delete duplicate
	declarations.

	* foreachaddr.c: Include errno.h instead of declaring errno.

2002-09-03  Ezra Peisach  <epeisach@bu.edu>

	* configure.in: Use AH_TEMPLATE to put undefined definition of
	HAVE_STRUCT_SOCKADDR_STORAGE in krb5/autoconf.h - allowing for
	acconfig.h to be removed.

	* Makefile.in (autoconf.stmp): No longer depend on
	$(SRCTOP)/acconfig.h.

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-21  Ken Raeburn  <raeburn@mit.edu>

	* port-sockets.h (SG_BUF): New macro.

	* k5-int.h (krb5int_sendto_udp, krb5int_sendto_tcp): Declarations
	deleted.
	(krb5int_sendto, krb5int_grow_addrlist): New decls.

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

	* k5-int.h (struct _krb5_context): Add new member udp_pref_limit.

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

	* Makefile.in (install): Don't install port-sockets.h.

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

	* krb5.hin: Put # for cpp directives in first column.

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

	* k5-int.h: Always include socket support headers; don't check
	NEED_SOCKETS.
	(krb5int_sendto_udp): Update prototype.
	(struct _krb5int_access): Update sendto_udp field declaracion to
	match krb5int_sendto_udp.

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

	* port-sockets.h (SOCKET_WRITEV) [!_WIN32]: Use TMP after setting
	it, to silence compiler warnings.

	* configure.in: Rewrite gethostbyname_r and getservbyname_r tests
	to properly disable the use of these functions if the argument
	types cannot be determined.

	* fake-addrinfo.h [NEED_FAKE_GETADDRINFO]: Include string.h.
	(fake_getnameinfo): Cast GET_HOST_BY_ADDR address pointer argument
	to char * as required by gethostbyaddr prototype.
	(HAVE_GETADDRINFO, HAVE_GETNAMEINFO): If defining, define them to
	1.

2002-06-26  Ezra Peisach  <epeisach@bu.edu>

	* configure.in: Modify test for in6addr_any definition in C
	library. Original test was stripped out by optimizing gcc
	compiler.

2002-06-25  Ken Raeburn  <raeburn@mit.edu>

	* fake-addrinfo.h (GET_SERV_BY_PORT) [HAVE_GETSERVBYNAME_R &&
	!GETSERVBYNAME_R_RETURNS_INT]: Fix getservbyport_r calling
	sequence, based on IRIX man pages.
	(getaddrinfo) [WRAP_GETADDRINFO]: Handle case where gethostbyname
	fails because host has no IPv4 addresses.  Don't return a success
	indication without replacing the old ai_canonname value if it
	wasn't null.

	* socket-utils.h (ss2sin6): Enable compilation of inline function
	version.

	* configure.in: Check for seteuid, setresuid, setreuid, setegid,
	setresgid and setregid.
	* k5-util.h: Include sys/types.h, unistd.h, and stdlib.h if
	available; include krb5/autoconf.h and errno.h always.
	(krb5_seteuid, krb5_setegid): Replace function declarations with
	macro definitions.
	(krb5_setedid): Delete declaration of non-existent function.
	(krb5_compat_recvauth, krb5_compat_recvauth_version): Declarations
	deleted.

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

	* port-sockets.h (win_socket_initialize): Delete declaration,
	since it's not mentioned elsewhere in the tree.

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

	* krb5.hin: Fix up yet more CALLCONV botches from last merge.

2002-06-21  Ezra Peisach  <epeisach@bu.edu>

	* fake-addrinfo.h: If IPv6 support is compiled in, but the OS does
	not provide in6addr_any in libc, provide a static copy.

	* configure.in: If IPv6 support is compiled in, test for existence
	of in6addr_any in libc.

2002-06-21  Ken Raeburn  <raeburn@mit.edu>

	* port-sockets.h [!_WIN32 && !HAVE_MACSOCK_H]: Include
	krb5/autoconf.h, to get HAVE_SYS_UIO_H.

2002-06-20  Ken Raeburn  <raeburn@mit.edu>

	* configure.in: Check for sys/uio.h.
	* port-sockets.h [!_WIN32 && !HAVE_MACSOCK_H]: Include sys/uio.h
	if available, to get struct iovec.

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

	* port-sockets.h (sg_buf): New typedef name for OS-specific
	scatter-gather buffer handle type.
	(SG_ADVANCE, SG_LEN, SG_SET): New macros to manipulate sg_buf.
	(SOCKET_WRITEV, SOCKET_WRITEV_TEMP): New macros for sending on
	socket with gathered input.
	(SHUTDOWN_READ, SHUTDOWN_WRITE, SHUTDOWN_BOTH): New macros, to be
	passed to shutdown() to indicate direction.
	(EINPROGRESS, EWOULDBLOCK, ECONNRESET, ECONNABORTED,
	ECONNREFUSED, EHOSTUNREACH, ETIMEDOUT) [_WIN32]: Define as WSA
	equivalents if not already defined.

2002-06-15  Ken Raeburn  <raeburn@mit.edu>

	* krb5.hin: Delete inclusion of profile.h again.

2002-06-15  Alexandra Ellwood <lxs@mit.edu>

	* krb5.hin: Conditionalize KRB5_CALLCONV_WRONG separately
	because gssapi.h defines KRB5_CALLCONV but doesn't need
	KRB5_CALLCONV_WRONG
	[pullup from 1-2-2-branch]

2002-06-15  Danilo Almeida  <dalmeida@mit.edu>

	* krb5.hin: Rename krb5_kt_free_entry_contents as
	krb5_free_keytab_entry_contents to make it consistent with rest of
	API.  Add KRB5_CALLCONV_WRONG.  Fix up various calling
	conventions.  For Win32, add KT an CC accessors and default to not
	PRIVATE.

	* krb5.hin: Make krb5_build_principal_va() KRB5_CALLCONV.

	[pullups from 1-2-2-branch]

2002-06-15  Alexandra Ellwood <lxs@mit.edu>

	* krb5.hin: Conditionalized pragmas for Metrowerks

	* krb5.hin: Updated Mac OS X headers to new framework layout

	[pullups from 1-2-2-branch]

2002-06-15  Miro Jurisic  <meeroh@mit.edu>

	* krb5.hin: Updated Mac OS #defines
	and #includes for new header layout and Mac OS X frameworks

	[pullups from 1-2-2-branch]

2002-06-14  Alexandra Ellwood <lxs@mit.edu>

	* k5-int.h: Added krb5_kt_dfl_ops for KRB5_KEYTAB_ACCESSOR_FUNCTIONS

	* k5-int.h: Removed conditionals now defined in prefix files
	and updated header paths

	[pullups from 1-2-2-branch]

2002-06-14  Miro Jurisic  <meeroh@mit.edu>

	* k5-int.h: Rearranged the #ifdef macintosh section to
	work on Mac OS 9 and X

	* k5-int.h: Updated Mac OS #defines
	and #includes for new header layout and Mac OS X frameworks

	[pullups from 1-2-2-branch]

2002-06-14  Tom Yu  <tlyu@mit.edu>

	* krb5.hin: Fix BEGIN_DECLS conditional.

2002-06-14  Danilo Almeida  <dalmeida@mit.edu>

	* win-mac.h: Since this file is now only Win32, remove non-Win32
	stuff to make it easier to read.  Never used __declspec(dllexport)
	so that we do not accidentally export symbols.

	* win-mac.h: Add KRB5_CALLCONV_WRONG.

	[pullups from 1-2-2-branch]

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

	* bsdlib.h, bstring.h, fake-stdlib.h: Deleted.

	* sys/syslog.h: Deleted.

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

	* k5-int.h (KRB_AP_PATH_NOT_ACCEPTED, KRB_ERR_RESPONSE_TOO_BIG):
	New error number macros.
	(krb5int_sendto_kdc): Update for new argument.
	(krb5int_sendto_tcp): Declare.

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

	* k5-int.h (krb5int_sendto_udp): Declare.
	(krb5_sendto_kdc): Update declaration.
	(KRB5INT_ACCESS_STRUCT_VERSION): Bump.
	(struct _krb5int_access): Update locate_kdc interface; add
	sendto_udp.

	* fake-addrinfo.h [COPY_FIRST_CANONNAME]: Include string.h.

	* k5-int.h (struct addrlist): Field "addrs" now points to
	addrinfo instead of sockaddr.

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

	* socket-utils.h (socklen) [! HAVE_SA_LEN]: Return a socklen_t
	instead of size_t.

	* configure.in: Check return type for getservbyname_r just as for
	gethostbyname_r.
	* fake-addrinfo.h (GET_HOST_BY_NAME): Use plain gethostbyname if
	THREADSAFE_GETHOSTBYNAME is defined, even if _r versions are
	available.
	(GET_HOST_BY_ADDR) [GETHOSTBYNAME_R_RETURNS_INT]: Add missing
	variable declaration.
	(GET_SERV_BY_NAME, GET_SERV_BY_PORT): New macros, in three
	flavors, parallel to GET_HOST macros; not used yet.
	(getaddrinfo, getnameinfo, gai_strerror, freeaddrinfo)
	[S_SPLINT_S]: Add Splint annotations.
	(getaddrinfo, getnameinfo): Buffer sizes are supposed to be
	socklen_t, not size_t.
	(freeaddrinfo) [COPY_FIRST_CANONNAME]: Handle null pointer
	argument.
	(getaddrinfo) [COPY_FIRST_CANONNAME]: Always do the copying if the
	ai_canonname is non-null, regardless of the supplied flags.

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

	Reduce build-time per-system dependencies and krb5.h namespace
	intrusions:
	* krb5.hin: Don't include profile.h.  Do include limits.h.
	(krb5_int16, krb5_ui_2, krb5_int32, krb5_ui_4): Conditionalize on
	the values of INT_MAX, LONG_MAX and SHRT_MAX.
	(VALID_INT_BITS, VALID_UINT_BITS, SALT_TYPE_AFS_LENGTH,
	SALT_TYPE_NO_LENGTH): Define in terms of INT_MAX and UINT_MAX.
	(struct _profile_t): Declare forward.
	(krb5_get_profile): Use struct _profile_t instead of profile_t in
	declaration.
	(krb5_ui_1): Delete.
	* Makefile.in (krb5.h): Don't put SIZEOF macros into output.

2001-04-26  Ken Raeburn  <raeburn@mit.edu>

	* sys/syslog.h (syslog, vsyslog, openlog, closelog, setlogmask):
	Always use prototype versions of declarations; delete
	non-prototype declarations.

2002-04-25  Ken Raeburn  <raeburn@mit.edu>

	* fake-addrinfo.h (GET_HOST_BY_NAME, GET_HOST_BY_ADDR)
	[GETHOSTBYNAME_R_RETURNS_INT]: Fix backwards test of return
	value.

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

	* configure.in: If the return type for gethostbyname_r can't be
	determined, just pretend it's not avaliable.

	* fake-addrinfo.h (getaddrinfo) [_AIX]: Declare and initialize
	variable "ai".

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

	* configure.in: Check for gethostbyname_r, gethostbyaddr_r,
	getservbyname_r and getservbyport_r.  Figure out the return type
	of gethostbyname_r.
	* fake-addrinfo.h (GET_HOST_BY_NAME, GET_HOST_BY_ADDR): New
	macros.
	(fai_add_hosts_by_name, fake_getnameinfo, getaddrinfo): Use them.
	(fake_getaddrinfo): Use getservbyname_r if available.
	(fake_getnameinfo): Never call inet_ntoa; in open-coded form,
	initialize local pointer variable after label.  Use
	getservbyport_r if available.
	(gaiptr, faiptr, gniptr): Pointer variables are now const.

2002-04-10  Danilo Almeida  <dalmeida@mit.edu>

	* port-sockets.h: Use Winsock 2 headers for Win32.
	* fake-addrinfo.h: Define HAVE_GETADDRINFO for Win32.

2002-04-05  Ken Raeburn  <raeburn@mit.edu>

	* krb5.hin (krb5_c_valid_enctype, krb5_c_valid_cksumtype,
	krb5_c_is_coll_proof_cksum, krb5_c_is_keyed_cksum): Declare.

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

	* krb5.hin: Default to KRB5_DEPRECATED=1, allowing compiler
	command line to override.  Hide some struct definitions.  Use
	KRB5INT_BEGIN_DECLS and KRB5INT_END_DECLS to deal with C++
	function declarations.

2002-04-01  Tom Yu  <tlyu@mit.edu>

	* krb5.hin: Move a whole bunch of stuff under KRB5_DEPRECATED or
	KRB5_PRIVATE as a first pass for cleaning up the API.

2002-03-28  Sam Hartman  <hartmans@mit.edu>

	* krb5.hin: krb5_init_keyblock new function.

2002-03-28  Ken Raeburn  <raeburn@mit.edu>

	* k5-int.h: Include errno.h.
	* krb5.hin: Don't include errno.h.

	* fake-addrinfo.h (getaddrinfo) [__linux__]: Don't crash if hint
	is a null pointer.

2002-03-27  Ken Raeburn  <raeburn@mit.edu>

	* fake-addrinfo.h [NEED_FAKE_GETADDRINFO]: Include errno.h.
	(fake_getnameinfo) [__GNUC__ && __mips__]: Use const when
	referencing bytes of supplied address.

	* krb5.hin: Don't include <sys/types.h> any more.
	* Makefile.in (krb5.h): Don't put HAVE_STDARG_H or HAVE_SYS_TYPE_H
	symbols into output.

2002-03-26  Ken Raeburn  <raeburn@mit.edu>

	* fake-addrinfo.h: Incorporate all of fake-addrinfo.c.  Make all
	defined functions static, and inline if gcc is used.  Drop
	FAI_PREFIX renaming hacks.  Fix some bugs in the separation of
	getnameinfo from getaddrinfo/freeaddrinfo for wrapping purposes.
	(fake_getnameinfo) [__GNUC__ && __mips__]: Don't call inet_ntoa,
	struct passing doesn't work.  Format the output string locally.
	* fake-addrinfo.c: Delete.

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

	* fake-addrinfo.c (fixup_addrinfo): Deleted.
	(fake_getaddrinfo, fake_getnameinfo, fake_freeaddrinfo): Renamed
	from non-"fake_" versions, and made static.  Compile if
	NEED_FAKE_GETADDRINFO is defined.
	(fake_getnameinfo): Truncate results if provided buffers are too
	small.
	(getaddrinfo, getnameinfo, freeaddrinfo) [HAVE_FAKE_GETADDRINFO]:
	New functions, simple wrappers around the "fake_" versions.
	(getaddrinfo, freeaddrinfo) [WRAP_GETADDRINFO]: New functions
	which call the system versions via function pointers and then fix
	up some known problems in the returned data.
	(getnameinfo) [WRAP_GETNAMEINFO]: Likewise.
	(gaiptr, faiptr, gniptr) [WRAP_GETADDRINFO || WRAP_GETNAMEINFO]:
	New static variables, initialized with addresses of system
	versions of getaddrinfo, etc.
	* fake-addrinfo.h (fixup_addrinfo): Declaration deleted.
	(WRAP_GETADDRINFO): New macro, defined on Linux and AIX.
	(getaddrinfo, getnameinfo, freeaddrinfo): Define as macros, and
	declare functions, if WRAP_GETADDRINFO is defined or
	HAVE_GETADDRINFO is not defined; drop BROKEN_GETADDRINFO check.
	(gai_strerror, addrinfo, EAI_*): Define macros and declare
	functions only if HAVE_GETADDRINFO isn't defined.

2002-03-06  Ken Raeburn  <raeburn@mit.edu>

	* krb5.hin (krb5_const): Restore macro definition, but include a
	warning that it'll go away soon.

2002-03-05  Ken Raeburn  <raeburn@mit.edu>

	* foreachaddr.c (SLOP): New macro.
	(foreach_localaddr): Use it as the amount of extra space we look
	for past the ifreq structures actually filled in.  Add SLOP to the
	size of the buffer allocated to hold the ifreq structures.  Place
	an upper bound on the buffer size.  Don't crash if the returned
	ifc_len is larger than the supplied buffer size.

2002-02-22  Ken Raeburn  <raeburn@mit.edu>

	* krb5.hin, k5-int.h: Use const instead of krb5_const.
	* krb5.hin (krb5_const): Deleted definition.

2002-02-20  Ken Raeburn  <raeburn@mit.edu>

	* foreachaddr.c: New file, contents taken from code shared between
	kdc/network.c and lib/krb5/os/localaddr.c.  Split out multiple
	branches within foreach_localaddr into separate functions.  Fixed
	a couple minor compiler warnings on Linux.

2002-02-19  Ken Raeburn  <raeburn@mit.edu>

	* fake-addrinfo.c (_XOPEN_SOURCE_EXTENDED): Define if not defined,
	and if not Mac or Windows, for duration of inclusion of netdb.h.
	This gets us the h_errno declaration on HP-UX.
	(getnameinfo): Cast gethostbyaddr pointer arg to char *, not
	sockaddr *.

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

	* fake-addrinfo.h: Always check for FAI_PREFIX, not just when fake
	getaddrinfo support is needed.
	(fixup_addrinfo): Declare.
	* fake-addrinfo.c (fixup_addrinfo): New function, fixes up
	breakage in AIX and GNU implementations (so far) of getaddrinfo.

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

	* socket-utils.h (ss2sin6) [__GNUC__]: Define inline function only
	if IPv6 support is turned on.

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

	* k5-int.h (krb5int_des_init_state): Change variable name in
	prototype away from usage.

2001-11-18  Sam Hartman  <hartmans@mit.edu>

	* krb5.hin: Add krb5_set_default_tgs_enctypes

2001-11-15  Sam Hartman  <hartmans@mit.edu>

	* krb5.hin:  Add krb5_c_random_add_entropy and
	krb5_c_random_os_entropy 

2001-11-14  Sam Hartman  <hartmans@mit.edu>

	* krb5.hin: Added definitions of random sources 

2001-11-06  Sam Hartman  <hartmans@tir-na-nogth.mit.edu>

	* k5-int.h: Add krb5int_des_init_state and krb5int_default_free_state

2001-11-06  Sam Hartman  <hartmans@mit.edu>

	* k5-int.h: Add init_state and free_state to enc_provider struct

2001-11-05  Sam Hartman  <hartmans@mit.edu>

	* krb5.hin:  Add krb5_c_init_state and krb5_c_free_state

2001-10-30  Ezra Peisach  <epeisach@mit.edu>

	* fake-addrinfo.c (freeaddrinfo): Do not free NULL pointers.

2001-10-26  Ezra Peisach  <epeisach@mit.edu>

	* k5-int.h: Do not use "usage" in argument names in
	krb5_keyhash_provider functions.

2001-10-24  Sam Hartman  <hartmans@mit.edu>

	* k5-int.h: Add  declaration for  arcfour enc_provider and  md5
	hash_provider  so we can get to these indirectly from libgssapi.
	Ick.  This is an evil hack but somewhat less evil than  having raw
	enctypes. 
	Add above to krb5int_access along with krb5_hmac function

2001-10-24  Ezra Peisach  <epeisach@mit.edu>

	* configure.in: Use of AC_DEFINE modified to include third
	argument - the comment for the generated header file so that
	acconfig.h can be cleaned up.

2001-10-23  Sam Hartman  <hartmans@mit.edu>

	* krb5.hin: Add rc4-hmac, rc4-hmac-exp enctypes,  hmac-md5-rc4
	cksumtype 

2001-10-22  Sam Hartman  <hartmans@mit.edu>

	* k5-int.h: keyhash_provider gains usage argument to hash function

2001-10-15  Danilo Almeida  <dalmeida@mit.edu>

	* krb5.hin (krb5_kt_get_type): KRB5_CALLCONV.

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

	* k5-int.h (struct _krb5_kt_ops, krb5_kt_ops, krb5_kt_dfl_ops):
	Definitions and declarations moved here...
	* krb5.hin: ...from here.
	(krb5_kt_get_type, krb5_kt_get_name, krb5_kt_close,
	krb5_kt_get_entry, krb5_kt_start_seq_get, krb5_kt_next_entry,
	krb5_kt_end_seq_get): Replaced macro definitions with declarations
	for functions now in lib/krb5/keytab/ktfns.c.

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

	* fake-stdlib.h: Make prototypes unconditional.
	(P): Don't define.
	* krb5.hin (KRB5_PROTOTYPE): Don't define.
	* krb54proto.h: Make prototypes unconditional.

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

	* k5-int.h (KRB5_EXPORTVAR): Don't define.
	* krb5.hin (KRB5_EXPORTVAR): Don't define.
	* win-mac.h (KRB5_EXPORTVAR): Don't define.

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

	* k5-int.h, krb5.hin, win-mac.h: Don't use or define KRB5_DLLIMP,
	GSS_DLLIMP.  Drop MSDOS, NEAR, FAR support.
	* krb54proto.h: Don't explicitly declare pointers FAR any more.
	* port-sockets.h: Delete _MSDOS support.

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

	* Makefile.in (all-unix): Depend directly on kerberosIV/krb_err.h
	instead of on krb_err.h.
	(krb_err.h): Target and rule deleted.
	(clean-unix): Don't delete krb_err.h.

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

	* krb5.hin (TKT_FLG_TRANSIT_POLICY_CHECKED,
	TKT_FLG_OK_AS_DELEGATE, TKT_FLG_ANONYMOUS): New macros.
	(KDC_OPT_REQUEST_ANONYMOUS, KDC_OPT_DISABLE_TRANSITED_CHECK):
	Likewise.
	(krb5_check_transited_list): Pointed-to krb5_data structures are
	now all const.

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

	* fake-addrinfo.h: Include socket-utils.h.

2001-08-31  Ken Raeburn  <raeburn@mit.edu>

	* fake-addrinfo.c: Test only HAVE_FAKE_GETADDRINFO.
	* fake-addrinfo.h: Define it, when remapping symbols.

	* socket-utils.h (struct krb5int_sockaddr_storage,
	sockaddr_storage): Conditionalize on HAVE_STRUCT_SOCKADDR_STORAGE
	instead of KRB5_USE_INET6.

2001-08-30  Ken Raeburn  <raeburn@mit.edu>

	* socket-utils.h (struct krb5int_sockaddr_storage): Add some extra
	space.

	* Makefile.in ($(srcdir)/krb5/autoconf.stmp): Since autoheader
	doesn't change the target file if the contents wouldn't be
	altered, touch an auxiliary timestamp file to avoid re-running
	autoheader all the time.
	(rebuild-error-tables): New intermediate target, avoids running
	make in error_tables directory once for each generated header file
	we care about.

	* fake-addrinfo.c (getnameinfo): Cast address argument to
	gethostbyaddr.

	* fake-addrinfo.h (AI_V4MAPPED, AI_ADDRCONFIG, AI_ALL,
	AI_DEFAULT): Define as bogus values, since they're part of
	getipnodeby* API, not getaddrinfo API.

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

	* socket-utils.h: New file.
	* k5-int.h: Include it.
	(socklen_t, struct krb5int_sockaddr_storage, sa2sin, sa2sin6,
	ss2sa, ss2sin, ss2sin6, socklen): Definitions moved to
	socket-utils.h.
	(krb5int_get_fq_local_hostname, krb5int_translate_gai_error): New
	decls.

	* fake-addrinfo.c: New file, split off from fake-addrinfo.h.
	* fake-addrinfo.h: Don't define implementation functions.
	(FAI_DEFINED): New macro, used to protect against multiple
	inclusions.

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

	* k5-int.h (ss2sin6): New gcc-specific function and alternative
	macro.
	(krb5_crypt_func, krb5_encrypt_helper): Don't use "usage" in
	argument names.

2001-08-01  Ken Raeburn  <raeburn@mit.edu>

	* fake-addrinfo.h (AI_NUMERICHOST): Define as zero if not already
	defined.

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

	* krb5.hin (krb5_check_transited_list): Pointer args now point to
	const.

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

	* fake-addrinfo.h: Include port-sockets.h instead of system header
	files; should fix Windows build.

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

	* fake-addrinfo.h (translate_h_errno): Supply a default value in
	case some unrecognized code is returned.
	(HAVE_GETNAMEINFO): Undefine before defining, just in case.

	* krb5.hin (krb5_os_hostaddr): Declaration moved...
	* k5-int.h (krb5_os_hostaddr): ...to here.

	* fake-addrinfo.h: New file.

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

	* krb5.hin: Do not use "random_key" as argument name. When krb.h
	included, it gets redefined. Do not use "options" either.

	* k5-int.h (krb5_get_init_creds): Do not use "options" as argument
	name.

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

	* krb5.hin: Move prototypes for krb5_net_read() and
	krb5_net_write() here.
	* k5-int.h: From here.

2001-06-19  Ken Raeburn  <raeburn@mit.edu>

	* k5-int.h (struct addrlist): New type.
	(ADDRLIST_INIT): New macro.
	(krb5int_free_addrlist): Declare.
	(krb5int_locate_server): Update declaration.
	(KRB5INT_ACCESS_STRUCT_VERSION): Update to 3.
	(struct _krb5int_access): Change locale_server prototype.  Add
	free_addrlist function pointer field.

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

	* k5-util.h: Add prototypes for krb5_compat_recvauth_version() and
	krb5_compat_recvauth().

	* krb5.hin: Move krb5_read_message() and krb5_write_message()
	prototypes here.
	k5-int.h: From here.

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

	* krb5.hin: Get rid of extraneous krb5_const before integer
	arguments in prototypes for valid_enctype(), valid_cksumtype(),
	is_coll_proof_cksum(), is_keyed_cksum(), krb5_encrypt_size(),
	krb5_checksum_size(), krb5_verify_checksum() so they match the
	existing code.

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

	* k5-int.h: Remove AS_REP_105_SAM_COMPAT definition. Not used in
	tree.  Remove SYSV redefinition of random() to rand() and
	srandom() to srand(). Two locations in tree that might matter
	already handled in configure. Unicos redefinition of utimes() to
	utime() removed - appl/bsd has its own implementation.

2001-06-06  Ken Raeburn  <raeburn@mit.edu>

	* Makefile.in ($(srcdir)/krb5/autoconf.h.in): New target; rebuild
	using autoheader.

2001-04-26  Ken Raeburn  <raeburn@mit.edu>

	* k5-int.h (krb5int_locate_server): New prototype.
	(krb5_locate_srv_conf, krb5_locate_srv_dns): Deleted.
	(KRB5INT_ACCESS_STRUCT_VERSION): Update to 2.
	(struct _krb5int_access): Update signature for locate_kdc, add
	pointer for locate_server.
	(struct krb5int_sockaddr_storage) [!KRB5_USE_INET6]: Declare dummy
	type with space and alignment for an IPv4 address.
	(sockaddr_storage) [!KRB5_USE_INET6]: Define to
	krb5int_sockaddr_storage, so "struct sockaddr_storage" will do
	something reasonable even without IPv6 support.
	(sa2sin, sa2sin6, ss2sa, ss2sin): Define as macros or inline
	functions, for safety in type conversion.

	* win-mac.h (HAS_ANSI_VOLATILE, KRB5_PROVIDE_PROTOTYPES): Don't
	define.

	* configure.in: Don't use KRB5_CHECK_PROTOS.  Don't check for use
	of prototypes inside structures.

	* syslog.h (syslog, vsyslog, openlog, closelog, setlogmask):
	Always use prototype versions of declarations; delete
	non-prototype declarations.

2001-04-25  Ken Raeburn  <raeburn@mit.edu>

	* k5-int.h (socklen_t) [NEED_SOCKETS] [!HAVE_SOCKLEN_T]: Define as
	typedef for size_t.
	(socklen) [NEED_SOCKETS]: Define macro if not already defined.
	* configure.in: Don't check for support for type "void".  Move
	socklen_t test here from krb5 library.

2001-04-13  Ken Raeburn  <raeburn@mit.edu>

	* Makefile.in (adm_err.h, asn1_err.h, krb5_err.h, kv5m_err.h):
	Depend on corresponding error tables.  Run "make includes" in krb5
	library code to rebuild instead of invoking awk here.
	(all-unix): Depend on krb_err.h.
	(krb_err.h): Depend on kerberosIV/krb_err.h; copy that file.
	(kerberosIV/krb_err.h): Depend on all-recurse.
	(clean-unix): Delete krb_err.h.

	* k5-int.h: Always include stdlib.h and string.h; don't bother
	testing the HAVE_ macros.

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

	* krb5.hin: Add prototypes for krb5_auth_con_setpermetypes() and
 	krb5_auth_con_getpermetypes().

2001-01-19  Ken Raeburn  <raeburn@mit.edu>

	* krb5.hin (KRB5_NPROTOTYPE): Delete.

	* k5-int.h, krb5.hin: Use prototypes unconditionally.

	* krb5.hin (krb5_const, krb5_pointer, krb5_const_pointer): Always
	define as ANSI versions.

	* krb5.hin (struct _krb5_safe, struct _krb5_priv, struct
	_krb5_priv_enc_part, krb5_free_safe, krb5_free_priv,
	krb5_free_priv_enc_part, struct krb5_rc_st, struct _krb5_rc_ops,
	krb5_rc_register_type, krb5_rc_dfl_ops): Move from here...
	* k5-int.h: ...to here.

	* krb5.hin (krb5_rc_initialize, krb5_rc_recover, krb5_rc_destroy,
	krb5_rc_close, krb5_rc_close, krb5_rc_store, krb5_rc_expunge,
	krb5_rc_get_lifespan, krb5_rc_get_name, krb5_rc_resolve): Replace
	macros with function decls.

2000-11-01  Ezra Peisach  <epeisach@mit.edu>

	* configure.in: Use AC_C_CONST instead of AC_CONST and
	AC_CHECK_HEADER instead of AC_HEADER_CHECK.

2000-10-17  Ezra Peisach  <epeisach@mit.edu>

	* k5-int.h: krb5_alt_method, krb5_etype_info_entry length fields
	changed to unsigned int. KRB5_ETYPE_NO_LENGTH defined.  Change
	prototype decode_krb5_sam_key to decode_krb5_enc_sam_key which is
	what the code says.
	krb5int_access - change timeouts, shifts, etc to unsigned ints. 

	* krb5.hin: krb5_data, krb5_address, krb5_keyblock, krb5_checksum,
	krb5_authdata, and krb5_pa_data length fields changed to unsigned
	int. krb5_kt_get_name(), krb5_unparse_name_ext(),
	krb5_build_principal(), krb5_build_principal_ext(),
	krb5_build_principal_va() and krb5_read_password() all take or
	return unsigned int lengths.

	* port-sockets.h (SOCKET): Under unix, a socket is of type int.

2000-10-03  Ezra Peisach  <epeisach@mit.edu>

	* krb5.hin, k5-int.h: krb5_cc_get_name now returns const char *.

Tue Sep 26 18:10:22 2000  Ezra Peisach  <epeisach@mit.edu>

	* krb5.hin: Move prototype for krb5_gen_replay_name()

	* k5-int.h: from here.

2000-09-22  Ezra Peisach  <epeisach@mit.edu>

	* k5-util.h (krb5_setedid): Add prototype.

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

	* krb5.hin: lr_type element of krb5_last_req_entry needs to be a
	signed int instead of an unsigned char.

2000-07-20  Danilo Almeida  <dalmeida@mit.edu>

	* krb5.hin: Fix calling convention for krb5_cc_get_type.

2000-07-19  Danilo Almeida  <dalmeida@mit.edu>

	* k5-int.h: Add krb5int_accessor() and related definitions.
	krb5int_accessor should be used by any code that is trying to use
	krb5 internal functions (such as krb524 and GSSAPI).  The goal is
	to eventually make this function do nothing.  That will only be
	accomplished when we fix our apps/libraries not to call internal
	functions.

2000-07-18  Ezra Peisach  <epeisach@mit.edu>

	* k5-int.h: Move prototypes for krb5 only internal functions
	krb5_libdefault_boolean, _krb5_use_dns_realm, _krb5_use_dns_kdc,
	_krb5_conf_boolean to the header files in the lib/krb5/{os,krb}
	directories.

2000-07-14  Ken Raeburn  <raeburn@mit.edu>

	* krb5.hin (krb5_cc_*): Replace macro definitions with function
	declarations.
	(struct _krb5_ccache, struct _krb5_cc_ops): Declare
	only; move structure definitions...
	* k5-int.h: To here.

2000-07-03  Ezra Peisach  <epeisach@mit.edu>

	* k5-int.h: Add prototypes for krb5_libdefault_boolean,
	_krb5_use_dns_realm, _krb5_use_dns_kdc, _krb5_conf_boolean.

2000-06-23  Danilo Almeida  <dalmeida@mit.edu>

	* krb5.hin (krb5_get_tgs_ktypes, krb5_free_ktypes): Fix linkage to
	be KRB5_CALLCONV.

	* k5-int.h (krb5int_cc_default): Fix linkage to be consistent with
	code.  (Note: We should dump KRB5_DLLIMP.)

2000-06-23  Ken Raeburn  <raeburn@mit.edu>

	* krb5.hin (krb5_recvauth_version, krb5_free_ktypes): Declare.

2000-06-05      Jeffrey Altman          <jaltman@columbia.edu>

        * krb5-int.h: Fix the prototype for krb5int_cc_default so that it builds
          on Windows.

2000-5-19	Alexandra Ellwood <lxs@mit.edu>

	* krb5-int.h: Added krb5int_cc_default.  This function supports the 
	Kerberos Login Library and pops up a dialog if the cache does not
	contain valid tickets.  This is used to automatically get a tgt before
	obtaining service tickets.  Note that this should be an internal function
	because callers don't expect krb5_cc_default to pop up a dialog!
	(We found this out the hard way :-)

2000-05-15      Jeffrey Altman          <jaltman@columbia.edu>

        * krb5.hin
          Added prototypes for new public functions

               krb5_appdefault_string
               krb5_appdefault_boolean

2000-4-13	Alexandra Ellwood <lxs@mit.edu>

	* krb5-int.h: Added support to store a krb5_principal in the os_context 
	along with the default ccache name (if known, this principal is the same 
	as the last time we looked at the ccache.
	* win-mac.h: Set up the macintosh build to use KerberosLogin.

2000-03-25  Miro Jurisic  <meeroh@mit.edu>

	* k5-int.h: Fixed protos for krb5_locate_srv_* (naddrs is int*)

2000-03-20  Miro Jurisic  <meeroh@mit.edu>

	* krb5.hin: Add krb5_free_default_realm

2000-03-15  Danilo Almeida  <dalmeida@mit.edu>

	* krb5.hin: Add krb5_get_prompt_types() and related defs..
	* k5-int.h: Add krb5int_set_prompt_types().

2000-03-13  Tom Yu  <tlyu@mit.edu>

	* k5-int.h: Update prototype to sync with changes in preauth2.c.

2000-02-06  Ken Raeburn  <raeburn@mit.edu>

	Patches from Frank Cusack for hw preauth.
	* k5-int.h (krb5_predicted_sam_response): Add timestamp, client
	principal, flags, and per-mechanism data fields.
	(krb5_enc_sam_response_enc): Change "passcode" field to "sad".

2000-02-01  Danilo Almeida  <dalmeida@mit.edu>

	* krb5.hin (krb5_decode_ticket): Declare.

2000-01-26  Ken Raeburn  <raeburn@mit.edu>

	* k5-int.h [!NEED_SOCKETS]: Declare (but do not define) struct
	sockaddr if SOCK_DGRAM hasn't been defined yet.
	(krb5_locate_srv_conf, krb5_locate_srv_dns): Declare.
	(struct krb5_keytypes, struct krb5_cksumtypes): enc, hash, and
	keyhash provider structures pointed to are now const.

1999-11-23  Ken Raeburn  <raeburn@mit.edu>

	* krb5.hin (krb5_secure_config_files): Delete declaration.
	(krb5_init_secure_context): Declare.

1999-11-02  Ken Raeburn  <raeburn@raeburn.org>

	* configure.in: Invoke KRB5_AC_INET6.  Delete most of the 10-17
	changes except for inet_ntoa/aton, since they're in KRB5_AC_INET6
	now.

1999-10-17  Ken Raeburn  <raeburn@raeburn.org>

	* configure.in: Check for inet_{ntop,pton,ntoa,aton},
	getipnodeby{name,addr}, get{name,addr}info.

	* krb5.hin (ADDRTYPE_INET6): Define.

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

	* Makefile.in (install): Install port-sockets.h, needed by
	kerberosIV/krb.h.

1999-09-13  Miro Jurisic <meeroh@mit.edu>

    * win-mac.h:  Remove #define HAVE_STRING_H for MacOS builds (it's already
    in autoconf.h and I am a moron)

1999-09-13  Miro Jurisic <meeroh@mit.edu>

    * win0mac.h:  Add #define HAVE_STRING_H for MacOS builds.

1999-08-31  Jeffrey Altman <jaltman@columbia.edu>

    * k5-int.h:  Add #define ANSI_STDIO for Windows builds so that 
                 stdio opens files in binary mode instead of text
                 mode.  This is necessary for Ctrl-Z transparency.

1999-08-30  Ken Raeburn  <raeburn@mit.edu>

	* configure.in: Check for memmove and bcopy.

	* Makefile.in (install): Install profile.h since krb5.h will use
	it.

1999-08-26  Danilo Almeida  <dalmeida@mit.edu>

	* krb5.hin (krb5_kuserok): Fix calling convention to make it
	consistent with rest of krb5 exports before we start exporting 
	this from the Windows DLL.

1999-08-25  Danilo Almeida  <dalmeida@mit.edu>

	* k5-int.h (krb5_cc_retrieve_cred_default): Fix calling convention
	to make it consistent with actual calling convention.

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

	* krb5.hin (KRB5_TC_SUPPORTED_KTYPES): New flag.
	* k5-int.h (krb5_cc_retrieve_cred_default): Declare.

1999-08-18  Tom Yu  <tlyu@mit.edu>

	* krb5.hin: Re-align des3-cbc-sha1 and hmac-sha1-des3 to agree
	with new number assignments; also rename symbols a little bit.

1999-08-09  Danilo Almeida  <dalmeida@mit.edu>

	* win-mac.h: Define MAXPATHLEN only if not already defined.  This
	avoids warnings under Windows.

1999-08-04  Danilo Almeida  <dalmeida@mit.edu>

	* k5-int.h: Keep invariant that profile_in_memory member of context
	is only sensible if KRB5_DNS_LOOKUP is defined.

1999-08-03  Ken Raeburn  <raeburn@mit.edu>

	* krb5.hin: Wrap all declarations in `extern "C"' for C++, not
	just some.  Move header file inclusions up above extern-C block.

1997-07-26 Miro Jurisic <meeroh@mit.edu>
	* win-mac.h (size_t): Fixed size_t redefinition on MacOS
	
1997-07-26 Miro Jurisic <meeroh@mit.edu>

        * k5-int.h (krb5_get_profile): added krb5_get_profile. It returns
        a profile handle you can use with the profile layer. It is guaranteed
        to be initialized with the same config files as the profile of the context
        passed in. 

1997-07-22 Jeffrey Altman <jaltman@columbia.edu>

        * k5-int.h struct _krb5_context
                Added profile_in_memory boolean to be used to store
                whether or not krb5 intentionally requested a profile
                to be allocated by the profile library without a real
                file (or list of files) behind it.

1999-07-21  Miro Jurisic  <meeroh@.mit.edu>

	* krb5.hin: #ifdefed out krb5_set_config_files, 
		krb5_get_default_config_files, and krb5_free_confilg_files
		on the Mac

1999-06-16  Danilo Almeida  <dalmeida@mit.edu>

	* krb5.hin (krb5_get_default_config_files, krb5_free_config_files): 
		Add function to get default config files with corresponding 
		free function.

1999-05-26  Miro Jurisic  <meeroh@.mit.edu>

	* k5-int.h: Remove #define ENOMEM under #ifdef macintosh

Wed May 19 11:33:15 1999  Danilo Almeida  <dalmeida@mit.edu>

	* Makefile.in: Remove copying of header files for Win32.  These
		will be copied only if needed by the components that are
		responsible for the header files (gssapi, et, and
		profile).

Tue May 18 19:52:56 1999  Danilo Almeida  <dalmeida@mit.edu>

	* Makefile.in: Remove - from recursive Win32 make invocation.

Mon May 17 12:30:58 1999  Danilo Almeida  <dalmeida@mit.edu>

	* Makefile.in: Add NO_OUTPRE flag to prevent creation of output
		directory under win32.

Tue May 11 15:19:12 1999  Ezra Peisach  <epeisach@mit.edu>

	* krb5.hin: Remove unused priv_size from krb5_encrypt_block

1999-04-09  Theodore Ts'o  <tytso@rsts-11.mit.edu>

	* k5-int.h: Add new prototypes and #define's provided by Frank
		Cusack's preauth patch (PR# [krb5-kdc/662])

1999-04-01  Theodore Ts'o  <tytso@rsts-11.mit.edu>

	* krb5.hin (krb5_prompter_fct, krb5_prompter_posix): Update
		function prototypes to reflect new prompter prototype
		which takes an extra argument for the window titlebar
		name.  (From Frank Cusack) [krb5-kdc/662]

Mon Mar 15 15:57:41 1999  Tom Yu  <tlyu@mit.edu>

	* k5-int.h: Fix GSS_DLLIMP.

1999-03-14  Miro Jurisic  <meeroh@mit.edu>

	* win-mac.h: Fixed GSS_DLLIMP for the Mac

1999-03-11  Theodore Ts'o  <tytso@rsts-11.mit.edu>

	* win-mac.h: Define GSS_DLLIMP to be __declspec(dllimport) or
		__declspec(dllexport)  depending on whether GSS_DLL_FILE
		is defined.

1999-02-19  Theodore Ts'o  <tytso@rsts-11.mit.edu>

	* win-mac.h: Add definition for GSS_DLLIMP which is set ala
		KRB5_DLLIMP, but controlled by the #define GSS_DLL_FILE.

Mon Feb  8 21:51:10 1999  Theodore Y. Ts'o  <tytso@mit.edu>

	* krb5.hin (krb5_get_realm_domain): Add appropriate modifiers so
		that this function can get exported in a Windows DLL.

1999-02-01  Theodore Ts'o  <tytso@rsts-11.mit.edu>

	* k5-int.h: Add an entry to the os_context to store the default
		ccache name.

	* krb5.hin (krb5_cc_set_default_name): Add function prototype
		which sets the defulat ccache name.
	
Thu Jan 21 15:23:28 1999  Theodore Y. Ts'o  <tytso@mit.edu>

	* krb5.hin: Fix realm iterator prototypes so that they use
		KRB5_PROTOTYPE, and surround them with extern "C" so
		things work under C++.

Sun Dec  6 19:45:54 1998  Tom Yu  <tlyu@mit.edu>

	* krb54proto.h: Fix decomp_tkt_krb5 to use KRB4_32, instead of a
	nonexistent type.

Sat Dec  5 01:08:57 1998  Theodore Y. Ts'o  <tytso@mit.edu>

	* krb5.hin: Add KRB5_DLLIMP and KRB5_CALLCONV to the prototypes of
		valid_enctype, valid_cksumtype, is_coll_proof_cksum, and
		is_keyed_cksum, which had previously been #defines, but
		since they are now functions, they needed to be exported
		by the DLL interface.

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

	* krb5.hin: Move krb4 function prototypes to krb54proto.h

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

	* krb5.hin: Add function prototypes for the new realm iterator
		functions.  Also add some krb4 function prototypes to make
		catching prototype errors easier.

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.)
		Add a MY_SUBDIRS definition to control the directories
		which are recursively descended by the Makefile.

	* configure.in: Folded tests from krb5 and kerberosIV directories
		into this configure.in file.

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

	* krb5.hin: add new interfaces for new crypto API and key
	derivation/key usage.  Add new (krb5_get_permitted_enctypes,
	krb5_is_permitted_enctype) api for querying permitted etypes from
	krb5.conf, and new auth_context flag
	(KRB5_AUTH_CONTEXT_PERMIT_ALL) to override this.  Fix bug in
	krb5_kt_get_type.
	
	* k5-int.h: make changes related to new crypto API and key
	derivation/key usage

Tue Sep  1 19:32:33 1998  Tom Yu  <tlyu@mit.edu>

	* krb5.hin: Add ENCTYPE_LOCAL_DES3_HMAC_SHA1, in order to deal
	with marc's current des3 cryptosystem until we figure out what
	we're actually going to use for a standardized cryptosystem.

Wed Jul  1 19:14:25 1998  Theodore Y. Ts'o  <tytso@mit.edu>

	* win-mac.h: Make size_t to be an unsigned long instead of
		unsigned int.

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

	* krb5.hin: Declare krb5_auth_con_setrcache and
		krb5_get_server_rcache to be exported by the DLL.

Sun Feb 22 19:20:31 1998  Tom Yu  <tlyu@mit.edu>

	* k5-util.h: New file.  Add krb5_seteuid in order to allow
 	applications to use it without including k5-int.h.

	* k5-int.h: Remove krb5_seteuid, as it is moving to k5-util.h.

Wed Feb 18 15:50:40 1998  Tom Yu  <tlyu@mit.edu>

	* Makefile.in: Remove trailing slash from thisconfigdir.  Fix up
	BUILDTOP for new conventions.  Fix up use of $(C) for new
	conventions.

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

	* configure.in: Use AC_CONFIG_DIRS instead of CONFIG_DIRS, and
		remove use of DO_SUBDIRS.

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

Thu Jan 29 20:15:30 1998  Dan Winship  <danw@mit.edu>

	* krb5.hin: fix #define of krb5_cc_gen_new (takes a krb5_ccache *,
	not a krb5_ccache)

Sat Dec  6 02:20:11 1997  Tom Yu  <tlyu@mit.edu>

	* krb5.hin: Add constants and prototypes for the Cygnus password
	changing API.  Add krb5_cc_copy_creds.  Add support for Cygnus
	initial credentials API.

	* k5-int.h: Add additional preauth types.  Add additional
	parameter to krb5_sendto_kdc for designating whether to use the
	master.  Add functions to support Cygnus initial credentials API.
	Add prototypes for sam functions.

Tue Sep 30 18:56:05 1997  Tom Yu  <tlyu@mit.edu>

	* win-mac.h: Replace HAS_STDLIB_H with something more sane.

	* k5-int.h: Replace HAS_STDLIB_H, NO_STDLIB_H with something more
 	sane.

Thu Sep 25 21:10:37 1997  Tom Yu  <tlyu@mit.edu>

	* win-mac.h: Replace KRB5_USE_INET with something more sane.

	* k5-int.h: Replace HAS_UNISTD_H with something more sane.

Thu Sep 18 17:52:59 1997  Tom Yu  <tlyu@mit.edu>

	* win-mac.h: Replace USE_STRING_H with something more sane.

	* k5-int.h: Replace USE_STRING_H, HAS_STRDUP, HAS_LABS with
 	something more sane.

Mon Sep 15 14:54:55 1997  Ezra Peisach  <epeisach@mit.edu>

	* krb5.hin: Add const to prototypes for krb5_cc_resolve,
	        krb5_cc_default_name, credential cache resolve and keytab
	        get functions.

Tue Jul 29 23:14:27 1997  Theodore Y. Ts'o  <tytso@mit.edu>

	* krb5.hin: For Windows and Macintosh, always include stdlib.h

Fri Jul 25 15:21:26 1997  Tom Yu  <tlyu@mit.edu>

	* k5-int.h: Don't include anything related to dbm.

Tue Jul 15 12:35:41 1997  Theodore Y. Ts'o  <tytso@mit.edu>

	* win-mac.h: Remove (probably unneeded) size_t definition.

Tue Mar 18 13:47:26 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>

	* krb5.hin: Add 'extern "C"' for C++ compatibility; also check for
		__cplusplus since some C++ compilers don't set __STDC__

Tue Feb 25 00:33:52 1997  Richard Basch  <basch@lehman.com>

	* krb5.hin: Export krb5_read_password
	* win-mac.h: Declare get_lib_instance (win_glue.c)

Fri Feb 21 17:13:19 1997  Sam Hartman  <hartmans@luminous.MIT.EDU>

	* port-sockets.h: Include sys/types.h before netinet/in.h for NetBSD
	Protect against multiple inclusion

Thu Feb 20 23:28:31 1997  Richard Basch  <basch@lehman.com>

	* port-sockets.h: Define SOCKET_INITIALIZE and SOCKET_CLEANUP
		as no-ops under Windows, since this is now handled by
		the DLL entry/exit code.

Wed Feb 19 14:25:32 1997  Theodore Y. Ts'o  <tytso@mit.edu>

	* krb5.hin: Added function prototype for krb5_set_principal_realm().

Tue Feb 18 17:43:55 1997  Richard Basch  <basch@lehman.com>

	* krb5.hin:
		Added prototypes for krb5_free_data, krb5_free_data_contents
		Moved krb5_xfree definition to k5-int.h
	* k5-int.h:
		krb5_xfree is an internal macro

Mon Feb 17 13:58:45 1997  Richard Basch  <basch@lehman.com>

	* win-mac.h: Added KRB4 Windows INI related definitions.

Sat Feb  8 15:01:33 1997  Richard Basch  <basch@lehman.com>

	* krb5.hin: Export krb5_get_credentials_{renew,validate} (win32)

Tue Feb  4 15:57:18 1997  Richard Basch  <basch@lehman.com>

	* k5-int.h: Make sure KRB5_EXPORTVAR is defined
	* krb5.hin: Do not bother to define INTERFACE or INTERFACE_C

Sun Feb  2 20:58:40 1997  Richard Basch  <basch@lehman.com>

	* k5-int.h: All pointers to KRB5_DLLIMP functions must be declared FAR

Fri Jan 31 23:10:09 1997  Richard Basch  <basch@lehman.com>

	* krb5.hin:
		Fixed improper declaration of krb5_eblock_enctype;
		it returns a krb5_enctype, not a krb5_error_code.

Thu Jan 30 21:22:28 1997  Richard Basch  <basch@lehman.com>

	* krb5.hin
		Functionalized remaining cryptosystem entrypoints
		Made the cryptosystem structures private
	* k5-int.h
		Made the cryptosystem structures private
	* win-mac.h
		Win32 - compile with /MD to link with the runtime C library
	* Makefile.in
		Remove profile.h in clean-windows

Thu Nov 21 11:55:16 EST 1996    Richard Basch   <basch@lehman.com>

        * Makefile.in: win32 build
	* krb5.hin: Moved windows/mac stuff to win-mac.h
		Really, we should have krb5_os.h and utilize that file
		  even when we don't include krb5.h, such as with the building
		  of the crypto or util libs.
		Declared various functions as DLL exports (win16/win32)
		Major whitespace adjustment for consistency...
	* k5-int.h: Re-structured accordingly to accomodate win-mac.h
	* win-mac.h: New file containing the Windows/Mac definitions

Wed Nov 13 14:28:08 1996  Tom Yu  <tlyu@mit.edu>

	* k5-int.h, krb5.hin: Revert kt_default_name changes.

Tue Nov 12 22:04:41 1996  Tom Yu  <tlyu@mit.edu>

	* krb5.hin: Add definition for krb5_kt_set_default_name().

	* k5-int.h (struct _krb5_context): Add kt_default_name to
	context.

Mon Nov  4 14:50:42 1996  Theodore Y. Ts'o  <tytso@mit.edu>

	* k5-int.h: Removed unusued prototype for krb5_verify_padata();
		this is old code that has since been removed. [PR#21]

Thu Aug 15 16:31:20 1996  Theodore Ts'o  <tytso@rsts-11.mit.edu>

	* k5-int.h: Since we are only supporting the db in the util/db2
		directory, just use db-ndbm.h, instead of hoping that the
		system ndbm.h will be appropriate.

Fri Aug  2 14:15:26 1996  Ezra Peisach  <epeisach@kangaroo.mit.edu>

	* krb5.hin: Add prototype for krb5_free_keyblock_contents

Wed Jul 24 00:38:40 1996  Sam Hartman  <hartmans@tertius.mit.edu>

	* k5-int.h: Prototype krb5_setenv and krb5_unsetenv

Sun Jul  7 12:27:39 1996  Ezra Peisach  <epeisach@kangaroo.mit.edu>

	* krb5.hin: Add prototypes for krb5_get_credentials_renew() and
		krb5_get_cred_from_kdc_renew() 

Wed Jun 12 01:32:33 1996  Theodore Ts'o  <tytso@rsts-11.mit.edu>

	* syslog.h: Add #ifdef _WIN32 in places where we had #ifdef _MSDOS

	* sys/syslog.h: Add #ifdef _WIN32 in places where we had #ifdef _MSDOS

Mon Jun 10 16:52:35 1996  Theodore Ts'o  <tytso@rsts-11.mit.edu>

	* krb5.hin		
	* k5-int.h: For Win-32: always #include windows.h.  

		Change INTERFACE to be KRB5_CALLCONV, which is where
		the calling convention is defined.  Add KRB5_DLLIMP
		which is where the DLL import/export should be put for
		Win32.  (Win16 is just different.)  The correct way to
		declare a function which will be used in a DLL is now:
		KRB5_DLLIMP func_return_t KRB5_CALLCONV func(long)

		Change function delcarations to use the new
		convention.  Actually, it doesn't hurt to use the old
		convention as long as func_return_t doesn't contain a
		'*'.  But in the long run we should be exterminating
		all uses of INTERFACE in favor of KRB5_CALLCONV and
		KRB5_DLLIMP.

Fri Jun  7 18:13:33 1996  Theodore Y. Ts'o  <tytso@mit.edu>

	* krb5.hin: 
	* k5-int.h: Beginnings of Win-32 support.

Thu Jun  6 14:14:28 1996  Theodore Y. Ts'o  <tytso@mit.edu>

	* krb5.hin (krb5_cc_get_type): Remove extraneous '*' from definition.

Mon May 20 02:51:06 1996  Sam Hartman  <hartmans@mit.edu>

	* k5-int.h: Ultrix CC wants krb5_seteuid to take uid_t so that the
 	type can be promoted from a short.

Sat May 18 16:53:06 1996  Sam Hartman  <hartmans@tertius.mit.edu>

	* k5-int.h: Add krb5_seteuid

Tue May 14 20:29:09 1996  Richard Basch  <basch@lehman.com>

	* krb5.hin: replaced CKSUMTYPE_SHA_DES3 with CKSUMTYPE_HMAC_SHA

Thu May  9 19:28:48 1996  Theodore Y. Ts'o  <tytso@mit.edu>

	* k5-int.h: Added new field values for ap_req_sumtype and
	 	safe_sumtype.  Added new convenience function for
		verifying magic numbers: KRB5_VERIFY_MAGIC.

	* krb5.hin (krb5_auth_con_set_req_cksumtype,
	 	krb5_auth_con_set_safe_cksumtype): Added prototypes of
		new functions, to replace old krb5_auth_con_setcksumtype.

Fri May 10 01:26:24 1996  Richard Basch  <basch@lehman.com>

	* k5-int.h krb5.hin: Replaced 3des-md5 with 3des-sha.

Tue May  7 17:19:17 1996  Richard Basch  <basch@lehman.com>

	* k5-int.h: We are providing 3DES routines in libcrypto, too...

Thu May  2 18:41:00 1996  Richard Basch  <basch@lehman.com>

	* krb5.hin: krb5_init_random_key & krb5_finish_random_key now
		pass the eblock to the underlying crypto routine.

Fri May  3 00:26:47 1996  Mark Eichin  <eichin@cygnus.com>

	* krb5.hin
	(krb5_get_credentials_validate): declaration for new function.
	(krb5_get_cred_from_kdc_validate): ditto.

Thu May  2 22:52:14 1996  Mark Eichin  <eichin@cygnus.com>

	* krb5.hin (krb5_rd_req_decoded_anyflag): declaration for new
	function, see rd_req_dec.c for details.

Tue Apr 30 14:51:55 1996    <tytso@rsts-11.mit.edu>

	* k5-int.h: Fix Windows definition of PROVIDE_DES_CBC_RAW so that
		the raw DES cryptosystem is properly included.  Removed
		Macintosh definitions of PROVIDE_* since that is done in
		mac/libaries/KerberosHeaders.h.

Wed Apr 17 20:56:51 1996  Marc Horowitz  <marc@mit.edu>

	* k5-int.h, port-sockets.h: moved socket stuff into a separate
	file so that gssapi doesn't have to include k5-int.h

Thu Apr 11 23:50:24 1996  Theodore Y. Ts'o  <tytso@dcl>

	* krb5.hin (krb5_x, krb5_xc): Fix wrapper macros so they don't
		try to dereference a function pointer as a data value.
		This doesn't work if you're using hpux cc, since functions
		are aligned on 2-byte boundaries, but data has to be
		accessed on 4-byte boundaries.  Accessing a function as a
		data value isn't ANSI C portable anyway.  :-)  Wrapper
		macros now take a function pointer, and check to see if
		the function pointer is non-NULL, instead of taking a
		(*funptr), and seeing if the function when treated as data
		object is non-NULL. 

Wed Apr 10 10:37:21 1996  Theodore Y. Ts'o  (tytso@dcl)

	* krb5.hin (krb5_validate_times): Add prototype of new function.

Tue Apr  9 22:40:49 1996  Mark Eichin  <eichin@cygnus.com>

	* k5-int.h: add prototypes for sam preauth functions.

Thu Mar 28 19:55:04 1996  Richard Basch  <basch@lehman.com>

	* krb5.hin: Added ENCTYPE_DES3_CBC_RAW

Wed Mar 20 22:55:50 1996  Theodore Y. Ts'o  <tytso@dcl>

	* krb5.hin (krb5_pa_data): Change type of pa_type field in
		krb5_pa_data to be krb5_preauthtype, for consistency's
		sake.  Added prototype for krb5_copy_addr().  Change type
		of etype in krb5_etype_info_entry to be krb5_enctype, for
		consistency's sake.

Sat Feb 24 21:46:13 1996  Theodore Y. Ts'o  <tytso@dcl>

	* Makefile.in (all-windows): hpux make doesn't grok $@, so I'm
	        told.  Use explicit target names for building errortable
	        include files.

Fri Feb 23 18:59:18 1996  Mark Eichin  <eichin@cygnus.com>

	* krb5.hin (krb5_x, krb5_xc): wrapper macros to test all function
	pointers before calling through them (abort if null.) Simplifies
	debugging on many platforms. Currently #if 1, but could be
	conditionalized once we're in "production".

Wed Feb 21 23:33:18 1996  Richard Basch  <basch@lehman.com>

	* Makefile.in: Do not install k5-int.h

Wed Jan 10 22:46:51 1996  Theodore Y. Ts'o  <tytso@dcl>

	* k5-int.h: Add fields for fcc_default_format and
	        scc_default_format in krb5_context structure.

Tue Jan  9 22:23:31 1996  Theodore Y. Ts'o  <tytso@dcl>

	* krb5.hin (krb5_fwd_tgt_creds, krb5_os_hostaddr): Added new
		function prototypes.

Thu Jan  4 22:49:13 1996  Theodore Y. Ts'o  <tytso@dcl>

	* krb5.hin: Added support for KRB5_INT16_MAX, which tells us the
		limitations of using 16 bit ints.

Sun Nov 26 19:23:35 1995  Tom Yu  <tlyu@dragons-lair.MIT.EDU>

	* k5-int.h: Ultrix is broken.  Hacked around by redefining the
		typedefs of preauth_obtain_data_proc and
		preauth_process_proc to be pointers to the functions
		rather than the functions themselves.  Also made some
		things KRB5_NPROTOTYPE.

Fri Nov 17 22:29:13 1995  Theodore Y. Ts'o  <tytso@dcl>

	* krb5.hin, k5-int.h: Moved prototype for encode_kdc_rep to
		k5-int.h, and remove the eblock argument.

Mon Nov 13 11:49:02 1995  Theodore Y. Ts'o  <tytso@dcl>

	* k5-int.h: Added typedef for krb5_preauth_proces_proc, and
		changed the prototype of krb5_process_padata() to take
		additional arguments for returning the decryption key to
		use for decrypting the as_reply, as well as passing in the
		decrypt_proc procedure in case some preauth types want to
		call decrypt_proc themselves.

	* krb5.hin: Add prototypes for krb5_encrypt_data(),
		krb5_decrypt_data(). 

Thu Nov 09 17:05:57 1995  Chris Provenzano (proven@mit.edu)

        * krb5.hin : Remove krb5_enctype from krb5_string_to_key() args.

Thu Nov  9 00:04:52 1995  Theodore Y. Ts'o  <tytso@dcl>

	* k5-int.h: Remove etype_info from the argument list of
	        krb5_obtain_padata.

Wed Nov  8 02:53:48 1995  Theodore Y. Ts'o  <tytso@dcl>

	* krb5.hin: Add preauthentication type KRB5_PADATA_ETYPE_INFO.

	* k5-int.h: Add declaration for krb5_free_etype_info.

	* krb5.hin: Removed internal functions krb5_encrypt_tkt_part,
		krb5_verify_padta, and krb5_obtain_padata from the public
		header file.

	* k5-int.h: Removed old preauthentication declarations and added
		new ones.  Changed function prototype of
		krb5_encrypt_tkt_part.

Tue Nov 7 12:00:00 1995  John Rivlin <jrivlin@fusion.com>

	* k5-int.h: Place stat declation inside #ifndef __MWERKS__ so
		as not to conflict with the definition in the 
		MetroWerks compiler.

Tue Oct 24 17:31:36 1995  Theodore Y. Ts'o  <tytso@dcl>

	* k5-int.h: Manually defined PROVIDE_* for Macintosh and MS-DOS so
		that libcrypto knows which encryption systems to include.
		Otherwise, we would be building an exportable (and
		useless) krb5 library for the Mac and PC.

Fri Oct  6 21:59:02 1995  Theodore Y. Ts'o  <tytso@dcl>

	* Makefile.in: Remove ##DOS!include of config/windows.in.
		config/windows.in is now included by wconfig.

Thu Oct  5 21:31:10 1995  Theodore Y. Ts'o  <tytso@dcl>

	* krb5.hin: Change types of krb5_max_enctype and
		krb5_max_cksumtype to be krb5_enctype and krb5_cksumtype,
		to fix some gcc -Wall flames.

Thu Oct  5 07:34:51 1995  Ezra Peisach  <epeisach@kangaroo.mit.edu>

	* k5-int.h: Add profile_secure to context.

	* krb5.hin: Add krb5_secure_config_profile prototype.

Fri Sep 29 15:17:30 1995  Theodore Y. Ts'o  <tytso@dcl>

	* Makefile.in: If krb5/autoconf.h doesn't exist, cd to krb5 and
		make it.

		Don't make krb5-pro.h; this confuses things under Windows,
		since Windows attempts to build krb5-pro.h and then
		rebuildes krb5.h, when it shouldn't do that.  Fold in the
		krb5-pro.h rules as part of the rules for krb5.h.  This
		way, they don't get executed under DOS, since krb5.h
		already exists under DOS.

Fri Sep 29 13:35:08 1995  Ezra Peisach  <epeisach@kangaroo.mit.edu>

	* Makefile.in (clean-unix): Remove krb5-pro.h
	              (krb5-pro.h): Add HAVE_SYS_TYPES_H file so that
		      sys/types.h may be included definition of size_t for
		      krb5.h  

Fri Sep 29 01:35:50 1995  Theodore Y. Ts'o  <tytso@dcl>

	* k5-int.h: #include "osconf.h" all the time, at the beginning of
		the file.

Tue Sep 26 15:18:26 1995    <tytso@rsts-11.mit.edu>

	* k5-int.h: Don't predefine symbols to stop kdb.h and kdb_dbm.h
		for _MSDOS.

	* krb5.hin, k5-int.h: Move some src/lib/krb5/os prototypes to
		krb5.hin.

Mon Sep 25 16:39:21 1995  Theodore Y. Ts'o  <tytso@dcl>

	* Makefile.in: Removed "foo:: foo-$(WHAT)" lines from the
		Makefile. 

Sat Sep 23 01:37:19 1995  Theodore Y. Ts'o  <tytso@dcl>

	* krb5.hin: Added preauth numbers for KRB5_CYBERSAFE_SECUREID and
	        KRB5_PADATA_AFS3_SALT.

Fri Sep 22 12:00:00 1995  James Mattly  <mattly@fusion.com>

	* k5-int.h: removed define for OLD_CONFIG_FILES for 
		change password

Fri Sep 22 19:42:47 1995  Theodore Y. Ts'o  <tytso@dcl>

	* k5-int.h: Change length field in krb5_alt_method and
		krb5_etype_info_entry to be an int, instead of an int32.
		This allows the ASN.1 length parsing routines to work
		properly. 

	* k5-int.h: (from Keith Vetter's windows changes); define
		THREEPARAMOPEN and prototype for sscanf.  Also add #define
		for strncasecmp() to the microsoft's strnicmp() function.

Tue Sep 12 12:00:00 1995  John Rivlin <jrivlin@fusion.com>

	* k5-int.h: Removed KRB5_REALM_CANT RESOLVE,
		PROF_NO_SECTION and PROF_NO_RELATION defines
		as they are also defined in KerberosIV/krb_err.h
		and util/profile/prof_err.et and create conflicts
		on the Mac.

Sun Sep 10 12:00:00 1995  James Mattly  <mattly@fusion.com>

	* krb5.hin:  Conditionalized inclusion of <sts/types.h> for _MACINTOSH

Wed Sep  6 12:00:00 1995  James Mattly  <mattly@fusion.com>

	* k5-int.h:  Added requisite defines, fake struct definitions for compilation
		on MACINTOSH.

Wed Sep 06 14:20:57 1995   Chris Provenzano (proven@mit.edu)

        * k5-int.h krb5.hin : s/keytype/enctype/g, s/KEYTYPE/ENCTYPE/g

Tue Sep 05 22:10:34 1995   Chris Provenzano (proven@mit.edu)

        * k5-int.h, krb5.hin : Remove krb5_enctype references, and replace with
                krb5_keytype where appropriate.

Fri Sep  1 00:44:59 1995  Theodore Y. Ts'o  <tytso@dcl>

	* k5-int.h: Added clockskew, kdc_req_sumtype, and
		kdc_default_options to the krb5_context structure.

	* krb5.hin: Added expected nonce and request_time fields to the
	        krb5_response structure.  The fields are used to pass
		information from krb5_send_tgs() to
		krb5_get_cred_via_tkt() so that it can do sanity checking.

	* k5-int.h: Add time offset field to the os_context structure.
		This offset is added to the system clock time to produce
		the "true" time.  

		Added prototypes for the functions which manipulate the
		time offset structures: krb5_set_real_time(),
		krb5_set_debugging_time(), krb5_use_natural_time(),
		krb5_get_time_offsets(), and krb5_set_time_offsets().

Tue Aug 29 13:26:22 EDT 1995	Paul Park	(pjpark@mit.edu)
	* k5-int.h - Add ser_ctx[_count] to krb5_context.  This keeps track
		of registered serializers.  Add serializer definitions and
		prototypes.
	* krb5.hin - Add priv_size to krb5_encrypt_block.  This indicates the
		size of the private data.  Add pointer to keytab ops for
		serializer handle.

Mon Aug 28 15:58:14 1995    <tytso@rsts-11.mit.edu>

	* k5-int.h: Added two new data structures: krb5_alt_method and
	        krb5_etype_info (and krb5_etype_info_entry).  

Fri Aug 25 17:12:37 1995  Theodore Y. Ts'o  <tytso@dcl>

	* k5-int.h: Added prototypes for encode_krb5_padata_sequence and
	        decode_krb5_padata_sequence.

	* krb5.hin: Removed unused (and misleading) macros
		KEYTYPE_IS_LOCAL, ETYPE_IS_LOCAL, CKSUMTYPE_IS_LOCAL

Thu Aug 24 19:23:10 1995  Theodore Y. Ts'o  <tytso@dcl>

	* .Sanitize: Update file list

Wed Aug 16 02:45:19 1995  Chris Provenzano <proven@mit.edu>

	*  k5-int.h (krb5_lock_file(), krb5_unlock_file()):
		Use fds instead of FILE *s and don't pass the filename.

Fri Aug  4 23:04:06 1995  Tom Yu  <tlyu@dragons-lair.MIT.EDU>

	* k5-int.h: Add prototypes for krb5_crypto_os_localaddr and
		krb5_crypto_us_timeofday

Thu Jul 27 15:04:37 EDT 1995	Paul Park	(pjpark@mit.edu)
	* k5-int.h - Inline or delete header files included here.  These were:
		{asn1, dbm, ext-proto, k5-config, k5-errors, k5-sockets,
		 libos, los-proto, mit-des, preauth, rsa-md5 and sysincl}.h
		Also remove #defines which controlled the KDC, move these
		definitions to kdc/configure.in.

Thu Jul 27 04:27:45 1995  Chris Provenzano <proven@mit.edu)

	* krb5.hin : Added #define KEYTYPE_UNKNOWN

Tue Jul 11 13:12:14 1995    <tytso@rsx-11.mit.edu>

	* krb5.hin (krb5_cc_get_type, krb5_kt_get_type): Add the new
		functions to get the type of the credentials cache and key
		table.
	
Sun Jul  9 21:37:50 1995  Ezra Peisach  <epeisach@kangaroo.mit.edu>

	* krb5.hin: Add krb5_rd_cred prototype.

Fri Jul 7 15:56:49 EDT 1995	Paul Park	(pjpark@mit.edu)
	* krb5.hin - Add checksum verifier dispatch in the checksum entry.
		This is now the supported method for verifying checksums.  Also
		add krb5_verify_checksum which uses this dispatch.

Thu Jul  6 17:19:26 1995  Tom Yu  <tlyu@lothlorien.MIT.EDU>

	* krb5.hin: Change definition of krb5_os_localaddr to include
		context argument.

Wed July  5 15:52:31 1995  James Mattly  <mattly@fusion.com>
	* k5-int.h disable inclusion of profile.h for macintosh build
	* krb5.h   enable inclusion of sys/types.h on HAS_SYS_TYPES

Thu Jun 29 22:54:30 1995  Tom Yu  (tlyu@dragons-lair)

	* krb5.hin: special-case ultrix brokenness (again!) for
		KRB5_CONST; krb5.h breaks when typedef'ing while
		installed.  Yuck.

Tue Jun 27 16:14:38 EDT 1995	Paul Park	(pjpark@mit.edu)
	* krb5.hin - Reinstate KRB5_PROVIDE_PROTOTYPES.  This is needed for
		compilers which recognize prototypes but don't set __STDC__
		or _WINDOWS.

Thu Jun 22 16:03:07 1995  Tom Yu  (tlyu@dragons-lair)

	* syslog.h: reverse sense of KRB5_PROVIDE_PROTOTYPES
	* krb5.hin: special-case ultrix brokenness, reverse sense of
		KRB5_PROVIDE_PROTOTYPES (becomes KRB5_NO_PROTOTYPES);
		also, NO_NESTED_PROTOTYPES -> KRB5_NO_NESTED_PROTOTYPES
	* Makefile.in: don't install NO_NESTED_PROTOTYPES, HAS_VOID_TYPE,
		and KRB5_PROVIDE_PROTOTYPES symbols into krb5.h
	* sys/syslog.h: reverse sense of KRB5_PROVIDE_PROTOTYPES

Thu Jun 22 11:51:10 EDT 1995	Paul Park	(pjpark@mit.edu)
	* k5-int.h - Add pointer in krb5_context for database context.

Wed Jun 21 10:54:58 1995    <tytso@rsx-11.mit.edu>

	* Makefile.in, krb5.hin: Don't include autoconf.h anymore; have
		the Makefile include the few configure symbols which
		krb5.h needs.

	* krb5.hin: Change PROTOTYPE -> KRB5_PROTOTYPE and 
		NPROTOTYPE -> KRB5_NPROTOTYPE.

Fri Jun 16 11:39:36 EDT 1995	Paul Park	(pjpark@mit.edu)
	* Makefile.in - Fix install logic for krb5.h and k5-int.h.

Sun Jun 11 09:20:29 1995  Ezra Peisach  <epeisach@kangaroo.mit.edu>

	* krb5.hin: Add missing declaration of krb5_auth_con_initivector.

Sat Jun 10 22:10:46 1995  Tom Yu  (tlyu@dragons-lair)

	* krb5.hin: declare krb5_auth_context as
		struct _krb5_auth_context FAR *

Fri Jun  9 18:43:20 1995    <tytso@rsx-11.mit.edu>

	* krb5.hin: Remove definition of the krb5_fulladdr structure, and
		the prototype for the unused function krb5_fulladdr_order.

	* configure.in: Remove standardized set of autoconf macros, which
		are now handled by CONFIG_RULES.  Use DO_SUBDIRS to
		recurse down subdirectories.

Fri Jun 9 12:02:02 EDT 1995	Paul Park	(pjpark@mit.edu)
	* Makefile.in(all-unix) : Add adm_err.h build target since it's not 
		built in lib/krb5/error_tables any more.  kadmin.old needs it.

Tue Jun  6 12:25:38 1995  Theodore Y. Ts'o  (tytso@dcl)

	* krb5.hin: Add prototype for krb5_524_conv_principal()

Tue May 30 10:59:13 1995  Ezra Peisach  <epeisach@kangaroo.mit.edu>

	* Makefile.in (clean-unix): Remove built header files krb5.h
		krb5_err.h kdb5_err.h kv5m_err.h asn1_err.h 

Wed May 24 10:54:34 EDT 1995	Paul Park	(pjpark@mit.edu)
	* Makefile.in	- Change $< to explicit target names when generating
			  error table header files.  OSF/1 and Ultrix-native
			  make only expand $< on suffix rules.

Tue May 23 22:07:02 1995  Ezra Peisach  <epeisach@kangaroo.mit.edu>

	* krb5.hin: Remove krb5_encode_ticket as it does not exist in
		library. 

Tue May 23 15:08:54 1995  Theodore Y. Ts'o  (tytso@dcl)

	* Makefile.in, configure.in, krb5.hin: Move krb5.h to krb5.hin,
		and build krb5.h from krb5.hin and the error table
		include files, which are now built in this directory.
		This way, krb5.h is the only include file that we need to
		install.

	* k5-int.h: Move the sockets specific setup out of k5-config.h to
		  k5-sockets.h, and modify k5-int to include k5-sockets.h
		  (if it is requested by NEED_SOCKETS) after including
		  krb5.h.  This keeps the gdb type numbers the same across
		  .o files, so that recent binuntils can compress the
		  debugging information in executables linked with a
		  debugging library.

Mon May 22 10:24:49 EDT 1995	Paul Park	(pjpark@mit.edu)
	* Makefile.in	- (install) Always perform install actions using
			  $(INSTALL_DATA).
	* configure.in	- locate install program.

Wed May  3 10:32:18 1995  Ezra Peisach  <epeisach@kangaroo.mit.edu>

	* krb5.h: (krb5_auth_con_setports): Added missing prototype.
	          (krb5_auth_con_getkey): Added as well.

Wed May 03 03:30:51 1995  Chris Provenzano (proven@mit.edu)

	* krb5.h: (krb5_recvauth()): No longer needs the rc_type arg.

Mon May  1 17:06:51 1995  Ezra Peisach  <epeisach@kangaroo.mit.edu>

	* krb5.h: (krb5_set_config_files): Added const to prototype

Sat Apr 29 07:10:02 1995  Theodore Y. Ts'o  <tytso@lurch.mit.edu>

	* krb5.h (krb5_set_config_files): Added new function prototype.

Fri Apr 28 01:44:51 1995  Chris Provenzano  (proven@mit.edu)

	* krb5.h (krb5_send_tgs()) : Removed krb5_cksumtype argument.

Thu Apr 27 21:36:01 1995  Chris Provenzano  (proven@mit.edu)

        * krb5.h : Added mask AP_OPTS_WIRE_MASK.

Thu Apr 27 18:27:36 1995 Keith Vetter (keithv@fusion.com)
	
	* Makefile.in: duplicate copying the profile.h file for the PC.

Thu Apr 27 17:57:36 1995 Keith Vetter (keithv@fusion.com)

	* krb5.h: krb5_mk_req somehow got INTERFACE added to it--removed it.

Tue Apr 25 21:58:23 1995  Chris Provenzano  (proven@mit.edu)

	* krb5.h (krb5_fulladdr) : Change port to be of type krb5_address.
	* krb5.h (krb5_auth_con_genaddrs()) : Added flags for new routine.
	* krb5.h (krb5_get_for_creds()) : Removed prototype.
	* krb5.h (krb5_get_cred_via_tkt()) : Added prototype.
	* krb5.h (krb5_mk_ncred(), krb5_mk_1cred(), krb5_rd_cred()):
		Updated prototype to include auth_context.

Fri Apr 21 08:58:50 1995  Theodore Y. Ts'o  <tytso@lurch.mit.edu>

	* krb5.h: krb5_princ_aref() doesn't work, and isn't used anywhere.
		Removed.  (So all of macros.h is gone.)

	* krb5.h, k5-int.h: Moved struct _krb5_context to k5-int.h

Thu Apr 20 12:15:54 1995 Keith Vetter (keithv@fusion.com)

	* krb5.h: Needs SIZEOF_INT, SIZEOF_LONG defined for the PC.

Wed Apr 29 10:00:00 1995 Keith Vetter (keithv@fusion.com)

	* Makefile.in: duplicated the file copying stuff from 
           ..\gssapi\generic so that all the copying stuff can be
           found in one place.

Thu Apr 20 11:32:09 1995    <tytso@rsx-11.mit.edu>

	* krb5.h, k5-int.h: Inlined the following include files, to
		simplify the header files which actually need to be
		installed: wordsize.h, base-defs.h, hostaddr.h,
		fieldbits.h, proto.h, macros.h, error_def.h, safepriv.h,
		ccache.h, rcache.h, keytab.h, func-proto.h, k5-free.h.
		Also moved the #include of k5-config.h and k5-errors.h to
		k5-int.h.

Wed Apr 19 13:23:39 1995  Ezra Peisach  <epeisach@kangaroo.mit.edu>

	* krb5.h: Added default_realm pointer to krb5_context

Thu Apr 13 16:05:08 1995 Keith Vetter (keithv@fusion.com)

	* bsdlib.h, bstring.h, fake-std.h, syslog.h:  __STDC__ conditionals
           also check for the _WINDOWS define.
        * krb5.h: added FAR to pointers visible to the world.
	* sys/syslog.h:  __STDC__ conditionals also check for the _WINDOWS
	   define.

Tue Mar 28 18:12:32 1995  John Gilmore  (gnu at toad.com)

	* Makefile.in (KRB5_HEADERS, install):  `Make install' now works.
	* configure.in (WITH_KRB5ROOT):  For `make install'.
	* krb5.h:  Include "k5-errors.h" rather than "errors.h".

Fri Mar 17 19:10:41 1995  John Gilmore  (gnu at toad.com)

	* krb5.h:  Move <sys/types> and u_long (etc) code to krb5/k5-config.h.
	It is needed there when NEED_SOCKETS is defined.
	* Makefile.in (all-mac, clean-mac):  Add.

Wed Mar 15 20:27:57 1995 Keith Vetter (keithv@fusion.com)

	* Makefile.in: added recursion into krb5 for the PC.

Fri Mar 10 10:18:50 1995  Chris Provenzano (proven@mit.edu)

	* krb5.h Added empty structure declaration of krb5_auth_context.

	* k5-int.h Moved #include "adm_defs.h" to krb5.h

Thu Mar  2 23:24:00 1995  John Gilmore  (gnu at toad.com)

	Make include files begin to work on the Macintosh.

	* k5-int.h:  Remove krb5/ from #includes.  Rearrange #includes
	so that time_t is defined before kdb.h is included.
	* krb5.h:  Include k5-config.h first, so its #define's can
	control the rest of the file.  If <sys/types.h> is not present,
	define u_long, etc, manually.

Wed Feb 22 18:31:12 1995  John Gilmore  (gnu at toad.com)

	* k5-int.h:  Remove commented-out <widen.h> and <narrow.h>.
	* krb5.h: Same as old krb5/krb5.h, as a start.  Gradually things
	that don't need to be exported will be moved from krb5.h into
	k5-int.h (and vice verse for e.g. function prototypes).

Wed Jan 25 19:19:38 1995  John Gilmore  (gnu at toad.com)

	Make it possible to #include "..." without using slashes,
	for Macintosh support.

	* krb5.h:  New file, the externally visible interface to
	Kerberos V5.  Currently the whole kitchen sink, to bootstrap.
	* k5-int.h:  New file, the internally visible declarations
	needed by source files that are part of the Kerberos V5 library
	itself.  Currently the same whole kitchen sink, to bootstrap.

Fri Nov 18 00:16:31 1994  Mark Eichin  <eichin@cygnus.com>

	* configure.in: use WITH_CCOPTS.

