Tom Yu [Tue, 25 May 2004 21:48:02 +0000 (21:48 +0000)]
* aesopt.h (PLATFORM_BYTE_ORDER): Treat _WIN32 as always
little-endian. Default to little-endian if there's no other
compile-time way to detect endianness, noting it as a guess.
(SAFE_IO): Error out if SAFE_IO is not set and endianness was
guessed.
ticket: 2564
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16362
dc483132-0cff-0310-8789-
dd5450dbe970
Ezra Peisach [Tue, 25 May 2004 18:09:45 +0000 (18:09 +0000)]
* keytab.c (krb5_ktkdb_get_entry): Change local variable rom int
to krb5_boolean to match prototype for as argument to
krb5_c_enctype_compare.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16361
dc483132-0cff-0310-8789-
dd5450dbe970
Ezra Peisach [Tue, 25 May 2004 18:07:49 +0000 (18:07 +0000)]
* conv_creds.c (krb5int_encode_v4tkt): Unsigned vs signed warning fix
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16360
dc483132-0cff-0310-8789-
dd5450dbe970
Ezra Peisach [Tue, 25 May 2004 18:06:13 +0000 (18:06 +0000)]
* aes.c (krb5int_aes_encrypt): Signed/unsigned warning fix
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16359
dc483132-0cff-0310-8789-
dd5450dbe970
Ezra Peisach [Mon, 24 May 2004 21:04:34 +0000 (21:04 +0000)]
* t_encrypt.c (compare_results): Declare static.
(main): Free allocated memory before exit.
* t_nfold.c (fold_kerberos): Change nbytes argument to unsigned.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16358
dc483132-0cff-0310-8789-
dd5450dbe970
Ezra Peisach [Mon, 24 May 2004 20:41:23 +0000 (20:41 +0000)]
krb5_rc_io_open_internal might try to invoke with negative argument
* rc_io.c (krb5_rc_io_open_internal): If file could not be open,
do not invoke close negative argument.
Ticket: new
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16357
dc483132-0cff-0310-8789-
dd5450dbe970
Ezra Peisach [Mon, 24 May 2004 20:24:23 +0000 (20:24 +0000)]
* t_ser.c (ser_keytab_test): Cleanup memory leak of forgetting to
close keytab.
* chpw.c: Add parenthesis around assignments in conditionals.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16356
dc483132-0cff-0310-8789-
dd5450dbe970
Ezra Peisach [Mon, 24 May 2004 19:53:16 +0000 (19:53 +0000)]
* t_cc.c (cc_test): Clean up memory leaks in tests
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16355
dc483132-0cff-0310-8789-
dd5450dbe970
Ezra Peisach [Mon, 24 May 2004 19:45:01 +0000 (19:45 +0000)]
* configure.in: When generating prtest, use AC_CONFIG_FILES
instead of K5_GEN_FILE so that a chmod may be added to make the
script executable.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16354
dc483132-0cff-0310-8789-
dd5450dbe970
Ezra Peisach [Mon, 24 May 2004 19:43:17 +0000 (19:43 +0000)]
(main): Invoke krb5_free_context at exit to allow
checking for memory leaks.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16353
dc483132-0cff-0310-8789-
dd5450dbe970
Ezra Peisach [Mon, 24 May 2004 19:33:33 +0000 (19:33 +0000)]
* kdb5_mkdums.c (main): Fix memory leak of master principal at exit
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16352
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Sun, 23 May 2004 17:20:09 +0000 (17:20 +0000)]
Use compile-time tests using system headers to determine byte order on AIX.
(cf ticket 2551, already pulled up and marked resolved)
* configure.in: Check for sys/param.h too.
* include/db-int.h: Include sys/param.h if available.
ticket: new
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16351
dc483132-0cff-0310-8789-
dd5450dbe970
Jeffrey Altman [Mon, 17 May 2004 14:48:14 +0000 (14:48 +0000)]
* kfw.nsi, kfw-fixed.nsi, utils.nsi:
- replace the UpdateDLL macro with the ReplaceDLL macro
- use ReplaceDLL to install all .exe and .dll files
this will allow the installer to work even when some files
are loaded by modules which cannot be terminated such as
Network Providers (afslogon.dll for example)
ticket: new
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16340
dc483132-0cff-0310-8789-
dd5450dbe970
Jeffrey Altman [Sat, 15 May 2004 12:57:05 +0000 (12:57 +0000)]
The memory allocated by ConstructTicketRequest is not LSA memory
and must be freed with LocalFree().
ticket: 2561
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16339
dc483132-0cff-0310-8789-
dd5450dbe970
Jeffrey Altman [Sat, 15 May 2004 04:08:08 +0000 (04:08 +0000)]
2004-05-15 Jeffrey Altman <jaltman@mit.edu>
* cc_mslsa.c:
Do not use the FAILED() macro to test the result of ConstructTicketRequest().
ConstructTicketRequest() returns positive errors and FAILED() only considers
negative values to be a failure condition.
Also, close potential memory leak of LSA allocated memory.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16338
dc483132-0cff-0310-8789-
dd5450dbe970
Alexandra Ellwood [Fri, 14 May 2004 21:14:22 +0000 (21:14 +0000)]
Pass architecture environment to krb5 build system
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16336
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Thu, 13 May 2004 08:11:35 +0000 (08:11 +0000)]
* libgssapi_krb5.exports: Remove et_*, generic_*, gssint_*, initialize_*, kg_* symbols
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16333
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Thu, 13 May 2004 04:38:58 +0000 (04:38 +0000)]
Link test programs against thread support library
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16332
dc483132-0cff-0310-8789-
dd5450dbe970
Jeffrey Altman [Thu, 13 May 2004 03:16:24 +0000 (03:16 +0000)]
* send_tgs.c: krb5_send_tgs() was broken in the case of a KRB_ERROR
message. The krb5_response message_type field was never set
resulting in stack garbage being used instead. This would
break code which used transitive cross-realm to obtain service
tickets.
ticket: new
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16331
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Thu, 13 May 2004 02:25:22 +0000 (02:25 +0000)]
* k5-thread.h: On IRIX, with threads enabled, reject gcc older than v3
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16330
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Thu, 13 May 2004 02:24:29 +0000 (02:24 +0000)]
* k5-thread.h: On IRIX, if gcc is older than v3, tell the user to get a newer
one, and error out.
(We need weak reference support for pthread_once, gcc 2.95 doesn't
support them, but gcc 3, which has been out for nearly 3 years, does.)
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16329
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Thu, 13 May 2004 00:57:34 +0000 (00:57 +0000)]
* shlib.conf (*-*-linux*): Use GNU linker's --retain-symbols-file option to
implement export list.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16328
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Thu, 13 May 2004 00:50:15 +0000 (00:50 +0000)]
* Makefile.in (DEPLIBS, MLIBS, SHLIB_EXPDEPS, SHLIB_EXPLIBS): Add the new support library
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16327
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Thu, 13 May 2004 00:49:11 +0000 (00:49 +0000)]
* libk5crypto.exports: Add the DES tables back in; libdes425 uses them directly
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16326
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Fri, 7 May 2004 23:29:38 +0000 (23:29 +0000)]
* configure.in: Check for endian.h and machine/endian.h.
* aes/aesopt.h (PLATFORM_BYTE_ORDER): Check for _MIPSEB, _MIPSEL. If endian.h
or machine/endian.h is available, include it instead of sys/param.h. Don't
mess around with multibyte character constants.
ticket: 2551
status: open
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16323
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Fri, 7 May 2004 23:26:43 +0000 (23:26 +0000)]
* configure.in: Check for machine/endian.h too.
* include/db-int.h: Include machine/endian.h if available. Check for
__LITTLE_ENDIAN__ and __BIG_ENDIAN__, _MIPSEB and _MIPSEL.
ticket: 2551
status: open
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16322
dc483132-0cff-0310-8789-
dd5450dbe970
Sam Hartman [Fri, 7 May 2004 19:18:17 +0000 (19:18 +0000)]
Patch from Matt Crawford to allow matching on realm in cross-realm
authentication for krb5_aname_to_lname.
Ticket: 957
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16321
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Thu, 6 May 2004 03:15:37 +0000 (03:15 +0000)]
* threads.c (krb5int_thread_support_fini) [!ENABLE_THREADS]: Provide a dummy
function for now.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16320
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Thu, 6 May 2004 03:13:56 +0000 (03:13 +0000)]
* fake-addrinfo.c: Deleted
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16319
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Thu, 6 May 2004 02:28:25 +0000 (02:28 +0000)]
Start using our first bit of per-thread storage
* error_message.c (buffer): Static variable deleted.
(com_err_initialize): Register cleanup support for com_err thread-specific data
key.
(error_message): Use a per-thread dynamically-allocated buffer instead of
static storage, for the case where an unknown error code is given. If any
errors occur allocating or tracking the buffer, return a fixed message.
* t_com_err.c: Include stdlib.h. If TEST_THREADS is defined, include
pthread.h.
(run): Renamed from main, changed signature.
(main): New function. Just call run, or if TEST_THREADS is defined, create a
thread to call it.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16318
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Thu, 6 May 2004 01:33:56 +0000 (01:33 +0000)]
Since the AES code builds, and doesn't do any configure-time byte order checks
that I noticed, something similar ought to work for the DB code. This is the
first cut; nightly testing builds should tell us if it's sufficient on most of
the platforms we work on.
* include/db-int.h: Include stdlib.h, and endian.h if available.
(LITTLE_ENDIAN, BIG_ENDIAN, BYTE_ORDER): If not defined, and if versions with
one or two leading underscores are defined, define the no-underscore form in
terms of the with-underscore one.
(DB_BYTE_ORDER): Define by checking LITTLE_ENDIAN, BIG_ENDIAN, and BYTE_ORDER;
report an error if that doesn't work. Don't check WORDS_BIGENDIAN.
* Makefile.in (all-prerecurse): Make sure headers generated by config.status
are up to date.
(include/config.h, $(srcdir)/include/config.h.in, include/db-config.h): New
rules.
* configure.in: Don't check byte order here. Check for endian.h.
ticket: 2551
status: open
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16317
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Thu, 6 May 2004 00:12:52 +0000 (00:12 +0000)]
* libkrb5.exports: Export krb5int_foreach_localaddr for now
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16316
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Wed, 5 May 2004 22:50:42 +0000 (22:50 +0000)]
* libobj.in (OBJS.ST, OBJS.SH, OBJS.PF): Depend on Makefile
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16315
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Wed, 5 May 2004 22:44:46 +0000 (22:44 +0000)]
Rename header file foreachaddr.c to foreachaddr.h, now that it isn't
mostly static functions to be compiled in.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16314
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Wed, 5 May 2004 22:37:38 +0000 (22:37 +0000)]
build dependencies
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16313
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Wed, 5 May 2004 22:33:23 +0000 (22:33 +0000)]
* pre.in (SUPPORT_LIBNAME, SUPPORT_DEPLIB, SUPPORT_LIB): New variables.
(KRB5_BASE_LIBS): Add $(SUPPORT_LIB).
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16312
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Wed, 5 May 2004 22:21:35 +0000 (22:21 +0000)]
* localaddr.c: Incorporate foreach_localaddr implementation. Export it as
krb5int_foreach_localaddr.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16311
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Wed, 5 May 2004 22:18:01 +0000 (22:18 +0000)]
* foreachaddr.c: Implementation moved to lib/krb5/os/localaddr.c.
(krb5int_foreach_localaddr): Declare.
(foreach_localaddr): New macro.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16310
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Wed, 5 May 2004 22:10:39 +0000 (22:10 +0000)]
* foreachaddr.c: Deleted. Code moved to lib/krb5/os/localaddr.c.
* Makefile.in (SRCS, STLIBOBJS): Updated.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16309
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Wed, 5 May 2004 01:19:43 +0000 (01:19 +0000)]
* configure.in: Enable dependency support for shared lib.
* Makefile.in (test_et, t_com_err): Depend on, and link against, the new
support library.
(SHLIB_EXPDEPS, SHLIB_EXPLIBS, SHLIB_RDIRS, SHLIB_DIRS): New variables.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16308
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Wed, 5 May 2004 01:16:27 +0000 (01:16 +0000)]
* Makefile.in (SHLIB_EXPLIBS): Include $(LIBS).
(SHLIB_RDIRS): Use $(KRB5_LIBDIR), for lack of anything better.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16307
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Wed, 5 May 2004 01:14:53 +0000 (01:14 +0000)]
* configure.in: Include dependency support for shared library build
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16306
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Wed, 5 May 2004 00:47:59 +0000 (00:47 +0000)]
* threads.c (k5_key_register, destructors, k5_setspecific) [!ENABLE_THREADS]:
Update to fit declarations.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16305
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Wed, 5 May 2004 00:31:38 +0000 (00:31 +0000)]
* Makefile.in (LOCAL_SUBDIRS): Build support library
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16304
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Wed, 5 May 2004 00:26:37 +0000 (00:26 +0000)]
* configure.in: Generate a makefile in util/support
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16303
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Wed, 5 May 2004 00:21:22 +0000 (00:21 +0000)]
exports list
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16302
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Wed, 5 May 2004 00:19:13 +0000 (00:19 +0000)]
* foreachaddr.c: New file, based on include/foreachaddr.c
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16301
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Tue, 4 May 2004 23:35:35 +0000 (23:35 +0000)]
fix lib name; add fini func
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16300
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Tue, 4 May 2004 22:40:07 +0000 (22:40 +0000)]
* New directory.
* Makefile.in: New file.
* threads.c: New file. Thread-specific data support.
* fake-addrinfo.c: New file. Placeholder.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16299
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Tue, 4 May 2004 19:38:18 +0000 (19:38 +0000)]
Make com_err tests exercise the shared-library support
* configure.in: Invoke KRB5_BUILD_PROGRAM and KRB5_RUN_FLAGS.
* Makefile.in (PROG_RPATH, PROG_LIBPATH, RUN_SETUP): New variables.
(test_et, t_com_err): Use the built library, even if shared.
(check-unix): Set up the environment properly to load shared libraries when
running the test programs.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16298
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Tue, 4 May 2004 19:22:53 +0000 (19:22 +0000)]
* shlib.conf (alpha*-dec-osf*): Do remember to set use_linker_init_option and
use_linker_fini_option.
(mips-sgi-irix*): Set LDCOMBINE_TAIL only if not using gcc.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16297
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Mon, 3 May 2004 05:57:37 +0000 (05:57 +0000)]
* rc_dfl.c (krb5_rc_dfl_expunge_locked): Declare before use
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16296
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Sat, 1 May 2004 01:43:15 +0000 (01:43 +0000)]
Use the new mutex in the replay cache structure
Rather coarse at the moment: While one thread is blocking waiting for data to
be flushed to disk, another thread is unnecessarily prevented from scanning the
in-memory data.
* rc_base.c (krb5_rc_resolve_type): Initialize the mutex in the replay cache
structure.
(krb5_rc_default, krb5_rc_resolve_full): Destroy it if creation of the replay
cache fails.
* rc_dfl.c (krb5_rc_dfl_get_span, krb5_rc_dfl_init): Lock the mutex while
operating on the replay cache object.
(krb5_rc_dfl_expunge_locked): Renamed from krb5_rc_dfl_expunge and made static.
Call krb5_rc_dfl_recover_locked.
(krb5_rc_dfl_expunge): New wrapper function, locks the mutex.
(krb5_rc_dfl_recover_locked): Renamed from krb5_rc_dfl_recover and made static.
Call krb5_rc_dfl_expunge_locked.
(krb5_rc_dfl_recover): New wrapper function, locks the mutex.
(krb5_rc_dfl_store): Lock the mutex. Call _expunge_locked.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16295
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Sat, 1 May 2004 01:31:14 +0000 (01:31 +0000)]
* prng.c (krb5int_prng_cleanup): Destroy the mutex
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16294
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Sat, 1 May 2004 01:29:44 +0000 (01:29 +0000)]
Update mutex debug code to be somewhat compatible with multi-threaded
execution. It won't be as useful in single-threaded programs for detecting
bugs in the mutex handling for now, though.
* 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.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16293
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Sat, 1 May 2004 00:05:55 +0000 (00:05 +0000)]
* Makefile.in (LIBINITFUNC, LIBFINIFUNC): New variables
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16292
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Sat, 1 May 2004 00:00:45 +0000 (00:00 +0000)]
update dependencies
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16291
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Sat, 1 May 2004 00:00:02 +0000 (00:00 +0000)]
Add a mutex for the shared static storage used by Yarrow
* crypto_libinit.c (initialized): Variable deleted.
(cryptoint_initialize_library, cryptoint_cleanup_library): Use new macros for
automatic shared library init/fini functions.
(prng_cleanup): Declaration deleted.
(krb5int_prng_init, krb5int_prng_cleanup): Declare.
(cryptoint_initialize_library): Call krb5int_prng_init.
(krb5int_crypto_init): New function, checks that cryptoint_initialize_library
was called successfully.
(cryptoint_cleanup_library): Call krb5int_prng_cleanup only if the initializer
ran.
* crypto_libinit.h: Deleted.
* prng.c: Include k5-thread.h.
(init_once, init_error, yarrow_lock): New variables.
(krb5int_prng_init): New function; finish initializing the mutex lock.
(do_yarrow_init): New function.
(krb5_c_random_add_entropy): Call it once only. Lock the mutex before
processing the input.
(krb5_c_random_make_octets): Lock the mutex before extracting random bytes.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16290
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Fri, 30 Apr 2004 22:53:38 +0000 (22:53 +0000)]
* k5-int.h: Include k5-thread.h.
(struct krb5_rc_st): Add a mutex.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16289
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Fri, 30 Apr 2004 07:12:56 +0000 (07:12 +0000)]
* libk5crypto.exports: Drop the library init/fini functions and the DES tables
from the export list.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16288
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Fri, 30 Apr 2004 00:59:37 +0000 (00:59 +0000)]
* shlib.conf (alpha*-dec-osf*): Add support for export list, using a temporary
file, and init/fini functions.
(mips-sgi-irix*): Previous support should not be used with gcc.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16287
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Fri, 30 Apr 2004 00:57:01 +0000 (00:57 +0000)]
* aclocal.m4 (CONFIG_RULES): Substitute EXTRA_FILES into pre.in
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16286
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Fri, 30 Apr 2004 00:55:54 +0000 (00:55 +0000)]
* pre.in (EXTRA_FILES): New variable.
* post.in (clean-unix): Delete extra files.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16285
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Thu, 29 Apr 2004 22:51:10 +0000 (22:51 +0000)]
updated dependencies
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16284
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Thu, 29 Apr 2004 22:47:28 +0000 (22:47 +0000)]
* debug.h (test): Macro renamed from "assert".
* krb5_decode_test.c, krb5_encode_test.c: Callers updated.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16283
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Thu, 29 Apr 2004 06:54:23 +0000 (06:54 +0000)]
* 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.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16282
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Thu, 29 Apr 2004 06:50:17 +0000 (06:50 +0000)]
* shlib.conf: Initialize use_linker_init_option and use_linker_fini_option to
no.
(mips-sgi-irix*): Add link-time support for library initialization and
finalization.
(*-*-solaris*): Likewise, for native compiler. Change "pic" mode to "PIC",
libkrb5 seems to need it now.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16281
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Thu, 29 Apr 2004 06:46:00 +0000 (06:46 +0000)]
* aclocal.m4 (CONFIG_RULES): Invoke KRB5_LIB_PARAMS and KRB5_AC_INITFINI.
(KRB5_AC_INITFINI): New macro. Define delayed-initialization config option,
test for gcc constructor/destructor attribute support, and test whether
shlib.conf indicates support for link-time options.
(KRB5_AC_GCC_ATTRS): Implement.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16280
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Thu, 29 Apr 2004 06:29:47 +0000 (06:29 +0000)]
* error_message.c (com_err_terminate): Free heap storage in et_list_dynamic
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16279
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Thu, 29 Apr 2004 06:21:55 +0000 (06:21 +0000)]
* Makefile.in (LIBINITFUNC, LIBFINIFUNC): New variables
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16278
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Wed, 28 Apr 2004 22:03:46 +0000 (22:03 +0000)]
* libobj.in (.c.so): Add -DSHARED to compile options
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16277
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Mon, 26 Apr 2004 19:28:43 +0000 (19:28 +0000)]
* aclocal.m4 (KRB5_BUILD_LIBRARY_WITH_DEPS): Report an error if perl cannot be found
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16276
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Mon, 26 Apr 2004 19:20:45 +0000 (19:20 +0000)]
* lib.in (PARSE_OBJLISTS): New variable.
(lib$(LIB)$(STLIBEXT), lib$(LIB)$(SHLIBVEXT), lib$(LIB)$(PFLIBEXT)): Use it.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16275
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Mon, 26 Apr 2004 05:36:49 +0000 (05:36 +0000)]
* shlib.conf (INIT_FINI_PREP): New variable. Default to a no-op, but let each
platform set setup routines to process initialization and finalization options
for the default MAKE_SHLIB_COMMAND value.
(case mips-sgi-irix*): Define LDCOMBINE_TAIL to use the library's export list.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16274
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Sat, 24 Apr 2004 22:39:54 +0000 (22:39 +0000)]
update dependencies
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16273
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Sat, 24 Apr 2004 22:38:30 +0000 (22:38 +0000)]
Handle the somewhat common fixed case of time value 0 more efficiently
* asn1_decode.c (asn1_decode_generaltime): If the input string is the magic
UNIX time zero, bypass all the arithmetic and return 0.
* asn1_encode.c (asn1_encode_generaltime): If the input time value is the UNIX
epoch, use a hardcoded string instead of doing the math.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16272
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Sat, 24 Apr 2004 22:27:47 +0000 (22:27 +0000)]
* conv_creds.c (krb524_init_ets, krb524_convert_creds_kdc): Add forward declarations to silence gcc warnings
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16271
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Sat, 24 Apr 2004 22:23:24 +0000 (22:23 +0000)]
update dependencies
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16270
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Sat, 24 Apr 2004 22:20:55 +0000 (22:20 +0000)]
updated dependencies
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16269
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Sat, 24 Apr 2004 21:09:44 +0000 (21:09 +0000)]
Added support for library initialization and finalization, and verification
that the initializer completed successfully. Delay initialization on POSIX
until the first "verification" call. Currently specific to a few platforms,
but should still build on others without thread support enabled.
Use it to finish creating (if necessary) and destroy mutexes, and free some
other storage "permanently" allocated by libraries (currently, libkrb5
cache/keytab type registries only). Change initialization of static mutexes to
a two-step operation, a static "partial" initializer and a "finish_init"
routine called from a thread-safe environment like library initialization is
assumed to be. POSIX will use the former, Windows will use the latter, and the
debug support will check that *both* have been used.
Added init/fini functions to com_err, profile, krb5, and gssapi libraries.
(The profile library one may need to be removed later.) The existing ones, not
thread-safe, are still around.
Use weak symbol support if available to figure out if the pthread library has
been linked in, and avoid calling certain routines if the C library stubs are
known not to exist or work.
Stub declarations for thread-specific data.
Minor bugfixes, whitespace changes.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16268
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Sat, 24 Apr 2004 20:22:31 +0000 (20:22 +0000)]
* gssapi_krb5.c (kg_get_ccache_name): Don't test err while it's still known to
be 0.
(kg_set_ccache_name): Likewise. Return after an error rather than continuing.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16267
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Sat, 24 Apr 2004 04:44:02 +0000 (04:44 +0000)]
Start depending on perl for builds
* aclocal.m4 (KRB5_BUILD_LIBRARY_WITH_DEPS): Look for perl.
* config/pre.in (PERL): New variable.
* config/lib.in (lib$(LIB)$(SHLIBVEXT)): Use one perl invocation rather than
n+1 sed invocations.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16266
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Fri, 23 Apr 2004 00:59:19 +0000 (00:59 +0000)]
* libupdate.sh: Deleted.
* Makefile.in (libupdate, makeshlib): Targets deleted.
(all-recurse): Don't depend on them.
(clean): Don't try to delete them.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16265
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Fri, 23 Apr 2004 00:46:26 +0000 (00:46 +0000)]
* makeshlib.conf: Deleted
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16264
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Fri, 23 Apr 2004 00:43:15 +0000 (00:43 +0000)]
Use more flexible command substitution for shared library generation, so we can
dump makeshlib.sh. Use the new saved export list files for AIX.
* aclocal.m4 (KRB5_BUILD_LIBRARY_WITH_DEPS): Substitute MAKE_SHLIB_COMMAND, not
LDCOMBINE and LDCOMBINE_TAIL.
* pre.in (DO_MAKE_SHLIB, SHLIB_STATIC_TARGET, LDCOMBINE, LDCOMBINE_TAIL):
Delete unused variables.
(SHLIB_EXPORT_FILE, SHLIB_EXPORT_FILE_DEP, MAKE_SHLIB_COMMAND): New variables.
* config/lib.in (lib$(LIB)$(SHLIBVEXT)): Set objlist to the list of object
files before invoking MAKE_SHLIB_COMMAND, instead of wrapping the list with
LDCOMBINE and LDCOMBINE_TAIL. Depend on SHLIB_EXPORT_FILE_DEP.
* config/shlib.conf: Set MAKE_SHLIB_COMMAND, using LDCOMBINE and LDCOMBINE_TAIL
in the common case.
(case *-*-aix*): Specify new commands, taken from makeshlib.sh, but assume the
export list is provided externally.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16263
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Fri, 23 Apr 2004 00:24:05 +0000 (00:24 +0000)]
Delete a couple of symbols that are only defined when krb4 is enabled,
and which are not directly used from outside the library.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16262
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Fri, 23 Apr 2004 00:13:12 +0000 (00:13 +0000)]
update dependencies
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16261
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Fri, 23 Apr 2004 00:08:55 +0000 (00:08 +0000)]
add newline at end of file
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16260
dc483132-0cff-0310-8789-
dd5450dbe970
Ken Raeburn [Thu, 22 Apr 2004 23:55:57 +0000 (23:55 +0000)]
Add files containing the export lists used on UNIX, in each directory
where we build a shared library, whether or not it gets installed.
These should match the complete AIX export lists for a full build
including krb4 support, and will eventually be used on other UNIX
platforms, and cut down to just the symbols we actually want to
export.
We'll also have to add additional information, eventually, for
versioning and such, but currently this is just a list of C symbol
names.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16259
dc483132-0cff-0310-8789-
dd5450dbe970
Sam Hartman [Fri, 16 Apr 2004 19:10:24 +0000 (19:10 +0000)]
krb5_get_in_tkt ignores lifetime
John Hascall reports that the emulation of krb5_get_in_tkt is
incomplete and does not handle lifetimes set in the input credentials.
He provided a patch to fix this.
Ticket: new
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16258
dc483132-0cff-0310-8789-
dd5450dbe970
Sam Hartman [Thu, 15 Apr 2004 17:57:34 +0000 (17:57 +0000)]
Fix memory leak when not sending to master KDC in
get_init_creds_password path.
Ticket: 2534
Tags: pullup
Target_Version: 1.3.4
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16255
dc483132-0cff-0310-8789-
dd5450dbe970
Alexandra Ellwood [Wed, 14 Apr 2004 22:34:02 +0000 (22:34 +0000)]
added krb5-config to targets
ticket: 2348
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16252
dc483132-0cff-0310-8789-
dd5450dbe970
Jeffrey Altman [Wed, 14 Apr 2004 14:14:03 +0000 (14:14 +0000)]
Changes to the NSIS installer for Windows to support KFW 2.6.1
Adds kvno.exe, gss-client.exe, and gss-server.exe to the distribution
Increments the version number of the installer
ticket: new
tags: pullup
target_version: 1.3.4
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16249
dc483132-0cff-0310-8789-
dd5450dbe970
Jeffrey Altman [Tue, 13 Apr 2004 21:37:33 +0000 (21:37 +0000)]
Since we must reserve the single letter prefixes on all platforms
anyway, make the mapping apply on all platforms
ticket: 2531
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16247
dc483132-0cff-0310-8789-
dd5450dbe970
Jeffrey Altman [Tue, 13 Apr 2004 20:08:40 +0000 (20:08 +0000)]
Treat keytab and ccache names without prefixes as type FILE:
on Windows if there is a drive letter found at the beginning
of the name.
ticket: new
tags: pullup
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16246
dc483132-0cff-0310-8789-
dd5450dbe970
Jeffrey Altman [Tue, 13 Apr 2004 20:04:13 +0000 (20:04 +0000)]
* ccbase.c: the krb5_cc_resolve() function pointer ccresolver
must be of type KRB5_CALLCONV
ticket: new
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16245
dc483132-0cff-0310-8789-
dd5450dbe970
Jeffrey Altman [Tue, 13 Apr 2004 20:00:19 +0000 (20:00 +0000)]
* k5unseal.c: gss_krb5int_unseal_token_v3() takes a pointer to
krb5_context
* import_sec_context.c: krb5_gss_ser_init() contains a function
pointer table. this table must use pointers to functions of
type KRB5_CALLCONV.
ticket: new
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16244
dc483132-0cff-0310-8789-
dd5450dbe970
Ezra Peisach [Mon, 12 Apr 2004 14:50:23 +0000 (14:50 +0000)]
* configure.in: Remove tests for strsave, sys_errlist,
krb5_sigtype, setjmp, dirent, F_SETOWN. These are left over from
the split from appl/bsd.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16242
dc483132-0cff-0310-8789-
dd5450dbe970
Jeffrey Altman [Thu, 8 Apr 2004 20:49:27 +0000 (20:49 +0000)]
ktbase.c - restore the thread safety changes which were accidently
removed in revision 5.29
ticket: new
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16241
dc483132-0cff-0310-8789-
dd5450dbe970
Jeffrey Altman [Thu, 8 Apr 2004 07:52:27 +0000 (07:52 +0000)]
On Windows, a single letter followed by colon is used to identify
a drive. Therefore, do not assume that finding a colon in a string
indicates that we have found a keytab prefix label unless the length
of the potential prefix is not equal to one.
ticket: new
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16240
dc483132-0cff-0310-8789-
dd5450dbe970