2006-03-27 Ken Raeburn * k5-err.h: Include win-mac.h. (KRB5_CALLCONV): Don't define. 2006-03-26 Ken Raeburn * krb5.hin (krb5_set_error_message, krb5_vset_error_message, krb5_get_error_message, krb5_free_error_message, krb5_clear_error_message): Declare. * k5-err.h: New file. * k5-int.h: Include it. (struct _krb5_context): Add new field ERR. 2006-03-11 Ken Raeburn * adm.h, adm_defs.h, adm_proto.h, copyright.h, kdb.h, kdb_dbc.h, kdb_kt.h, stock: Moved from krb5/ subdirectory. * k5-util.h, port-sockets.h, socket-utils.h: Updated for autoconf.h move from krb5/. * Makefile.in: Merge all targets from krb5/Makefile.in; don't go into krb5/ subdir while building. 2006-03-10 Ken Raeburn * Makefile.in (generate-files-mac): Depend on krb5.h. 2006-03-07 Ken Raeburn * k5-platform.h ({load,store}_{16,32,64}_le): Enable little-endian versions. * k5-locate.h: Renamed from k5-plugin.h. * k5-plugin.h: New file, with plugin support function declarations moved from k5-int.h. Change return types from krb5_error_code to int32_t. * k5-int.h: Include both of them. * krb5/kdb.h: Include k5-platform.h. (krb5_kdb_decode_int16, krb5_kdb_decode_int32): Use load_*_le helper functions. (krb5_kdb_encode_int16, krb5_kdb_encode_int32): Use store_*_le helper functions. 2006-03-06 Ken Raeburn * k5-plugin.h: New file. * k5-int.h: Include k5-plugin.h. (struct plugin_file_handle): Declare. (struct plugin_dir_handle): Define. (PLUGIN_DIR_INIT, PLUGIN_DIR_OPEN): New macros. (krb5int_open_plugin, krb5int_close_plugin, krb5int_get_plugin_data, krb5int_get_plugin_func, krb5int_open_plugin_dir, krb5int_close_plugin_dir, krb5int_get_plugin_dir_data, krb5int_get_plugin_dir_func, krb5int_free_plugin_dir_data, krb5int_free_plugin_dir_func): Declare. (struct _krb5_context): Add fields for holding some plugin data. (KRB5INT_ACCESS_STRUCT_VERSION): Bump. (struct _krb5int_access): Remove locate_server field. (struct addrlist): Use an undefined struct tag if fake-addrinfo.h hasn't been included yet. Add free-function and callback pointer fields. (krb5int_locate_server): Update prototype. * krb5/Makefile.in (PROCESS_REPLACE): Use MODULE_DIR instead of KRB5_DB_MODULE_DIR. 2006-02-24 Jeffrey Altman * win-mac.h: support for 64-bit Windows builds 2006-01-25 Ken Raeburn * k5-thread.h (krb5int_mutex_alloc, krb5int_mutex_free, krb5int_mutex_lock, krb5int_mutex_unlock): Declare. (k5_mutex_lock, k5_mutex_unlock) [PLUGIN]: Redefine to call krb5int_ function versions. 2005-12-16 Ken Raeburn * k5-thread.h (USE_PTHREAD_LOCK_ONLY_IF_LOADED): Define any time HAVE_PRAGMA_WEAK_REF is defined. 2005-12-07 Ken Raeburn * k5-thread.h (k5_mutex_lock_update_stats) [__GNUC__]: Use an inline function, to avoid "statement with no effect" warnings. 2005-11-17 Ken Raeburn * krb5/Makefile.in (osconf.h): Always remove osconf.new. 2005-10-20 Jeffrey Altman * 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 * win-mac.h: Add definitions for int32_t and uint32_t 2005-10-06 Ken Raeburn * krb5/Makefile.in (autoconf.stamp): When running config.status, only rebuild autoconf.h. 2005-09-14 Ken Raeburn * krb5/adm_proto.h (krb5_adm_connect, krb5_adm_disconnect, krb5_adm_dbent_to_proto, krb5_adm_proto_to_dbent, krb5_adm_proto_to_ktent, krb5_adm_ktent_to_proto, krb5_free_adm_data, krb5_send_adm_cmd, krb5_send_adm_reply, krb5_read_adm_cmd, krb5_read_adm_reply): Delete declarations, since none of these functions exist. 2005-07-01 Ken Raeburn * k5-thread.h (k5_key_t): Add K5_KEY_KDB_ERR_HANDLER and K5_KEY_KADM_CLNT_ERR_HANDLER. 2005-06-29 Ken Raeburn * krb5/Makefile.in (osconf.h): Depend on Makefile. Always display commands executed for replace-if-newer sequence. (PROCESS_REPLACE): Replace @MODULEDIR with $(KRB5_DB_MODULE_DIR). 2005-06-20 Ken Raeburn * krb5/Makefile.in (clean-unix): Don't remove autoconf.h. Novell merge. * krb5/Makefile.in (LIBDIR): New variable. (PROCESS_REPLACE): Replace @LIBDIR. * krb5/adm_proto.h (krb5_key_salt_tuple): Conditionalize incomplete typedef on KRB5_KDB5__ instead of KRB5_ADM_H__ and __KADM5_ADMIN_H__. * krb5/adm.h (krb5_key_salt_tuple): Move type definition... * krb5/kdb.h (krb5_key_salt_tuple): ...to here. (krb5_dbe_apw, krb5_dbe_ark, krb5_dbe_cpw, krb5_dbe_crk): Use krb5_key_salt_tuple instead of struct __krb5_key_salt_tuple in prototype declarations. (osa_policy_ent_t): Move type definition here from kadm5/adb.h. Change element types from uint32_t to krb5_ui_4. (osa_adb_iter_policy_func): Move type definition here from kadm5/adb.h. (KRB5_TL_DB_ARGS): New macro, defined only if SECURID is defined. (KRB5_KDB_OPEN_RW, KRB5_KDB_OPEN_RO, KRB5_KDB_OPT_SET_DB_NAME, KRB5_KDB_OPT_SET_LOCK_MODE): New macros. (KRB5_DB_LOCKMODE_SHARED, KRB5_DB_LOCKMODE_EXCLUSIVE, KRB5_DB_LOCKMODE_DONTBLOCK, KRB5_DB_LOCKMODE_PERMANENT): New macros. (kdb5_db_create, kdb_def_get_mkey, kdb_def_set_mkey, krb5_db_alloc, krb5_db_clr_error, krb5_db_create_policy, krb5_db_def_fetch_mkey, krb5_db_delete_policy, krb5_db_errcode2string, krb5_db_free, krb5_db_free_master_key, krb5_db_free_policy, krb5_db_get_policy, krb5_db_inited, krb5_db_iter_policy, krb5_db_open, krb5_db_put_policy, krb5_db_set_master_key_ext, krb5_db_set_option, krb5_db_store_master_key, krb5_dbe_def_cpw, krb5_dbe_def_search_enctype, krb5_dbe_update_last_pwd_change, krb5_def_store_mkey, krb5_def_verify_master_key, krb5_free_supported_realms, krb5_key_salt_tuple, krb5_supported_realms, osa_adb_iter_policy_func, osa_policy_ent_rec, osa_policy_ent_t): New (or moved) declarations. (krb5_db_close_database, krb5_db_iterate_ext, krb5_db_open_database, krb5_db_rename, krb5_db_set_lockmode, krb5_db_set_name, krb5_db_set_nonblocking, krb5_db_store_mkey, krb5_dbe_free_contents, krb5_decode_princ_contents, krb5_encode_princ_contents, krb5_encode_princ_dbkey, krb5_free_princ_contents, krb5_free_princ_dbkey, krb5_ser_db_context_init): Declarations deleted (or moved). (krb5_db_create): Changed signature, just one char** arg in addition to context. (krb5_db_delete_principal): Changed argument 1 to non-const principal. (krb5_db_destroy): Changed argument 1 to char**. (krb5_db_free_principal): Changed return type from void to krb5_error_code. (krb5_db_iterate): Changed signature, new char* argument, pointed-to function returns int instead of krb5_error_code. 2005-06-14 Ken Raeburn * k5-platform.h: Include endian.h if it's available, or machine/endian.h if it's available. Include byteswap.h if available. (K5_LE, K5_BE): Define based on endianness macros from header files, if available. Only do the architecture tests if this fails. (SWAP16, SWAP32, SWAP64): Define if byteswap.h and bswap_16 are available. ({load,store}_{16,32,64}_le): Disable building of little-endian versions, which aren't currently used. 2005-06-09 Ken Raeburn * k5-platform.h (load_*): Change argument type to point to const. (K5_BE, K5_LE): New macros, defined based on architecture macros for certain big-endian and little-endian platforms, respectively. (PUT, GET) [__GNUC__]: New macros. Use GCC's packed-structure support to do unaligned loads and stores. (PUTSWAPPED, GETSWAPPED) [__GNUC__]: Similar, but invoke a SWAP macro (not defined yet) to swap the bytes of the value. (store_*, load_*): Use these macros when using GCC, depending on endianness and availability of the SWAP macros. 2005-06-07 Ken Raeburn * k5-platform.h (MAYBE_DEFINE_CALLINIT_FUNCTION) [DELAY_INITIALIZER]: New macro. If not __GNUC__, define k5_call_init_function in the expansion; otherwise, do nothing. (MAKE_INIT_FUNCTION) [DELAY_INITIALIZER]: Use it. (k5_call_init_function): Don't define function form at top level. 2005-05-31 Ken Raeburn * k5-thread.h (krb5int_pthread_loaded) [HAVE_PRAGMA_WEAK_REF]: Declare. (K5_PTHREADS_LOADED) [HAVE_PRAGMA_WEAK_REF]: Use it. 2005-05-28 Ken Raeburn * k5-int.h (encode_krb5_sam_challenge, encode_krb5_sam_key, encode_krb5_enc_sam_response_enc, encode_krb5_sam_response, decode_krb5_sam_challenge, decode_krb5_enc_sam_response_enc, decode_krb5_sam_response, decode_krb5_predicted_sam_response, krb5_validate_times): Delete duplicate declarations. 2005-05-19 Sam Hartman * k5-int.h (krb5int_c_ free_keyblock init_keyblock free_keyblock_contents): new 2005-05-13 Ken Raeburn * configure.in: Deleted, content merged into ../configure.in. * Makefile.in (thisconfigdir, mydir): Updated for configure change. ($(srcdir)/krb5/autoconf.stmp): Use $(thisconfigdir) when locating configure.in and autom4te.cache. * krb5/Makefile.in (thisconfigdir, mydir): Updated for configure change. 2005-05-06 Sam Hartman * krb5.hin: Add krb5_c_prf_length 2005-04-28 Ken Raeburn * k5-int.h: Include fcntl.h only if HAVE_FCNTL_H is defined. (krb5int_zap_data): For PalmOS without gcc, call memset but without the volatile cast. * port-sockets.h: On PalmOS, include autoconf.h and netdb.h, and define socklen_t. * socket-utils.h: Include k5-platform.h. (sa2sin, sa2sin6, ss2sa, ss2sin, ss2sin6): Always use inline function form, and use "inline" instead of "__inline__". 2005-04-13 Ken Raeburn * k5-int.h: Remove disabled code that used to be part of the non-NEED_SOCKETS case. 2005-03-25 Ken Raeburn * 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. * Makefile.in ($(srcdir)/krb5/autoconf.stmp): Nuke autom4te.cache directory. * 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 * 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 * k5-platform.h (PROGRAM_EXITING) [__GNUC__ && !_WIN32 && CONSTRUCTOR_ATTR_WORKS]: Define as zero. 2005-02-02 Ken Raeburn * configure.in: Put #ifndef/#define/#endif wrapper into autoconf.h to protect against multiple inclusions. Don't look for xom.h. Check for dlopen. 2005-01-21 Ezra Peisach * 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 * k5-thread.h [HAVE_PTHREAD && HAVE_PRAGMA_WEAK_REF]: Mark pthread_self and pthread_equal as weak references. 2005-01-13 Ken Raeburn * 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-09 Ken Raeburn * k5-int.h (krb5int_zap_data): Fix preprocessor test for Windows. 2005-01-07 Ken Raeburn * k5-thread.h (KRB5_CALLCONV, KRB5_CALLCONV_C): Define if not defined. (krb5int_mutx_lock_update_stats, krb5int_mutex_unlock_update_stats, krb5int_mutex_report_stats) [!DEBUG_THREADS_STATS]: Declare, with KRB5_CALLCONV. (k5_debug_make_loc): Change "lineno" to type int. (k5_debug_make_loc): Likewise for argument "line". 2005-01-04 Jeffrey Altman * krb5.hin: add prototype for krb5_is_thread_safe 2005-01-04 Jeffrey Altman * win-mac.h: define NEED_INSIXADDR_ANY for ipv6 symbol 2005-01-04 Ken Raeburn * configure.in: Check for uint32_t and int32_t in system headers. * Makefile.in (krb5.h): Don't pull in autoconf SIZEOF macros. 2004-12-21 Tom Yu * krb5.hin: Flag krb5_principal2salt as KRB5_CALLCONV_WRONG. 2004-12-08 Ken Raeburn * k5-int.h (KRB5INT_ACCESS_STRUCT_VERSION): Bump to 9. (struct _krb5int_access): Add function pointer field use_dns_kdc. 2004-12-07 Sam Hartman * k5-int.h: Add prf_length to the keytype function * krb5.hin: Add krb5_c_prf 2004-12-06 Ken Raeburn * k5-thread.h [DEBUG_THREADS_STATS]: Include string.h and inttypes.h. (get_current_time) [DEBUG_THREADS_STATS]: Define as inline. (k5_mutex_init_stats) [DEBUG_THREADS_STATS]: Save away current time as creation time. (k5_mutex_stats_tmp): New typedef, k5_debug_time_t if recording stats, dummy int otherwise. (k5_mutex_stats_start): New macro, get current time if recording, zero otherwise. (krb5int_mutex_lock_update_stats, krb5int_mutex_unlock_update_stats, krb5int_mutex_report_stats) [DEBUG_THREADS_STATS]: Declare. (krb5int_mutex_report_stats) [! DEBUG_THREADS_STATS]: New macro, does nothing. (k5_mutex_lock_update_stats, k5_mutex_unlock_update_stats): New macros, map to krb5int_ functions if recording, dummy statements otherwise. (k5_mutex_destroy): Call krb5int_mutex_report_stats. (k5_mutex_lock, k5_mutex_lock_1): Call k5_mutex_stats_start and k5_mutex_lock_update_stats. (k5_mutex_unlock_1): Call k5_mutex_unlock_update_stats. 2004-11-19 Ken Raeburn * win-mac.h (HAVE_GETADDRINFO, HAVE_GETNAMEINFO): Define. 2004-11-16 Ken Raeburn * k5-int.h (struct _krb5_cc_ops): Add new function pointer field get_flags. * krb5.hin (krb5_cc_get_flags): Declare. 2004-11-03 Ken Raeburn * fake-addrinfo.h: Move most of code content into util/support/fake-addrinfo.c. (krb5int_getaddrinfo, krb5int_freeaddrinfo, krb5int_getnameinfo, krb5int_gai_strerror): Declare. (getaddrinfo, freeaddrinfo, getnameinfo, gai_strerror): Define as macros mapping to the krb5int_ function names. 2004-10-29 Ken Raeburn * fake-addrinfo.h: Include errno.h earlier. 2004-10-28 Ken Raeburn * 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 * 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 * configure.in: Check for struct if_laddrconf, as for struct lifconf. 2004-09-23 Ken Raeburn * 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 * configure.in: Remove KRB5_AC_NEED_BIND_8_COMPAT. 2004-09-15 Tom Yu * 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 * 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 * krb5.hin: define KRB5_TC_NOTICKET for use with krb5_cc_set_flags 2004-08-23 Ken Raeburn * fake-addrinfo.h (fai_add_hosts_by_name): Handle case where returned ai_canonname is null. 2004-08-14 Ken Raeburn * 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 * 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 * configure.in: Solaris getpwnam_r returns struct passwd*, not struct pwd*. 2004-08-08 Ken Raeburn * configure.in: If getpwnam_r is available, determine its return type. 2004-08-07 Ken Raeburn * 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 * 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 * configure.in: Actually check for pthread_mutex_lock. * k5-int.h (krb5_rc_recover_or_initialize): Declare. 2004-07-28 Ken Raeburn * 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 * 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 * configure.in: Look for "struct lifconf" and maybe define HAVE_STRUCT_LIFCONF. 2004-07-19 Ken Raeburn * fake-addrinfo.h (struct face, struct fac): Always declare. (krb5int_fac): Renamed from fac, and made extern. Always declare. 2004-07-16 Ken Raeburn * 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 * k5-int.h (krb5_os_context) Removed default_ccprincipal field from krb5_context 2004-07-14 Jeffrey Altman * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * k5-int.h: Don't test macintosh, __MWERKS__, applec, or THINK_C. * krb5/adm_proto.h, krb5/kdb.h, krb5/kdb_dbc.h, krb5/kdb_kt.h: Don't test macintosh. 2004-06-18 Ken Raeburn * 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 * Makefile.in (all-mac, clean-mac): Targets deleted. * krb5/Makefile.in (all-mac, clean-mac): Targets deleted. 2004-06-08 Ken Raeburn * 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 * 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 * configure.in: Check for getpwnam_r, gmtime_r, and localtime_r. 2004-06-02 Ken Raeburn * 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 * k5-int.h (krb5int_crypto_init, krb5int_prng_init): Declare. 2004-05-12 Ken Raeburn * k5-thread.h: On IRIX, with threads enabled, reject gcc older than v3. 2004-05-05 Ken Raeburn * 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 * 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 * 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 * 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 * 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 * k5-int.h (krb5int_prng_cleanup): Declare. 2004-03-25 Sam Hartman * configure.in: Check for mkstemp 2004-03-08 Ken Raeburn * Makefile.in (LOCAL_SUBDIRS): Renamed from MY_SUBDIRS. * krb5/Makefile.in (MY_SUBDIRS): Deleted. 2004-03-05 Ken Raeburn * krb5.hin (krb5_kt_register): Ops table is now const. * k5-thread.h: New file. 2004-02-26 Jeffrey Altman * 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 * 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 * krb5.hin: Remove des3 with 32-bit length 2004-01-04 Jeffrey Altman * win-mac.h: conditionally define strcasecmp/strncasecmp macros only if they do not already exist. 2003-12-23 Ken Raeburn * 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 * fake-addrinfo.h: Include stdio.h. 2003-12-18 Jeffrey Altman * k5-int.h: add new functions to krb5int_access for use by gssapi 2003-12-15 Ken Raeburn * k5-platform.h (SIZE_MAX): Provide default definition if stdint.h doesn't define it. 2003-12-15 Jeffrey Altman * 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 * 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 * 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 * k5-int.h: Add prototypes for decode_krb5_safe_with_body and encode_krb5_safe_with_body. 2003-09-26 Ken Raeburn * Makefile.in ($(srcdir)/krb5/autoconf.h.in): Depend on autoconf.stmp only if maintainer mode is enabled. 2003-09-12 Ken Raeburn * configure.in: Check for setsid() and . 2003-08-29 Ken Raeburn * 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 * 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. * krb5/k5-config.h: Unused file deleted. 2003-08-21 Ken Raeburn * fake-addrinfo.h (getnameinfo): Define to my_fake_getnameinfo only if HAVE_GETADDRINFO is defined. 2003-08-20 Ken Raeburn * 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 * configure.in: Check for mode_t. 2003-07-31 Jeffrey Altman * 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 * fake-addrinfo.h: Don't use broken getaddrinfo on Mac OS X 2003-07-22 Ken Raeburn * 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 * krb5.hin: Export krb5_principal2salt. 2003-07-09 Alexandra Ellwood * krb5.hin: Export krb5_get_permitted_enctypes and krb5_set_real_time for Samba. 2003-06-23 Ken Raeburn * k5-int.h (struct krb5_cksumtypes): Add new field trunc_size. 2003-06-12 Tom Yu * krb5.hin: krb524_init_ets() takes one argument. 2003-06-06 Ken Raeburn * 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 * k5-int.h (struct _krb5int_access): Add locate_server back in. 2003-05-27 Ken Raeburn * 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 * krb5.hin: Sequence number of krb5_replay_data should be unsigned. * krb5/kdb.h: Add prototype for krb5_db_iterate_ext. 2003-05-23 Ken Raeburn * 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 * 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 * k5-int.h: krb5int_populate_gic_opt returns void 2003-05-19 Sam Hartman * k5-int.h: Prototype krb5int_populate_gic_opt 2003-05-18 Tom Yu * k5-int.h: Sequence numbers are now unsigned. * krb5.hin: Sequence numbers are now unsigned. 2003-05-16 Ken Raeburn * krb5.hin (KRB5_KPASSWD_ACCESSDENIED): New macro. (KRB5_KPASSWD_BAD_VERSION, KRB5_KPASSWD_INITIAL_FLAG_NEEDED): New macros. 2003-05-13 Sam Hartman * k5-int.h: Add krb5int_copy_data_contents 2003-05-08 Sam Hartman * 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 * krb5.hin: Add KRB5_PADATA_ETYPE_INFO2 2003-05-09 Ken Raeburn * k5-int.h (struct _krb5_context): New fields conf_tgs_ktypes, conf_tgs_ktypes_count, use_conf_ktypes. 2003-05-09 Tom Yu * 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 * k5-int.h: Add s2kparams to krb5_etype_info_entry Add encode_etype_info2 and decode_etype_info2 2003-05-02 Ken Raeburn * port-sockets.h (inet_ntop) [!_WIN32 && !HAVE_MACSOCK_H]: Define as a macro if not provided by the OS. 2003-04-28 Ken Raeburn * 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 * k5-int.h: Add encode_krb5_setpw_req 2003-04-15 Sam Hartman * 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 * Makefile.in ($(srcdir)/krb5/autoconf.stmp): Try running autoheader with --include, and if that doesn't work, try --localdir. 2003-04-07 Ken Raeburn * fake-addrinfo.h (getaddrinfo) [NUMERIC_SERVICE_BROKEN]: Overwrite the port number only if a numeric service port was supplied. 2003-04-01 Ken Raeburn * 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 * 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 * 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-05 Tom Yu * krb5/kdb_kt.h: Add krb5_ktkdb_set_context. Update prototype of krb5_ktdb_resolve. Add krb5_kt_kdb_ops. 2003-03-05 Sam Hartman * Remove krb5/kdb_dbm.h 2003-03-04 Ken Raeburn * 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 * configure.in: Set and substitute maybe_kerberosIV. * Makefile.in (MY_SUBDIRS): Use it. 2003-02-19 Ken Raeburn * 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 * 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 * krb5.hin (krb5_mk_req_checksum_func): Fix Windows calling convention syntax. 2003-01-10 Ken Raeburn * 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 * 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 * fake-addrinfo.h (freeaddrinfo): Back out 1/3/03 change. ANSI does not require it. 2003-01-08 Sam Hartman * krb5.hin : Move KRB5_CALLCONV specifier for krb5_mk_req_checksum_func to right place 2003-01-07 Ken Raeburn * 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 * krb5.hin: Add support for setting a callback to generate the data checksummed by mk_req 2003-01-03 Ezra Peisach * fake-addrinfo.h (freeaddrinfo): Do not free a NULL pointer. 2002-12-19 Ken Raeburn * 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 * krb5.hin: Update comment on krb5_kt_free_entry prototype to point at the correct recommended function. 2002-12-06 Tom Yu * 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 * port-sockets.h: Add SOCKET_CONNECT, SOCKET_GETSOCKNAME, and SOCKET_CLOSE to allow for porting of some KfM things. 2002-11-14 Tom Yu * Makefile.in: Remove references to adm_err.h from here too. 2002-11-12 Ken Raeburn * 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 * spnego-asn1.h: New file. 2002-11-05 Tom Yu * k5-int.h (DEFAULT_PWD_STRING1, DEFAULT_PWD_STRING2): Remove trailing colon, as new implementation of krb5_read_password() appends it. * krb5/kdb.h (KRB5_KDC_MKEY_1, KRB5_KDC_MKEY_2): Remove trailing colon, as new implementation of krb5_read_password() appends it. 2002-10-31 Ken Raeburn * 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 * krb5.hin: Change definitions of new SAM preauth types to match kerberos-clarifications. 2002-10-24 Ken Hornstein * k5-int.h, krb5.hin: Add new protocols, definitions, and data structures for new hardware preauthentication protocol. 2002-10-23 Ken Hornstein * krb5.hin: Add new LRQ type for password expiration (from krb-clarifications) 2002-10-07 Sam Hartman * Makefile.in : Add install-headers support 2002-09-26 Tom Yu * socket-utils.h (sa2sin, sa2sin6): Add redundant cast to (void *) to get GCC to shut up about alignment increasing. 2002-09-19 Ken Raeburn * port-sockets.h: Include sys/filio.h if available. 2002-09-18 Ken Raeburn * configure.in: Check for sys/filio.h. * cm.h: New file. * krb5/adm.h (struct __krb5_realm_params): New field realm_kdc_tcp_ports. 2002-09-13 Ken Raeburn * 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 * fake-addrinfo.h (gaiptr, faiptr, gniptr): Delete duplicate declarations. * foreachaddr.c: Include errno.h instead of declaring errno. 2002-09-03 Ezra Peisach * 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 * Makefile.in: Revert $(S)=>/ change, for Windows support. * krb5/Makefile.in: Revert $(S)=>/ change, for Windows support. 2002-08-23 Ken Raeburn * Makefile.in: Change $(S)=>/ and $(U)=>.. globally. * krb5/Makefile.in: Change $(S)=>/ and $(U)=>.. globally. 2002-08-21 Ken Raeburn * 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 * k5-int.h (struct _krb5_context): Add new member udp_pref_limit. 2002-07-12 Ken Raeburn * Makefile.in (install): Don't install port-sockets.h. 2002-07-09 Ken Raeburn * krb5.hin: Put # for cpp directives in first column. 2002-07-07 Ken Raeburn * 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 * 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 * 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 * 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 * port-sockets.h (win_socket_initialize): Delete declaration, since it's not mentioned elsewhere in the tree. 2002-06-21 Tom Yu * krb5.hin: Fix up yet more CALLCONV botches from last merge. 2002-06-21 Ezra Peisach * 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 * port-sockets.h [!_WIN32 && !HAVE_MACSOCK_H]: Include krb5/autoconf.h, to get HAVE_SYS_UIO_H. 2002-06-20 Ken Raeburn * 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 * 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 * krb5.hin: Delete inclusion of profile.h again. 2002-06-15 Alexandra Ellwood * 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 * 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 * 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 * 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 * 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 * 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 * krb5.hin: Fix BEGIN_DECLS conditional. 2002-06-14 Danilo Almeida * 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 * bsdlib.h, bstring.h, fake-stdlib.h: Deleted. * sys/syslog.h: Deleted. * krb5/kwinsock.h, krb5/macsock.h: Deleted. 2002-06-10 Ken Raeburn * 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 * 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 * 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-29 Ken Raeburn * krb5/MacTCP.h, krb5/AddressXlation.h: Deleted. 2002-05-24 Ken Raeburn 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 * sys/syslog.h (syslog, vsyslog, openlog, closelog, setlogmask): Always use prototype versions of declarations; delete non-prototype declarations. 2002-04-25 Ken Raeburn * 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 * 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 * 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 * port-sockets.h: Use Winsock 2 headers for Win32. * fake-addrinfo.h: Define HAVE_GETADDRINFO for Win32. 2002-04-05 Ken Raeburn * 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 * 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 * 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 * krb5.hin: krb5_init_keyblock new function. 2002-03-28 Ken Raeburn * 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 * 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 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 * 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 * 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 * krb5.hin (krb5_const): Restore macro definition, but include a warning that it'll go away soon. 2002-03-05 Ken Raeburn * 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 * krb5.hin, k5-int.h: Use const instead of krb5_const. * krb5.hin (krb5_const): Deleted definition. 2002-02-20 Ken Raeburn * 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 * 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 * 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 * socket-utils.h (ss2sin6) [__GNUC__]: Define inline function only if IPv6 support is turned on. 2001-12-07 Ezra Peisach * k5-int.h (krb5int_des_init_state): Change variable name in prototype away from usage. 2001-11-18 Sam Hartman * krb5.hin: Add krb5_set_default_tgs_enctypes 2001-11-15 Sam Hartman * krb5.hin: Add krb5_c_random_add_entropy and krb5_c_random_os_entropy 2001-11-14 Sam Hartman * krb5.hin: Added definitions of random sources 2001-11-06 Sam Hartman * k5-int.h: Add krb5int_des_init_state and krb5int_default_free_state 2001-11-06 Sam Hartman * k5-int.h: Add init_state and free_state to enc_provider struct 2001-11-05 Sam Hartman * krb5.hin: Add krb5_c_init_state and krb5_c_free_state 2001-10-30 Ezra Peisach * fake-addrinfo.c (freeaddrinfo): Do not free NULL pointers. 2001-10-26 Ezra Peisach * k5-int.h: Do not use "usage" in argument names in krb5_keyhash_provider functions. 2001-10-24 Sam Hartman * 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 * 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 * krb5.hin: Add rc4-hmac, rc4-hmac-exp enctypes, hmac-md5-rc4 cksumtype 2001-10-22 Sam Hartman * k5-int.h: keyhash_provider gains usage argument to hash function 2001-10-15 Danilo Almeida * krb5.hin (krb5_kt_get_type): KRB5_CALLCONV. 2001-10-12 Ken Raeburn * 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 * fake-stdlib.h: Make prototypes unconditional. (P): Don't define. * krb5.hin (KRB5_PROTOTYPE): Don't define. * krb54proto.h: Make prototypes unconditional. * krb5/macsock.h (PROTOTYPE): Don't define. 2001-10-05 Ken Raeburn * k5-int.h (KRB5_EXPORTVAR): Don't define. * krb5.hin (KRB5_EXPORTVAR): Don't define. * win-mac.h (KRB5_EXPORTVAR): Don't define. * krb5/adm_defs.h, krb5/kdb.h, krb5/kdb_dbc.h, krb5/kdb_dbm.h, krb5/kdb_kt.h, krb5/kwinsock.h: Don't explicitly declare pointers or functions FAR any more. Drop _MSDOS support. 2001-10-03 Ken Raeburn * 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. * krb5/adm_proto.h: Don't use KRB5_DLLIMP. 2001-09-28 Ken Raeburn * 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-25 Ken Raeburn * krb5/adm.h (struct __krb5_realm_params): Added fields realm_reject_bad_transit, realm_reject_bad_transit_valid; deleted field realm_filler. 2001-09-06 Ken Raeburn * 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 * fake-addrinfo.h: Include socket-utils.h. 2001-08-31 Ken Raeburn * 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 * 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 * 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 * 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 * fake-addrinfo.h (AI_NUMERICHOST): Define as zero if not already defined. 2001-07-31 Ken Raeburn * krb5.hin (krb5_check_transited_list): Pointer args now point to const. 2001-07-25 Ezra Peisach * krb5/kdb.h: For structs krb5_tl_data (tl_data_length), krb5_key_data (key-data_length), krb5_db_entry (len, e_length) change the storage types from krb5_int16 to krb5_ui_2. This does not require a database version change as the field sizes are the same. Remove the code ifdefed under KRB5_OLD_AND_KRUFTY. 2001-07-20 Ken Raeburn * fake-addrinfo.h: Include port-sockets.h instead of system header files; should fix Windows build. 2001-07-19 Ken Raeburn * 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 * 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 * krb5.hin: Move prototypes for krb5_net_read() and krb5_net_write() here. * k5-int.h: From here. 2001-06-19 Ken Raeburn * 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 * 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 * 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 * 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 * Makefile.in ($(srcdir)/krb5/autoconf.h.in): New target; rebuild using autoheader. 2001-04-27 Ezra Peisach * krb5/.cvsignore: Add stamp-h.in 2001-04-26 Ken Raeburn * 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 * 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 * 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 * krb5.hin: Add prototypes for krb5_auth_con_setpermetypes() and krb5_auth_con_getpermetypes(). 2001-02-26 Ezra Peisach * krb5/adm_proto.h (krb5_adm_connect): Declare prompt string const char *. 2001-01-19 Ken Raeburn * 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. 2001-01-16 Ken Raeburn * krb5/adm_proto.h, krb5/kdb.h, krb5/kdb_dbc.h, krb5/kdb_dbm.h, krb5/kdb_kt.h: Make all prototypes unconditional. 2000-11-01 Ezra Peisach * configure.in: Use AC_C_CONST instead of AC_CONST and AC_CHECK_HEADER instead of AC_HEADER_CHECK. 2000-10-17 Ezra Peisach * 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 * krb5.hin, k5-int.h: krb5_cc_get_name now returns const char *. Tue Sep 26 18:10:22 2000 Ezra Peisach * krb5.hin: Move prototype for krb5_gen_replay_name() * k5-int.h: from here. 2000-09-22 Ezra Peisach * k5-util.h (krb5_setedid): Add prototype. 2000-08-07 Ezra Peisach * 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 * krb5.hin: Fix calling convention for krb5_cc_get_type. 2000-07-19 Danilo Almeida * 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 * 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 * 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 * 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 * 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 * krb5.hin (krb5_recvauth_version, krb5_free_ktypes): Declare. 2000-06-05 Jeffrey Altman * krb5-int.h: Fix the prototype for krb5int_cc_default so that it builds on Windows. 2000-05-30 Wilfredo Sanchez * krb5/Makefile.in, krb5/osconf.h: Use bindir and sbindir from configure rather than building them up from EXEC_PREFIX. 2000-5-19 Alexandra Ellwood * 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-5-18 Alexandra Ellwood * krb5/macsock.h: local_addr_fallback_kludge defined to 0 again... fixed gethostname 2000-05-15 Jeffrey Altman * krb5.hin Added prototypes for new public functions krb5_appdefault_string krb5_appdefault_boolean 2000-5-9 Alexandra Ellwood * krb5/macsock.h: local_addr_fallback_kludge now defined to magic gethostaddr function in the Sockets Library, which does exactly what we want if the search domain is not specified. 2000-4-13 Alexandra Ellwood * 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 * k5-int.h: Fixed protos for krb5_locate_srv_* (naddrs is int*) 2000-03-20 Miro Jurisic * krb5.hin: Add krb5_free_default_realm 2000-03-15 Danilo Almeida * krb5.hin: Add krb5_get_prompt_types() and related defs.. * k5-int.h: Add krb5int_set_prompt_types(). 2000-03-13 Tom Yu * k5-int.h: Update prototype to sync with changes in preauth2.c. 2000-02-06 Ken Raeburn 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 * krb5.hin (krb5_decode_ticket): Declare. 2000-01-26 Ken Raeburn * 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 * krb5.hin (krb5_secure_config_files): Delete declaration. (krb5_init_secure_context): Declare. 1998-11-22 Miro Jurisic * krb5/macsock.h: MacOS: only #define MACHOSTNAMELEN when not already defined 1999-11-02 Ken Raeburn * 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 * 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 * Makefile.in (install): Install port-sockets.h, needed by kerberosIV/krb.h. 1999-09-13 Miro Jurisic * 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 * win0mac.h: Add #define HAVE_STRING_H for MacOS builds. 1999-08-31 Jeffrey Altman * 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 * configure.in: Check for memmove and bcopy. * Makefile.in (install): Install profile.h since krb5.h will use it. 1999-08-26 Danilo Almeida * 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 * k5-int.h (krb5_cc_retrieve_cred_default): Fix calling convention to make it consistent with actual calling convention. 1999-08-23 Ken Raeburn * krb5.hin (KRB5_TC_SUPPORTED_KTYPES): New flag. * k5-int.h (krb5_cc_retrieve_cred_default): Declare. 1999-08-18 Tom Yu * 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 * win-mac.h: Define MAXPATHLEN only if not already defined. This avoids warnings under Windows. 1999-08-04 Danilo Almeida * 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 * 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 * win-mac.h (size_t): Fixed size_t redefinition on MacOS 1997-07-26 Miro Jurisic * 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 * 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 * 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 * 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 * k5-int.h: Remove #define ENOMEM under #ifdef macintosh Wed May 19 11:33:15 1999 Danilo Almeida * 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). * krb5/Makefile.in: Create build rules for windows instead of blindly copying files. Wrap Unix build rules with !if 0/!endif that get used only in windows build. People need to remember to keep this !if/!endif in the proper place when they modify this file. Tue May 18 19:52:56 1999 Danilo Almeida * Makefile.in: Remove - from recursive Win32 make invocation. Mon May 17 12:30:58 1999 Danilo Almeida * Makefile.in: Add NO_OUTPRE flag to prevent creation of output directory under win32. * krb5/Makefile.in: Add NO_OUTPRE flag to prevent creation of output directory under win32. Tue May 11 15:19:12 1999 Ezra Peisach * krb5.hin: Remove unused priv_size from krb5_encrypt_block Fri May 7 15:26:44 1999 Theodore Y. Ts'o * krb5/adm_proto.h: Fix the existing kludge to deal with the fact that krb5_realm_params is defined in two, count them two, header files. There's real ugliness here that needs cleaning up eventually, but I don't have the time now to deal with it. Fri Apr 16 17:07:47 1999 Theodore Y. Ts'o * krb5/Makefile.in (all-windows): Don't constantly recreate autoconf.h with #include "win-mac.h" 1999-04-09 Theodore Ts'o * k5-int.h: Add new prototypes and #define's provided by Frank Cusack's preauth patch (PR# [krb5-kdc/662]) * krb5/kdb.h: Add new TL types provided by Frank Cusack's preauth patch (PR# [krb5-kdc/662]) 1999-04-01 Theodore Ts'o * 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 * k5-int.h: Fix GSS_DLLIMP. 1999-03-14 Miro Jurisic * win-mac.h: Fixed GSS_DLLIMP for the Mac 1999-03-11 Theodore Ts'o * 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 * 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 * 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 * 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 * 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 * 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 * 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 * krb5.hin: Move krb4 function prototypes to krb54proto.h 1998-12-04 Theodore Ts'o * krb5.hin: Add function prototypes for the new realm iterator functions. Also add some krb4 function prototypes to make catching prototype errors easier. Tue Nov 17 15:39:32 1998 Tom Yu * krb5/kdb.h: Update dbe_crk and dbe_cpw to take a boolean to indicate whether old keys should be retained. * krb5/Makefile.in (autoconf.stamp): Fix up to deal with config.status not being in the current directory anymore. 1998-11-13 Theodore Ts'o * 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. * krb5/Makefile.in: Set the myfulldir and mydir variables (which are relative to buildtop and thisconfigdir, respectively.) Add a MY_SUBDIRS macro set to '.' to indicate that there are no subdirectories to be processed by the Makefile. * krb5/configure.in: Removed and tests moved to parent directory. 1998-10-26 Marc Horowitz * 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 * krb5/kdb_dbc.h, krb5/kdb.h: update kdb api to be compatible with the new crypto api. Tue Sep 1 19:32:33 1998 Tom Yu * 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 8 04:30:22 1998 Geoffrey King * krb5/adm_proto.h: Added prototype for new function krb5_klog_reopen() Wed Jul 1 19:14:25 1998 Theodore Y. Ts'o * win-mac.h: Make size_t to be an unsigned long instead of unsigned int. 1998-05-26 Theodore Ts'o * krb5.hin: Declare krb5_auth_con_setrcache and krb5_get_server_rcache to be exported by the DLL. Thu Apr 16 23:50:08 1998 Tom Yu * krb5/configure.in: Search for /var/tmp first when determining rcache directory. [krb5-libs/548] Sun Feb 22 19:20:31 1998 Tom Yu * 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 * Makefile.in: Remove trailing slash from thisconfigdir. Fix up BUILDTOP for new conventions. Fix up use of $(C) for new conventions. * krb5/Makefile.in: Remove trailing slash from thisconfigdir. Fix up BUILDTOP for new conventions. Mon Feb 2 17:02:29 1998 Theodore Ts'o * 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 * krb5/Makefile.in: Define BUILDTOP and thisconfigdir in the Makefile Thu Jan 29 20:15:30 1998 Dan Winship * 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 * 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 * 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. * krb5/configure.in: Remove references to dbm and ndbm. Replace HAS_STDLIB_H and NO_STDLIB_H with something more sane. Replace AC_TIME_WITH_SYS_TIME with more a recent form. Use AC_CHECK_TYPE to check for time_t instead of erroneously named POSIX_TYPES. Thu Sep 25 21:10:37 1997 Tom Yu * win-mac.h: Replace KRB5_USE_INET with something more sane. * k5-int.h: Replace HAS_UNISTD_H with something more sane. * krb5/configure.in: Replace KRB5_USE_INET, HAS_UNISTD_H, HAS_SETVBUF. Thu Sep 18 17:52:59 1997 Tom Yu * 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. * krb5/configure.in: Replace USE_STRING_H, HAS_STRDUP, HAS_LABS Mon Sep 15 14:54:55 1997 Ezra Peisach * krb5.hin: Add const to prototypes for krb5_cc_resolve, krb5_cc_default_name, credential cache resolve and keytab get functions. * krb5/kdb_dbm.h: Add const to argument of krb5_dbm_db_get_principal. Add prototype for krb5_dbm_db_delete_principal. * krb5/kdb.h: Prototypes for krb5_db_get_principal, krb5_db_delete_principal, krb5_dbe_update_mod_princ_data, krb5_encode_princ_dbkey modified to use const krb5_principals. Tue Jul 29 23:14:27 1997 Theodore Y. Ts'o * krb5.hin: For Windows and Macintosh, always include stdlib.h Fri Jul 25 15:21:26 1997 Tom Yu * k5-int.h: Don't include anything related to dbm. * krb5/kdb_kt.h: Move support for "kdb" keytab here. * krb5/kdb.h: Add support for modified kdb API; remove extra arguments for db_set_mkey and db_get_mkey. Remove all (hopefully) mentions of any particular backend database implementation. Add flags argument for db_create, allowing caller to specify whether btree or hash methods are to be used in the backend. Tue Jul 15 12:35:41 1997 Theodore Y. Ts'o * win-mac.h: Remove (probably unneeded) size_t definition. Tue Mar 18 13:47:26 1997 Theodore Ts'o * 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 * 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 * 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 * 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 * krb5.hin: Added function prototype for krb5_set_principal_realm(). Tue Feb 18 17:43:55 1997 Richard Basch * 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 * win-mac.h: Added KRB4 Windows INI related definitions. Sat Feb 8 15:01:33 1997 Richard Basch * krb5.hin: Export krb5_get_credentials_{renew,validate} (win32) Tue Feb 4 15:57:18 1997 Richard Basch * 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 * k5-int.h: All pointers to KRB5_DLLIMP functions must be declared FAR Fri Jan 31 23:10:09 1997 Richard Basch * 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 * 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 * 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 * krb5/Makefile.in: all-windows needed :: not : clean up various generated files on all platforms, not just unix Wed Nov 13 14:28:08 1996 Tom Yu * k5-int.h, krb5.hin: Revert kt_default_name changes. Tue Nov 12 22:04:41 1996 Tom Yu * 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 * k5-int.h: Removed unusued prototype for krb5_verify_padata(); this is old code that has since been removed. [PR#21] Wed Oct 30 18:55:21 1996 Sam Hartman * krb5/Makefile.in (LOCALSTATEDIR): Add localstatedir a and sysconfidr to substitutions for osconf.h Mon Aug 26 17:01:11 1996 Barry Jaspan * krb5/kdb.h: add KRB5_TL_KADM5_E_DATA Fri Aug 23 16:20:54 1996 Theodore Ts'o * krb5/kdb.h: Remove dbm_error and dbm_clearerr from the dispatch table (which eventually should be completely removed.) Thu Aug 15 16:31:20 1996 Theodore Ts'o * 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 * krb5.hin: Add prototype for krb5_free_keyblock_contents Wed Jul 24 00:38:40 1996 Sam Hartman * k5-int.h: Prototype krb5_setenv and krb5_unsetenv Sun Jul 7 12:27:39 1996 Ezra Peisach * 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 * 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 * krb5/adm_proto.h: Change usage of INTERFACE to use KRB5_CALLCONV and KRB5_DLLIMP. Mon Jun 10 16:52:35 1996 Theodore Ts'o * 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. * krb5/winsock.h: Rename to kwinsock.h. Recent versions of Microsoft compilers include winsock.h, and the one we have collides with NT errno definitions. Using the one provided by the compiler is preferable. If you are using an old version of MSVC that doesn't include winsock.h, then rename kwinsock.h to winsock.h * krb5/kdb_dbm.h: Don't include kdb_dbm.h for Win-32. * krb5/kdb.h: Don't include most of kdb.h for Win-32. Fri Jun 7 18:13:33 1996 Theodore Y. Ts'o * krb5.hin: * k5-int.h: Beginnings of Win-32 support. Thu Jun 6 14:14:28 1996 Theodore Y. Ts'o * krb5.hin (krb5_cc_get_type): Remove extraneous '*' from definition. Mon May 20 17:57:15 1996 Theodore Ts'o * krb5/configure.in: Remove support for ODBM. Mon May 20 02:51:06 1996 Sam Hartman * k5-int.h: Ultrix CC wants krb5_seteuid to take uid_t so that the type can be promoted from a short. Sun May 19 14:32:19 1996 Sam Hartman * krb5/configure.in: Check for uid_t. Sat May 18 16:53:06 1996 Sam Hartman * k5-int.h: Add krb5_seteuid Tue May 14 20:29:09 1996 Richard Basch * krb5.hin: replaced CKSUMTYPE_SHA_DES3 with CKSUMTYPE_HMAC_SHA Sun May 12 00:46:05 1996 Marc Horowitz * krb5/kdb.h: convert to use new krb5_dbe_* tl_data functions. * krb5/adm.h (struct __krb5_realm_params): add realm_acl_file Thu May 9 19:28:48 1996 Theodore Y. Ts'o * 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 * k5-int.h krb5.hin: Replaced 3des-md5 with 3des-sha. Tue May 7 17:19:17 1996 Richard Basch * k5-int.h: We are providing 3DES routines in libcrypto, too... Thu May 2 18:41:00 1996 Richard Basch * 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 * 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 * krb5.hin (krb5_rd_req_decoded_anyflag): declaration for new function, see rd_req_dec.c for details. Tue Apr 30 17:15:57 1996 Ken Raeburn * krb5/configure.in: Invoke AC_C_CROSS before AC_TRY_RUN to pretty up output format. * krb5/Makefile.in (autoconf.h): Use timestamp file to prevent repeated rebuilding if file timestamp is out of date but contents wouldn't change. Tue Apr 30 14:51:55 1996 * 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. * krb5/macsock.h: Added prototype for getpeername(). Wed Apr 17 20:56:51 1996 Marc Horowitz * 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 * 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 * k5-int.h: add prototypes for sam preauth functions. Thu Mar 28 19:55:04 1996 Richard Basch * krb5.hin: Added ENCTYPE_DES3_CBC_RAW Thu Mar 28 17:57:04 1996 Theodore Y. Ts'o * krb5/AddressXlation.h: Updated to use latest versions from the Apple's MacTCP Universal Interface. (For PowerPC port). * krb5/MacTCP.h: New header file from Apple's Universal Interface * krb5/GetMyIPAddr.h, krb5/MacTCPCommonTypes.h, krb5/TCPPB.h, krb5/UDPPB.h: Removed old MacTCP header files. Wed Mar 20 22:55:50 1996 Theodore Y. Ts'o * 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. Wed Mar 13 17:43:35 1996 Ken Raeburn * krb5/configure.in: Use AC_HEADER_STDARG. Sat Feb 24 21:46:13 1996 Theodore Y. Ts'o * 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 * 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 * Makefile.in: Do not install k5-int.h Wed Jan 24 14:23:07 1996 Theodore Y. Ts'o * krb5/adm.h: Added lines to adm.h which Chris had removed while working on the kadmin revisions. This allows the existing code to compile. Mon Jan 22 17:36:00 1996 Ezra Peisach * krb5/configure.in: Use KRB5_CHECK_PROTOS instead of inlining prototype checking. Wed Jan 10 22:46:51 1996 Theodore Y. Ts'o * 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 * krb5.hin (krb5_fwd_tgt_creds, krb5_os_hostaddr): Added new function prototypes. Thu Jan 4 22:49:13 1996 Theodore Y. Ts'o * krb5.hin: Added support for KRB5_INT16_MAX, which tells us the limitations of using 16 bit ints. Wed Dec 13 03:51:53 1995 Chris Provenzano (proven@mit.edu) * krb5/kdb.h : Remove mkvno for krb5_db_entry Tue Dec 12 00:59:17 1995 Chris Provenzano (proven@mit.edu) * krb5/adm.h: Added principal flag keywords KRB5_ADM_KW_SETFLAGS and KRB5_ADM_KW_UNSETFLAGS because relative flag modification is just a good idea. * krb5/kdb.h: typedef kdb5_dispatch_table so prototypes that need it compile even if KDB5_DISPATCH isn't defined. * krb5/kdb_dbc.h: The start of the database context, which should be removed from the krb5_context. Sun Dec 10 11:02:35 1995 Ezra Peisach * krb5/adm_proto.h: Add prototype for krb5_input_flag_to_string. Fri Dec 1 17:16:05 1995 Theodore Y. Ts'o * krb5/adm.h: Added temporary definition of KRB5_ADM_M_EXTRADATA so that we have a tree which compiles. Sun Nov 26 19:23:35 1995 Tom Yu * 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 * 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 * 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 * 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 * 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 16:41:14 1995 Theodore Y. Ts'o * krb5/kdb.h: Added prototype for krb5_dbe_search_enctype(). Changed prototype of krb5_dbe_find_enctype() so that ktype is of type krb5_int32. (krb5_enctype is unsigned, so -1 doesn't work!) Tue Nov 7 12:00:00 1995 John Rivlin * k5-int.h: Place stat declation inside #ifndef __MWERKS__ so as not to conflict with the definition in the MetroWerks compiler. Fri Nov 03 04:37:56 1995 Chris Provenzano (proven@mit.edu) * krb5/adm.h : Constant changes for the new kadmin code. * krb5/kdb.h : Added attribute bit KRB5_KDB_NEW_PRINC. This will allow kadmin administrators with add acls to modify a principal until this bit is cleared. Tue Oct 24 17:31:36 1995 Theodore Y. Ts'o * 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 * Makefile.in: Remove ##DOS!include of config/windows.in. config/windows.in is now included by wconfig. * krb5/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 * 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. * krb5/adm.h: Remove pport and sport from the krb5_realm_params file, and replace it with ports, which is a char * list of all of the ports which should be listed to for this realm. Thu Oct 5 07:34:51 1995 Ezra Peisach * 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 * 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. * krb5/Makefile.in (clean-unix): Remove autoconf.h on make clean Fri Sep 29 13:35:08 1995 Ezra Peisach * 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 * k5-int.h: #include "osconf.h" all the time, at the beginning of the file. Wed Sep 27 16:00:00 1995 John Rivlin * krb5/adm_proto.h: Removed use of prototypes using krb5_db_entry on the Macintosh. Tue Sep 26 15:18:26 1995 * 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. * krb5/kdb.h, krb5/kdb_dbm.h: Add #if !defined(_MSDOS) && !defined(_MACINTOSH) to prevent these #includes from being used by Mac and PC machines. Mon Sep 25 16:39:21 1995 Theodore Y. Ts'o * Makefile.in: Removed "foo:: foo-$(WHAT)" lines from the Makefile. * krb5/Makefile.in: Removed "foo:: foo-$(WHAT)" lines from the Makefile. Sat Sep 23 01:37:19 1995 Theodore Y. Ts'o * krb5.hin: Added preauth numbers for KRB5_CYBERSAFE_SECUREID and KRB5_PADATA_AFS3_SALT. Fri Sep 22 12:00:00 1995 James Mattly * k5-int.h: removed define for OLD_CONFIG_FILES for change password Fri Sep 22 19:42:47 1995 Theodore Y. Ts'o * 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. Thu Sep 20 12:00:00 1995 James Mattly * krb5/macsock.h: Changes to support TCP streams and change password. Tue Sep 12 12:00:00 1995 John Rivlin * 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 * krb5.hin: Conditionalized inclusion of for _MACINTOSH Thu Sep 8 12:00:00 1995 James Mattly * krb5/k5-config.h: defined MPW fake stat.h out for metrowerks compiler * krb5/macsock.h: changed SOCKET definition for MACINTOSH to start support for TCP streams * krb5/TCPBP.h: fixed up some prototype problems with out customized tcp sockets for macintosh Thu Sep 7 15:53:28 1995 Theodore Y. Ts'o * krb5/adm.h (KRB5_ADM_SERVICE_NAME): Use official IANA assigned name for the port, which is kpasswd, not changepw. Add new define, KRB5_ADM_SERVICE_INSTANCE, which defines the instance name used for the kadmin name. Wed Sep 6 12:00:00 1995 James Mattly * 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 * krb5/adm.h, krb5/adm_proto.h krb5/kdb.h : 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. * krb5/adm_proto.h : Remove krb5_enctype references, and replace with krb5_keytype where appropriate. Fri Sep 1 00:44:59 1995 Theodore Y. Ts'o * 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(). Thu Aug 31 11:38:58 EDT 1995 Paul Park (pjpark@mit.edu) * krb5/configure.in - Add checks for stddef.h and xom.h for use by GSSAPI-V2 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. * krb5/kdb.h - Add prototype for krb5_ser_db_context_init(). Mon Aug 28 15:58:14 1995 * 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 * 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 * .Sanitize: Update file list Mon Aug 21 17:00:58 EDT 1995 Paul Park (pjpark@mit.edu) * krb5/adm_proto.h - Add krb5_timestamp_to_sfstring() prototype. Wed Aug 16 02:45:19 1995 Chris Provenzano * k5-int.h (krb5_lock_file(), krb5_unlock_file()): Use fds instead of FILE *s and don't pass the filename. Tue Aug 15 14:27:02 EDT 1995 Paul Park (pjpark@mit.edu) * krb5/kdb.h - Add prototype for krb5_dbe_find_keytype(). Mon Aug 07 11:22:57 1995 Chris Provenzano (proven@mit.edu) * krb5/kdb.h : Add prototypes for krb5_dbe_{en,de}code_last_pwd_change(), krb5_dbe_{apw,cpw,ark,crk}(), Fri Aug 4 23:04:06 1995 Tom Yu * k5-int.h: Add prototypes for krb5_crypto_os_localaddr and krb5_crypto_us_timeofday Fri Aug 4 16:10:34 EDT 1995 Paul Park (pjpark@mit.edu) * krb5/adm_proto.h - Add prototype definitions for new libkadm functions in keysalt.c dealing with key/salt tuples. * krb5/kdb.h - Add encode/decode macros for integers for use between kdb modules. Thu Aug 03 12:19:52 1995 Chris Provenzano (proven@mit.edu) * krb5/kdb.h : Added prototype for krb5_dbe_cpw() the new dd entry change password routine. Mon Jul 31 15:50:25 EDT 1995 Paul Park (pjpark@mit.edu) * krb5/adm.h - Add new protocol definitions. Also, add krb5_key_salt_tuple and add it to the krb5_read_realm_params structure so that we have a list of supported key/salt pairs. Convert keytype and enctype to be the correct datatype. * krb5/adm_proto.h - Add string conversion prototypes. 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. * krb5/{asn1,dbm,ext-proto,k5-{config,errors,sockets},libos,los-proto, mit-des,preauth,rsa-md5,sysincl}.h - Deleted. * krb5/Makefile.in - Remove these headers from KRB5_HEADERS. * krb5/configure.in - Change AC_INIT to look for kdb.h. Thu Jul 27 04:27:45 1995 Chris Provenzano * 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 * krb5.hin: Add krb5_rd_cred prototype. * krb5/los-proto.h: Add krb5_auth_con_genaddrs 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. * krb5/rsa-md5.h - Add RSA_MD5_DES_CONFOUND_LENGTH - the length of the confounder for RSA_MD5_DES per RFC1510. Thu Jul 6 17:19:26 1995 Tom Yu * krb5.hin: Change definition of krb5_os_localaddr to include context argument. Wed July 5 15:52:31 1995 James Mattly * k5-int.h disable inclusion of profile.h for macintosh build * krb5.h enable inclusion of sys/types.h on HAS_SYS_TYPES * krb5/k5-config.h Added _MACINTOSH for macintosh build conditions * krb5/macsock.h made definition of PROTOTYPE conditional Fri Jun 30 16:13:41 EDT 1995 Paul Park (pjpark@mit.edu) * krb5/kdb.h - Add kdb dispatch table and set routine under KDB5_DISPATCH. 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. * krb5/adm_proto.h - Change second argument of aprof_get... routines to be const char *. * krb5/configure.in, krb5/k5-config.h - 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 * krb5/k5-config.h: remove definition for KRB5_PROVIDE_PROTOTYPES because we've reversed the sense * krb5/configure.in: KBR5_PROVIDE_PROTOTYPES -> KRB5_NO_PROTOTYPES; NO_NESTED_PROTOTYPES -> KRB5_NO_NESTED_PROTOTYPES * krb5/rsa-md5.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. * krb5/adm_proto.h - Add prototypes for kadm library profile handling routines. These are wrappers for profile routines. * krb5/kdb.h - Remove KDB_CONVERT_KEY_{TO,OUTOF}_DB. Wed Jun 21 17:39:25 1995 Ezra Peisach * krb5/configure.in: Replace krb5_sigtype tests with KRB5_SIGTYPE which has been moved to aclocal.m4 Wed Jun 21 10:54:58 1995 * 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. * krb5/Makefile.in: Don't remove autoconf.h when doing a make clean; it's an autoconf generated file. * krb5/adm_proto.h, krb5/asn1.h, krb5/ext-proto.h, krb5/kdb.h, krb5/kdb_dbm.h, krb5/los-proto.h, krb5/preauth.c: Change PROTOTYPE -> KRB5_PROTOTYPE 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 * 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 * * krb5/adm_proto.h: update krb5_auth_context stuff Fri Jun 9 18:43:20 1995 * 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. * krb5/configure.in: Remove standardized set of autoconf macros, which are now handled by CONFIG_RULES. 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. Thu Jun 8 14:41:00 EDT 1995 Paul Park (pjpark@mit.edu) * krb5/adm_proto.h - Add prototypes for logging routines. Also, if kdb.h has not been included, add null structure for entry data structure so that we don't strictly require kdb.h. Thu Jun 8 11:11:24 1995 Theodore Y. Ts'o * krb5/Makefile.in (install): Don't install the install/krb5 header files. Wed Jun 7 16:23:51 1995 * krb5/Makefile.in: Process osconf.h using PREFIX and EXEC_PREFIX instead of KRB5ROOT. * krb5/k5-config.h: Remove old defines for krb.conf and krb.realms, which are now obsolete. Tue Jun 6 12:25:38 1995 Theodore Y. Ts'o (tytso@dcl) * krb5.hin: Add prototype for krb5_524_conv_principal() Mon Jun 5 13:47:30 EDT 1995 Paul Park (pjpark@mit.edu) * krb5/adm_proto.h - Add new arguments to krb5_adm_connect() for support of specifiable credentials caches and ticket lifetimes. Thu Jun 1 14:28:40 EDT 1995 Paul Park (pjpark@mit.edu) * krb5/adm.h: Change the default admin port to 464. Tue May 30 17:33:09 1995 Keith Vetter (keithv@fusion.com) * krb5/adm_proto.h: removed INTERFACE from 2 non-exported functions. Tue May 30 10:59:13 1995 Ezra Peisach * Makefile.in (clean-unix): Remove built header files krb5.h krb5_err.h kdb5_err.h kv5m_err.h asn1_err.h Tue May 30 10:22:57 1995 Keith Vetter (keithv@fusion.com) * krb5/adm_proto.h: conditionally removed for Windows two prototypes that use the database. * krb5/k5-config.h: bumped MAXPATHLEN and removed need for the kdb.h file. Fri May 26 10:17:12 1995 Keith Vetter (keithv@fusion.com) * krb5/adm_proto.h: added more missing INTERFACE. * krb5/los-proto.h: moved in prototype for gmt_mktime(). Thu May 25 19:27:45 1995 Keith Vetter (keithv@fusion.com) * krb5/adm_proto.h: two function's prototype were missing INTERFACE. * krb5/k5-config.h: kadm needs the kdb.h file. Thu May 25 15:39:31 1995 Keith Vetter (keithv@fusion.com) * krb5/los-proto.h: moved in the prototype for krb5_make_fulladdr. 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 * 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. * krb5/k5-config.h, krb5/k5-sockets.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. * krb5/Makefile.in - (install) Always perform install actions using $(INSTALL_DATA). * krb5/configure.in - Locate install program. Sun May 21 15:25:45 1995 Ezra Peisach * krb5/Makefile.in (PROCESS_REPLACE): Replace the RCTMPDIR in stock.h with a configuration determined directory * krb5/configure.in: Determine which directory to use for the replay cache. (/usr/tmp does not exist on netbsd). Wed May 10 13:20:47 1995 Ezra Peisach * krb5/Makefile.in (install): Install ET_HEADERS... Tue May 9 15:17:00 EDT 1995 Paul Park (pjpark@mit.edu) Add definitions and prototypes for new administrative protocol. Mon May 8 22:13:15 1995 Ezra Peisach * krb5/los-proto.h: krb5_read_password - prompt strings should be const char *. Remove krb5_init_os_context and krb5_free_os_context. (The proper prototypes are already in place i.e. krb5_os_init_context). Wed May 3 10:32:18 1995 Ezra Peisach * 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 * krb5.h: (krb5_set_config_files): Added const to prototype Sat Apr 29 07:10:02 1995 Theodore Y. Ts'o * krb5.h (krb5_set_config_files): Added new function prototype. Fri Apr 28 15:14:38 EDT 1995 Paul Park (pjpark@mit.edu) Remove INTERFACE from prototype definitions in krb5/adm_proto.h Fri Apr 28 11:11:54 1995 Mark Eichin * krb5/configure.in: correct use of --with-krb4 to match top level. 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. * krb5/k5-config.h: Changed over to the new single config file on the PC. Wed Apr 26 10:41:08 1995 Ezra Peisach * krb5/Makefile.in: Reflect current list of headers to be installed. 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 * 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 * 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. * krb5/k5-config.h, krb5/configure.in: Remove support for HAS_ANSI_CONST (that was needed only for compatibility with the old imake build; autoconf uses -Dconst=), and HAS_ANSI_VOLATILE, which isn't used at all. Wed Apr 19 13:23:39 1995 Ezra Peisach * krb5.h: Added default_realm pointer to krb5_context * krb5/func-proto.h: Remove global_context hack. Added prototype for krb5_set_default_realm. 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. * krb5/asn1.h, krb5/ccache.h, krb5/encryption.h, krb5/func-pro.h, krb5/hostaddr.h, krb5/keytab.h, krb5/los-prot.h, krb5/preauth.h, krb5/rcache.h: removed unneeded INTERFACE from non-api functions. * krb5/adm_defs.h, krb5/ccache.h, krb5/encryption.h, krb5/hostaddr.h, krb5/k5-free.h, krb5/keytab.h, krb5/macros.h, krb5/rcache.h: Added FAR to pointers visible to the world. * krb5/base-def.h, krb5/ext-prot.h, krb5/rsa-md5.h: __STDC__ condition also checks for the _WINDOWS define. Wed Apr 5 16:41:41 1995 Keith Vetter (keithv@fusion.com) * krb5/los-proto.h, krb5/func-proto.h: moved krb5_us_timeofday and krb5_sname_to_principal from the former to the latter. * krb5/base-def.h: added FAR to pointer types for the PC. * krb5/func-proto.h: added FAR to pointer types in prototypes but only for functions which are exported. Fri Mar 31 19:34:47 1995 Keith Vetter (keithv@fusion.com) * krb5/k5-config.h: defined dup to _dup for STDC stuff on Windows Fri Mar 31 16:12:28 1995 Theodore Y. Ts'o (tytso@dcl) * krb5/configure.in (CONFIG_RULES): Replaced. Thu Mar 30 15:57:22 1995 Keith Vetter (keithv@fusion.com) * krb5/func-proto.h: added 2 missing prototypes dealing with auth_con. Tue Mar 28 19:53:09 1995 Keith Vetter (keithv@fusion.com) * krb5/Makefile.in: changed to reflect deletion of stock/osconf.win. * krb5/k5-config.h: added constants for reading default values out of Windows ini files. * krb5/los-proto.h: added new prototype for Windows ini stuff. 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". * krb5/Makefile.in (KRB5_HEADERS, install): Account for file renames. (all-mac): Add. * krb5/configure.in (CONFIG_RULES): Remove. (krb5_sigtype): Define as either void or int. * krb5/encryption.h: Insert parentheses in macros to avoid mis-expansion. * krb5/k5-config.h: Further parameterize socket support. * krb5/macsock.h: Support connect(), recv(), send(), getmyipaddr(). (WSAGetLastError): Fix typo -- there's no argument to this macro. * krb5/k5-errors.h: Rename errors.h (which duplicated a standard Mac header name, causing a problem). * krb5/AddressXlation.h, krb5/GetMyIPAddr.h, krb5/MacTCPCommonTypes.h, krb5/TCPPB.h, krb5/UDPPB.h: Add MacTCP header files. Mon Mar 27 09:33:10 1995 Chris Provenzano (proven@mit.edu) * krb5/func-proto.h (krb5_rd_req(), krb5_rd_req_decode(), krb5_mk_rep(), krb5_recvauth(), and krb5_compat_recvauth(). Added a krb5_auth_context argument and eliminated many of the other arguments because they are included in the krb5_auth_context structure. Fri Mar 24 14:15:51 1995 * krb5/adm_defs.h (ADM5_DEFAULT_PORT): Add definition of default administration port. * krb5/Makefile.in (install): Delete the destination header files before copying in the new ones. Also install autoconf.h. Only install header files if the header file has changed. Wed Mar 22 11:37:24 1995 Keith Vetter (keithv@fusion.com) * krb5/k5-config.h: added HAVE_SYS_TYPES_H. Cleaned up the loading of sys/types.h which john added earlier. Specifically, we always have it and it's missing some typedefs used by this code. Tue Mar 21 18:42:23 1995 Keith Vetter (keithv@fusion.com) * krb5/k5-config.h: PC: NO_PASSWORD defined and files opened in binary mode. * krb5/func-proto.h: added new prototype for notify programs when the ccache changes, and moved krb5_get_default_realm from los-proto.h. * krb5/los-proto.h: moved krb5_get_default_realm into func-proto.h. Sun Mar 19 12:51:59 1995 John Gilmore (gnu at toad.com) * krb5/base-defs.h: Fix comment that referred to STDARG_PROTOTYPES. Fri Mar 17 19:10:41 1995 John Gilmore (gnu at toad.com) * krb5.h: Move 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. * krb5/k5-config.h: Move handling from ../krb5.h to here, because we need or the u_* types to be defined before we include the Unix socket include files a little later in k5-config.h. We actually add this code twice, once in the MSDOS section and once in the Unix/Mac section. (NEED_SOCKETS): Also include , for localaddr.c. * krb5/Makefile.in (clean-mac): Add. Wed Mar 15 20:27:57 1995 Keith Vetter (keithv@fusion.com) * Makefile.in: added recursion into krb5 for the PC. Tue Mar 14 16:50:54 1995 * krb5/Makefile.in: Delete definition for KRB5ROOT and KRB5_INCDIR, since those are defined in pre/config.in. Thu Mar 16 20:58:22 1995 John Gilmore (gnu at toad.com) * krb5/configure.in: Replace nonstandard CHECK_STDARG with AC_CHECK_HEADERS. Also check for header file macsock.h, which is a dummy test -- it's false on Unix and PC's, but on the Mac we hand-configure it to be true, to indicate that we want Mac socket support rather than Unix socket support. * krb5/base-defs.h, krb5/k5-config.h: Use HAVE_STDARG_H, not STDARG_PROTOTYPES. * krb5/k5-config.h (NEED_SOCKETS): Add new section which brings in socket include files for the appropriate compilation environment (Mac or Unix; Windows already did this). * krb5/macsock.h: New include file, derived from Cygnus Network Security Mac K4 release, for simulating sockets under MacTCP. Thu Mar 16 12:12:17 1995 Keith Vetter (keithv@fusion.com) * krb5/k5-config.h: PC change, getting sys_nerr and sys_errlist to work. Tue Mar 14 17:38:28 1995 Keith Vetter (keithv@fusion.com) * krb5/k5-config.h: more PC changes, mostly dealing with chmod not working as it should on the PC. * krb5/func-proto.h, krb5/los-proto.h: moved prototypes for krb5_timeofday and krb5_os_localaddr from los-proto to func-proto. They are needed by the outside world, specifically kinit.c Fri Mar 10 14:23:12 1995 Theodore Y. Ts'o * krb5/sysincl.h: Removed definition of FD_SETSIZE, FD_SET, FD_CLR, FD_ISSET, and FD_ZERO. Defining them in favor of using the system include files is almost always wrong. 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 * krb5/func-proto.h (krb5_mk_req(), krb5_mk_req_extended(), krb5_rd_rep(), krb5_sendauth(), krb5_mk_priv(), krb5_rd_priv(), krb5_mk_safe(), and krb5_rd_safe()). Added a krb5_auth_context argument and eliminated many of the other arguments because they are included in the krb5_auth_context structure. * krb5/fieldbits.h Added #define AP_OPTS_USE_SUBKEY 0x00000001 for a new option to an ap req message. This is mainly a clean way to inform krb5_mk_req() and krb5_mk_req_extended() to create the subkey without adding an extra argument. * krb5/safepriv.h Replace safe/priv flags with flags for krb5_auth_context and add krb5_replay_data structure for when the appilication want to do it's own replay detection for safe and priv calls. Thu Mar 9 18:29:24 1995 Mark Eichin * krb5/Makefile.in (all-windows): tabs, not spaces. Tue Mar 7 14:54:02 1995 Keith Vetter (keithv@fusion.com) * krb5/ccache.h: added windows INTERFACE keyword to all functions. * krb5/encryption.h: more segment games for the PC--added NEAR to three external data objects. * krb5/wordsize.h: added constants VALID_INT_BTIS and VALID_UINT_BITS for detecting overflow when casting a long to an int. * krb5/k5-config.h: numerous PC changes such as adding NEED_LOWLEVEL_IO which enables the read/write level of I/O. * krb5/Makefile.in: osconf.h now pulled in from stock/osconf.win. 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 is not present, define u_long, etc, manually. * krb5/configure.in: Add checks for sys/types.h and sys/stat.h. * krb5/k5-config.h: Remove krb5/ from #include. * krb5/sysincl.h: Avoid . Conditional-include . Thu Mar 2 13:30:00 1995 Keith Vetter (keithv@fusion.com) * krb5/k5-config.h: changed NEED_WINSOCK_H to NEED_SOCKETS Wed Mar 1 20:00:00 1995 Keith Vetter (keithv@fusion.com) * krb5/func-proto.h: fixed up a const attribute to krb5_send_tgs. Wed Mar 1 17:40:00 1995 Keith Vetter (keithv@fusion.com) * krb5/func-proto.h: added missing prototype for krb5_mk_cred. * krb5/los-proto.h: added windows INTERFACE keyword to all functions, plus added 2 missing prototypes: krb5_os_init_context and krb5_os_free_context. Wed Mar 1 12:48:20 1995 Keith Vetter (keithv@fusion.com) * krb5/config.h: added defines to pull in winsock.h as needed * krb5/rcache.h: added windows INTERFACE keyword to all functions * krb5/winsock.h: new file--for windows socket stuff Wed Mar 1 17:45:13 1995 Theodore Y. Ts'o * krb5/configure.in, krb5/k5-config.h: Only define labs(x) -> abs(x) if labs() is not defined elsewhere. (This really shouldn't be here at all, but is the expedient way to deal with lack of labs().) * krb5/Makefile.in: Change config.h -> k5-config.h and free.h -> k5-free.h to reflect renamed header files for Mac/PC port. Mon Feb 27 23:47:58 1995 John Gilmore (gnu at toad.com) * krb5/Makefile.in (osconf.h): Remove temp file osconf.new. * krb5/krb5.h: Rename to krb5.h so it can be #included by end users without the use of slashes or extra -I options. First step in making it stand alone without a train of a dozen other include files tagging along behind. * krb5/base-defs.h, krb5/dbm.h, krb5/error_def.h, krb5/sysincl.h: Avoid #include form; use "..." form. * krb5/config.h: Rename to k5-config.h. This is too common a name, now that we use -I..../include/krb5. * krb5/free.h: Rename to k5-free.h. * krb5/configure.in (AC_INIT): Use another file (not krb5.h) as src test. Mon Feb 27 11:35:49 1995 Keith Vetter (keithv@fusion.com) * krb5/config.h: added windows interface keyword for varargs functions, added defines to allows to be stdc compliant. * krb5/func-proto.h: added windows INTERFACE_C keyword for functions with varargs, and fixed const in prototype for krb5_send_tgs. * krb5/preauth.h: added windows INTERFACE keyword to prototypes Wed Feb 22 18:31:12 1995 John Gilmore (gnu at toad.com) * k5-int.h: Remove commented-out and . * 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 Feb 22 17:39:46 1995 Chris Provenzano (proven@mit.edu) * krb5/func-proto.h (krb5_get_credentials(), krb5_get_cred_from_kdc(), and krb5_sendauth()) replaced krb5_cred * IN/OUT arg with a krb5_cred * IN and a krb5_cred ** OUT arg. * krb5/func-proto.h (krb5_mk_req_extended()) Remove kdc_options flag arg and krb5_ccache arg. They are no longer necessary. Wed Feb 22 01:45:17 1995 Keith Vetter (keithv@fusion.com) * krb5/keytab.h: added windows INTERFACE keyword to prototypes Tue Feb 21 17:31:06 1995 Keith Vetter (keithv@fusion.com) * krb5/config.h: added HAVE_ERRNO for the windows section changed windows manifest constant from __windows__ to _MSDOS so that DOS test programs will compile. Tue Feb 21 12:00:32 1995 Keith Vetter (keithv@fusion.com) * krb5/asn1.h: added windows INTERFACE keyword to all functions. Tue Feb 21 17:49:41 1995 Mark Eichin (eichin@cygnus.com) * krb5/config.h: get krb5/autoconf.h. * krb5/Makefile.in (KRB5_HEADERS): add config.h, remove rsa-md4.h and crc-32.h which aren't here anymore. Tue Feb 21 0:0:32 1995 Keith Vetter (keithv@fusion.com) * krb5/func-proto.h: added windows INTERFACE keyword to all functions. * krb5/krb5.h: moved two typedefs before inclusion of func-proto.h Mon Feb 20 16:54:51 1995 Keith Vetter (keithv@fusion.com) * krb5/encryption.h, krb5/los-proto.h, krb5/rsa-md5.h: added windows INTERFACE keyword. * krb5/Makefile.in: removed isode cruft ala Feb 10 changes but for windows Mon Feb 20 12:32:34 1995 John Gilmore (gnu at toad.com) * krb5/configure.in: Flip again. Use AC_CHECK_HEADERS, but default the symbol-setting. This is Modern Autoconf Style. * krb5/config.h: Create from stock/config.h and stock/config.win. * krb5/Makefile.in (BUILT_HEADERS): Remove config.h. (CONF_REPLACE, CONFSRC, config.h rule): Remove. Config.h is a static header file, ever since imake died. Now it really is. (clean): Don't remove config.new any more. Thu Feb 16 20:12:23 1995 John Gilmore (gnu at toad.com) * krb5/configure.in: Use AC_HAVE_HEADER rather than AC_HEADER_CHECK. (Fixes resulting #define names to HAVE_XXX rather than HAS_XXX, which is not only consistent but also matches what's in sysincl.h.) Mon Feb 6 19:42:7 1995 Keith Vetter (keithv@fusion.com) * krb5/configure.in: added header checks for sys/param.h and sys/file.h. * krb5/encryption.h: added typedef prototype for sum_func function with the windows api to make microsoft compiler happy. * krb5/sysincl.h: conditionally include sys/file.h and sys/param.h since windows doesn't have them. * krb5/Makefile.in: - changed macros with ${...} to $(...) since nmake barfs on {}. - added windows only make preamble - split the all target into unix and windows branches Fri Feb 10 14:54:26 1995 Theodore Y. Ts'o * krb5/asn1.h: Removed ISODE cruft -- moved included .h files into asn1.h, to simplify the krb5 header file structure. * krb5/Makefile.in (ET_HEADERS): Remove isode cruft. Mon Feb 06 17:19:04 1995 Chris Provenzano (proven@mit.edu) * krb5/func-proto.h (krb5_get_in_tkt()) Changed key_proc args to be the following (krb5_context, const krb5_keytype, krb5_data *, krb5_const_pointer, krb5_keyblock **) * krb5/func-proto.h (krb5_get_in_tkt_*()) Removed krb5_keytype, changed krb5_enctype to krb5_enctype *, changed krb5_preauthtype to krb5_preauthtype *. * krb5/func-proto.h Added new routine krb5_get_in_tkt_with_keytab(). Fri Feb 3 07:57:31 1995 Theodore Y. Ts'o (tytso@dcl) * krb5/configure.in: Use politically correct name of AC_CHECK_SIZEOF instead of AC_SIZEOF_TYPE. * krb5/configure.in: * krb5/wordsize.h: Don't use BITS16, BITS32, etc. anymore. Use autoconf's SIZEOF_INT and SIZEOF_LONG definitions to make things work. Mon Jan 30 15:43:19 1995 Chris Provenzano (proven@mit.edu) * krb5/func-proto.h Added krb5_keytype arg to rb5_rdreq_key_proc. * krb5/func-proto.h (krb5_send_tgs()) Changed krb5_enctype arg to krb5_enctype *, a NULL terminated array of encryption types. * krb5/func-proto.h Added prototypes for krb5_get_for_creds(), krb5_set_default_in_tkt_etypes(), and krb5_get_default_in_tkt_etypes(). * krb5/krb5.h Added fields to krb5_context to support default etypes. Fri Jan 27 00:56:12 1995 Chris Provenzano (proven@mit.edu) * krb5/func-proto.h (krb5_kt_read_service_key()) Added krb5_keytype arg. * krb5/keytab.h (krb5_kt_get_entry()) Add krb5_keytype arg. Fri Jan 27 00:56:12 1995 Chris Provenzano (proven@mit.edu) * krb5/base-defs.h Typedef krb5_boolean, krb5_msgtype, krb5_kvno, krb5_addrtype, krb5_keytyp, krb5_enctype, krb5_cksumtype, and krb5_authdatatype as unsigned int. * krb5/kdb_dbm.h krb5_dbm_db_set_lockmode(), krb5_dbm_db_set_nonblocking() Fix prototypes to use krb5_boolean and not int. * krb5/kdb.h krb5_db_set_lockmode(), krb5_db_set_nonblocking() Fix prototypes to use krb5_boolean and not int. 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. * krb5/crc-32.h: Move to lib/crypto/crc32; only gets local use. * krb5/rsa-md4.h: Move to lib/crypto/md4; only gets local use. Wed Jan 25 20:01:36 1995 Mark Eichin (eichin@cygnus.com) * krb5/configure.in: rewrote remaining tests to use AC_TRY_COMPILE and caching. Added cross-compile case for ANSI stdio test. Wed Jan 25 17:50:35 1995 Chris Provenzano (proven@mit.edu) * Removed krb5/narrow.h and krb5/widen.h Wed Jan 25 17:07:17 1995 Chris Provenzano (proven@mit.edu) * Removed all narrow types and references to wide.h and narrow.h * krb5/base-defs.h Typedef krb5_boolean, krb5_msgtype, krb5_kvno, krb5_addrtype, krb5_keytyp, krb5_enctype, krb5_cksumtype, and krb5_authdatatype as int. * krb5/kdb.h Made keytype in krb5_encrypted_keyblock explicitly short for backwards compatibility. Sun Jan 22 18:17:06 1995 John Gilmore (gnu@cygnus.com) * krb5/preauth.h, krb5/rsa-md5.h: Protect against multiple inclusion. Fri Jan 13 15:23:47 1995 Chris Provenzano (proven@mit.edu) * Added krb5_context to all krb5_routines * Removed DECLARG and OLDDECLARG from krb5/base-defs.h (and any file that was using it.) The next thing to do is make all narrow types wide types and remove narrow.h and wide.h. Thu Jan 12 01:55:54 1995 Mark Eichin * krb5/Makefile.in (install): constructed headers come from the build tree, not the source tree. Fri Dec 23 22:29:43 1994 Theodore Y. Ts'o (tytso@dcl) * krb5/krb5.h (krb5_cred): Add enc_part2 member which may point to the unecrypted version, if it's available. Mon Dec 19 21:53:33 1994 Theodore Y. Ts'o (tytso@dcl) * krb5/krb5.h (krb5_context): Add new typdef for krb5_context. * krb5/libos.h (krb5_os_context): Add new typedef for krb5_os_context. * krb5/func-proto.h (krb5_init_context, krb5_free_context): Add new declarations. * krb5/los-proto.h (krb5_init_os_context, krb5_free_os_context): Add new declarations. Wed Nov 30 16:16:54 1994 Theodore Y. Ts'o (tytso@dcl) * krb5/configure.in: Add support for --enable-athena and --with-krb4 (to set KRB5_KRB4_COMPAT). * krb5/Makefile.in: Remove remnants of unifdef support for building osconf.h and config.h, left over from the imake build system. Mon Nov 21 14:43:14 1994 Theodore Y. Ts'o (tytso@dcl) * krb5/func-proto.h (krb5_encode_kdc_rep, krb5_encrypt_tkt_part): Change to use new function prototypes. * krb5/encryption.h (krb5_eblock_keytype, krb5_eblock_enctype): Define new macros for finding the key type and encryption type of an encrypion block. Fri Nov 18 17:53:38 1994 Theodore Y. Ts'o (tytso@dcl) * krb5/kdb.h (KRB5_KDB_SUPPORT_DESMD5): Add new attribute which defines whether or not a server supports DES/MD5. Fri Nov 18 01:28:47 1994 Mark Eichin * krb5/Makefile.in (install): elide dependency so $(srcdir) works; use $(INSTALL_DATA). (ET_HEADERS): new variable for the names of the headers that lib/krb5/error_tables builds and installs here (so that they get pushed out to the installed include directory.) (BUILT_HEADERS): locally built headers, for all, install, and clean. (clean): delete built and et headers. Fri Nov 18 01:15:00 1994 Mark Eichin * krb5/configure.in: use KRB5_POSIX_LOCKS, AC_EGREP_HEADER. (from epeisach). Fri Nov 18 00:16:31 1994 Mark Eichin * configure.in: use WITH_CCOPTS. Thu Nov 10 22:04:19 1994 Theodore Y. Ts'o (tytso@dcl) * krb5/hostaddr.h (krb5_address): Add magic number field. Tue Nov 8 17:55:47 1994 Theodore Y. Ts'o (tytso@dcl) * krb5/encryption.h (krb5_string_to_key, krb5_random_key): Change internal calling signature to pass in the encryption block, so that the encryption type in the keyblock structure can be properly initialized. Thu Nov 3 16:38:44 1994 Theodore Y. Ts'o (tytso@dcl) * krb5/encryption.h (krb5_keyblock): Added a field to hold an encryption type in the keyblock field --- so routines have a hint of which encryption type they should use. * krb5/error_def.h: Add support for the kv5m error table. (For magic numbers.) Mon Oct 31 14:43:07 1994 Theodore Y. Ts'o (tytso@dcl) * krb5/configure.in: Move WITH_CCOPTS and WITH_KRB5ROOT to the beginning of the file. Otherwise the other tests won't get the CCOPTS flags correct while doing the feature tests. Tue Oct 25 23:54:25 1994 Theodore Y. Ts'o (tytso@dcl) * krb5/ext-proto.h (strdup): If the header files have strdup, don't try to redefine it. Fri Oct 14 00:40:01 1994 Theodore Y. Ts'o (tytso@dcl) * krb5/mit-des.h: Add declaration for krb5_des_md5_cst_entry. * krb5/mit-des.h: Change name of the des_crc cryptosystem from krb5_des_cst_entry to krb5_des_crc_cst_entry. Tue Oct 4 14:51:32 1994 Theodore Y. Ts'o (tytso@dcl) * krb5/encryption.h: Cast various potential shorts to ints. This is not quite right either, but the whole encryption interface needs to be fixed. * krb5/keytab.h (krb5_kt_ops.resolv): Resolve's first argument is a const. * krb5/encryption.h: Add magic number to encryption structures. Mon Oct 3 18:45:55 1994 Theodore Y. Ts'o (tytso@dcl) * krb5/kdb.h: Add magic number to _krb5_db_entry. (This among other things will cause a backwards incompatible change to the database format.) The previous magic number changes also force a database format change; we will eventually need to completely redo how we encode the database format, so that it isn't structure layout dependent! * krb5/Makefile.in: Fix install to obey ${DESTDIR}, copy conf.h and osconf.h from build tree. * krb5/Makefile.in: Fix "make install" to use $(srcdir) for header files. Thu Sep 29 15:07:30 1994 Theodore Y. Ts'o (tytso@dcl) * krb5/func_proto.h (krb5_realm_compare): Added prototype for functin donated by OpenVision. (Compares two realms). Wed Sep 21 18:10:55 1994 Theodore Y. Ts'o (tytso@dcl) * krb5/func_proto.h (krb5_check_transited_list): Added prototype for function donated by Cybersafe. Wed Aug 17 16:33:22 1994 Theodore Y. Ts'o (tytso at tsx-11) * krb5/krb5.h (krb5_enc_kdc_rep_part): Added msg_type field. Needed for the ASN.1 routines. Tue Aug 16 22:01:56 1994 Mark Eichin (eichin@cygnus.com) * krb5/configure.in: change test for USE_SYS_TIME_H to consistent (autoconf style) check for HAVE_SYS_TIME_H with TIME_WITH_SYS_TIME, and use them everywhere. * krb5/stock/osauto.h: get rid of USE_TIME_H. * krb5/stock/osconf.h: get rid of USE_TIME_H, rename USE_SYS_TIME_H. Tue Aug 9 02:17:40 1994 Tom Yu (tlyu@dragons-lair) * krb5/preauth.h: fix preauth function names as well (timestamp -> unixtime) Mon Aug 8 22:36:24 1994 Theodore Y. Ts'o (tytso at tsx-11) * krb5/proto.h: Change preauthentication names to match official names which bcn and I agreed upon. Tue Aug 2 03:39:14 1994 Tom Yu (tlyu@dragons-lair) * krb5/acconfig.h: add HAVE_SETVBUF * krb5/configure.in: changes to make things saner when checking for ANSI_STDIO Thu Jul 14 03:31:06 1994 Tom Yu (tlyu at dragons-lair) * krb5/Makefile.in: some cleanup to not echo cruft Tue Jun 28 19:09:21 1994 Tom Yu (tlyu at dragons-lair) * krb5/error_def.h: folding in Harry's changes * krb5/asn1.h: ditto * krb5/configure.in: adding ISODE_DEFS, fixing ISODE_INCLUDE to dtrt Tue Jun 21 23:54:40 1994 Tom Yu (tlyu at dragons-lair) * pulling SEEK_SET, etc. out to avoid redef'ing in unistd.h Tue Jun 21 00:50:46 1994 Mark W. Eichin (eichin at mit.edu) * krb5/sysincl.h: SEEK_SET et. al. defined in terms of L_SET et. al. if they don't already exist.