Ken Raeburn [Thu, 28 Oct 2004 05:40:00 +0000 (05:40 +0000)]
* 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.
Tom Yu [Wed, 27 Oct 2004 22:12:48 +0000 (22:12 +0000)]
* misc.c, misc.h: New function check_min_life(), containing common
code from wrapper functions. New function chpass_util_wrapper(),
which does min_life checking prior to calling
kadm5_chpass_principal_util().
Ken Raeburn [Wed, 27 Oct 2004 00:07:20 +0000 (00:07 +0000)]
Permit exporting profile file data into a buffer
* prof_file.c (profile_flush_file_data_to_buffer): New function.
* profi_init.c (profile_flush_to_buffer, profile_free_buffer): New functions.
* prof_parse.c (output_quoted_string): Use a callback instead of stdio calls.
(dump_profile): Renamed from dump_profile_to_file. Use a callback instead of
stdio calls.
(dump_profile_to_file_cb): New function.
(profile_write_tree_file): Updated to new internal interface.
(struct prof_buf): New type.
(add_data_to_buffer, dump_profile_to_buffer_cb, profile_write_tree_to_buffer):
New functions.
* prof_int.h (profile_write_tree_to_buffer, profile_flush_file_data_to_buffer):
Declare.
* profile.hin (profile_flush_to_buffer, profile_free_buffer): Declare.
* libprofile.exports: Export profile_flush_to_buffer and profile_free_buffer.
* profile.swg (profile_flush_to_buffer): Declare.
* profile_tcl.c: Regenerated.
Ken Raeburn [Fri, 22 Oct 2004 19:07:45 +0000 (19:07 +0000)]
* prof_file.c (profile_update_file_data): When resetting flags, preserve SHARED
flag.
(scan_shared_trees_locked, scan_shared_trees_unlocked): Convert to macros, so
line numbers reported by assert will be useful.
* prof_test1 (test2): Run new test of modifications with other existing open
profile handles.
Ken Raeburn [Thu, 21 Oct 2004 00:27:14 +0000 (00:27 +0000)]
* locate_kdc.c: Include stdarg.h.
(Tprintf): New function, prints to stderr or not depending on TEST macro.
(add_addrinfo_to_list, krb5int_add_host_to_list, krb5_locate_srv_conf_1,
krb5_locate_srv_dns_1, krb5int_locate_server): Call it instead of conditionally
calling fprintf.
Tom Yu [Tue, 19 Oct 2004 18:09:53 +0000 (18:09 +0000)]
* dnsglue.c (initparse): Skip query type and class when we lack
ns_initparse().
(krb5int_dns_nextans) [!HAVE_NS_INITPARSE]: Pass correct pointer
to dn_skipname(). Actually skip the RR name.
Ken Raeburn [Mon, 18 Oct 2004 23:14:51 +0000 (23:14 +0000)]
Allow profile library caller to write the modified data to a different
file than was originally read.
* prof_file.c (write_data_to_file): New function, split out from
profile_flush_file_data. Add argument can_create indicating whether the old
file should already exist or not.
(profile_flush_file_data): Call it.
(profile_flush_file_data_to_file): New function.
* prof_int.h (profile_flush_file_data_to_file): Declare it.
(profile_flush_file_to_file): New macro.
* prof_init.c (profile_flush_to_file): New function.
* profile.hin (profile_flush_to_file): Declare.
* profile.swg (profile_flush_to_file): Declare.
* profile_tcl.c: Regenerated.
* prof_test1: Use profile_flush_to_file instead of profile_flush, and reload
from the new filename.
Ken Raeburn [Fri, 15 Oct 2004 23:58:17 +0000 (23:58 +0000)]
* prof_file.c, prof_int.h, prof_set.c: Remove support for non-SHARE_TREE_DATA
case.
* prof_int.h (struct _prf_data_t): Change filespec to a trailing char array.
Add a length field for the filespec.
(profile_make_prf_data): Declare.
(profile_lock_global, profile_unlock_global): Prototypes need argument lists.
* prof_file.c: Include stddef.h.
(scan_shared_trees_locked, scan_shared_trees_unlocked): New functions.
(r_access, rw_access): Now take const_profile_filespec_t arg.
(profile_make_prf_data): New function.
(profile_open_file): Scan trees at beginning and end. Use
profile_make_prf_data to allocate and initialize storage.
(profile_dereference_data, profile_free_file_data): Scan trees.
(profile_ser_size, profile_ser_externalize): Filespec is never null.
* prof_set.c (rw_setup): Use profile_make_prf_data to allocate and initialize
storage.
* prof_file.c (profile_library_initializer, profile_library_finalizer): Added macros to avoid adding error tables on platforms that don't use them (ie: OSX)
krb5_string_to_deltat should default to seconds if no unit is provided. If the format is invalid, it should return a distinct error (KRB5_DELTAT_BADFORMAT, not EINVAL)
Ken Raeburn [Wed, 6 Oct 2004 23:39:12 +0000 (23:39 +0000)]
* localaddr.c (foreach_localaddr): Be more careful not to walk past the end of
the ifreq array.
(get_ifreq_array): Return 0 in success case, not errno.
Ken Raeburn [Wed, 6 Oct 2004 01:10:09 +0000 (01:10 +0000)]
* aclocal.m4 (KRB5_AC_ENABLE_THREADS): On HP-UX, define some preprocessor
symbols that -pthread defines, but don't use -pthread so we can avoid forcing
linking against pthread libraries.
Ken Raeburn [Tue, 5 Oct 2004 21:24:01 +0000 (21:24 +0000)]
* localaddr.c (foreach_localaddr) [HAVE_STRUCT_IF_LADDRCONF && 0]: Fix
if_laddrreq.iflr_name field name not properly adjusted. The iflr_addr field is
an HP-UX specific sockaddr_ext with sa_ field name prefixes.
Ken Raeburn [Fri, 1 Oct 2004 23:44:49 +0000 (23:44 +0000)]
* localaddr.c (get_if_laddrconf, foreach_localaddr): New implementation for
HP-UX 11, based on Solaris support and information from Doug Engert. Disabled
for now, until it can be tested.
Ken Raeburn [Thu, 23 Sep 2004 23:26:25 +0000 (23:26 +0000)]
* prof_tree.c (struct profile_node): Add new bitfield DELETED.
(profile_add_node): Move variable CMP into inner block where it's used. Clear
deleted flag.
(profile_find_node): Skip deleted nodes.
(profile_remove_node): Just set the deleted flag, don't modify the tree.
* Makefile.in (profile_tcl.c): Target should be in srcdir.
(profile_tcl.o): Depend on profile.h.
(DO_TCL): New variable.
(check-unix-tcl-, check-unix-tcl-ok): New targets.
(check-unix): Depend on one of them, based on DO_TCL.
* configure.in: Set and substitute DO_TCL.
* prof_test1: New file.
Ken Raeburn [Thu, 23 Sep 2004 22:16:13 +0000 (22:16 +0000)]
* profile.swg: Only include tclsh.i if building for Tcl.
(Tcl_SetResult, my_tcl_setresult): Compile hack only if building for Tcl.
(%typemap SWIGTYPE *OUTPUT): Initialization is not specific to the scripting
language. Add Python code.
(%typemap errcode_t, errcode_t*): Add placeholders for Python support.
Ken Raeburn [Thu, 23 Sep 2004 00:25:30 +0000 (00:25 +0000)]
* lib.in (binutils.versions, osf1.exports): New file targets.
(clean-libs): Delete them.
* pre.in (SHLIB_EXPORT_FILE_DEP): Use @SHLIB_EXPORT_FILE_DEP@.
* shlib.conf: Set it to $(SHLIB_EXPORT_FILE) by default.
(alpha*-dec-osf*): Use osf1.exports instead of adding commands to generate a
temporary file.
(*-*-linux*, *-*-gnu*, *-*-k*bsd*-gnu): Use binutils.versions.
Ken Raeburn [Thu, 23 Sep 2004 00:21:34 +0000 (00:21 +0000)]
* aclocal.m4 (AC_KRB5_TCL_FIND_CONFIG): If the config info set by tclConfig.sh
doesn't produce a working executable, set TCL_LIBS to be empty explicitly.
(KRB5_BUILD_LIBRARY_WITH_DEPS): Substitute SHLIB_EXPORT_FILE_DEP.
Sam Hartman [Tue, 21 Sep 2004 20:39:19 +0000 (20:39 +0000)]
memory leak in arcfour string_to_key
Derrick Schommer reports that arcfour's string_to_key function leaks
memory. This is true; it copies the password to convert to utf16 and
never frees the copy. It does memset the copy to 0 when done.
Tom Yu [Fri, 17 Sep 2004 17:02:53 +0000 (17:02 +0000)]
* aclocal.m4 (AC_LIBRARY_NET): Look for res_search() prototype,
then for symbol in library, in case there's symbol renaming
happening in the headers. Clean up some style nits.
* kfw-fixed.nsi:
The version of MSIEXEC which ships with Windows 2000 does
not accept the /passive and /promptreboot command line
options. On Windows 2000 only, do not specify them.
Tom Yu [Tue, 14 Sep 2004 22:25:07 +0000 (22:25 +0000)]
* aclocal.m4 (AC_LIBRARY_NET): Require the BIND_8_COMPAT check
prior to looking for prototypes, as BIND 9 (at least on Panther)
turns off some prototypes and typedefs if BIND_8_COMPAT is
defined.
utils.nsi: Fix RestartRequired function to actually determine
if a restart is required
kfw-fixed.nsi:
- Add support for compiler version 1400
- Fix terminal server key deletions
- Delete leash32.exe on uninstall
- Correct the logic of the call of RestartRequired
Tom Yu [Fri, 10 Sep 2004 22:37:07 +0000 (22:37 +0000)]
* 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.
* cc_mslsa.c: The following functionality is being committed
but commented out because it is not presently
available in public Microsoft SDKs
- support for KerbSubmitTicket which allows a KERB_CRED
message to be forwarded to the LSA. (KERB_SUBMIT_TICKET)
- support for the KerbQueryTicketCacheEx2Message which
adds the Session Key Enctype to the contents of the
response from KerbQueryTicketCacheExMessage.
(HAVE_CACHE_INFO_EX2)