summaryrefslogtreecommitdiffstats
path: root/src/include
Commit message (Collapse)AuthorAgeFilesLines
...
* * k5-thread.h: Test HAVE_PTHREAD instead of HAVE_PTHREAD_HKen Raeburn2004-07-092-1/+3
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16573 dc483132-0cff-0310-8789-dd5450dbe970
* forgot the changelogJeffrey Altman2004-07-091-0/+4
| | | | | | ticket: 2629 git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16571 dc483132-0cff-0310-8789-dd5450dbe970
* osconf.h:Jeffrey Altman2004-07-091-1/+1
| | | | | | | | | | < #if !!defined(_WIN32) --- > #if !defined(_WIN32) ticket: new git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16570 dc483132-0cff-0310-8789-dd5450dbe970
* * win-mac.h (KRB5_USE_INET6, ENABLE_THREADS): DefineKen Raeburn2004-07-092-0/+6
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16569 dc483132-0cff-0310-8789-dd5450dbe970
* * k5-thread.h [! HAVE_PTHREAD_H]: Don't explicitly disable thread support whenKen Raeburn2004-07-072-5/+50
| | | | | | | | | | 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. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16552 dc483132-0cff-0310-8789-dd5450dbe970
* * k5-thread.h: Use K5_THREAD_H for multiple inclusion protection.Ken Raeburn2004-07-072-3/+74
| | | | | | | | | | | (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. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16550 dc483132-0cff-0310-8789-dd5450dbe970
* * configure.in: Check for getpwuid_rKen Raeburn2004-07-072-1/+5
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16549 dc483132-0cff-0310-8789-dd5450dbe970
* * k5-thread.h: Restructured mutex code.Ken Raeburn2004-07-022-175/+292
| | | | | | | | | | | | | | | (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. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16539 dc483132-0cff-0310-8789-dd5450dbe970
* * configure.in: Test for 'inline' support.Ken Raeburn2004-07-014-17/+10
| | | | | | | * k5-platform.h (inline): Don't define here. * win-mac.h (inline): Define as __inline. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16536 dc483132-0cff-0310-8789-dd5450dbe970
* * k5-thread.h (K5_MUTEX_DEBUG_INITIALIZER): Use current file and line.Ken Raeburn2004-07-012-10/+23
| | | | | | | | | | | | | (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. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16535 dc483132-0cff-0310-8789-dd5450dbe970
* * k5-thread.h (k5_debug_assert_locked, k5_debug_assert_unlocked): New macros.Ken Raeburn2004-06-302-0/+22
| | | | | | | (k5_assert_locked, k5_assert_unlocked): New macros, may or may not call the debug macros. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16533 dc483132-0cff-0310-8789-dd5450dbe970
* * k5-platform.h (JOIN4, JOIN4_2, JOIN3, JOIN3_2): Unused macros deleted.Ken Raeburn2004-06-252-32/+36
| | | | | | | | | | | (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. ticket: 2603 status: resolved git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16521 dc483132-0cff-0310-8789-dd5450dbe970
* Delete preprocessor tests for macintosh, __MWERKS__, applec, and THINK_C, allKen Raeburn2004-06-2211-65/+19
| | | | | | | part of the pre-Mac OS X support. (Except the bits in the Yarrow code, where it was part of the upstream source.) git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16506 dc483132-0cff-0310-8789-dd5450dbe970
* * k5-platform.h (MAKE_INIT_FUNCTION, CALL_INIT_FUNCTION, INITIALIZER_RAN): UseKen Raeburn2004-06-182-5/+11
| | | | | | | | the linker-driven version for Windows. The auxinit function definition needs an argument list. (MAKE_FINI_FUNCTION): Likewise. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16488 dc483132-0cff-0310-8789-dd5450dbe970
* * win-mac.h (HAVE_STRERROR, SYS_ERRLIST_DECLARED): DefineKen Raeburn2004-06-182-0/+6
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16480 dc483132-0cff-0310-8789-dd5450dbe970
* Purge make targets and variables (and a few files) relating to the old,Ken Raeburn2004-06-174-6/+8
| | | | | | unmaintained Mac OS 9 (and earlier) support. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16473 dc483132-0cff-0310-8789-dd5450dbe970
* * Makefile.in ($(srcdir)/krb5/autoconf.stmp): Always use --include, don'tKen Raeburn2004-06-082-1/+8
| | | | | | | try --localdir. (all-recurse): Depend on krb5/autoconf.h. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16422 dc483132-0cff-0310-8789-dd5450dbe970
* * configure.in: Check number of arguments to getpwnam_r and getpwuid_r andKen Raeburn2004-06-042-0/+33
| | | | | | define some new macros if they're the four-argument draft POSIX versions. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16407 dc483132-0cff-0310-8789-dd5450dbe970
* * configure.in: Check for getpwnam_r, gmtime_r, and localtime_rKen Raeburn2004-06-042-1/+5
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16406 dc483132-0cff-0310-8789-dd5450dbe970
* * k5-thread.h: Error out at compile time if thread support is enabled but theKen Raeburn2004-06-022-0/+25
| | | | | | | | 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.) git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16393 dc483132-0cff-0310-8789-dd5450dbe970
* Move definitions of struct krb5_rc_st, struct _krb5_rc_ops, krb5_rc_ops, andKen Raeburn2004-06-022-38/+7
| | | | | | | declarations of krb5_rc_register_type, krb5_rc_dfl_ops from k5-int.h to rc-int.h. Include rc-int.h in the krb5/rcache files that need it. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16386 dc483132-0cff-0310-8789-dd5450dbe970
* * k5-int.h (krb5int_crypto_init, krb5int_prng_init): DeclareKen Raeburn2004-05-302-0/+7
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16373 dc483132-0cff-0310-8789-dd5450dbe970
* * k5-thread.h: On IRIX, with threads enabled, reject gcc older than v3Ken Raeburn2004-05-132-3/+3
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16330 dc483132-0cff-0310-8789-dd5450dbe970
* * k5-thread.h: On IRIX, if gcc is older than v3, tell the user to get a newerKen Raeburn2004-05-132-1/+9
| | | | | | | | | 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
* Rename header file foreachaddr.c to foreachaddr.h, now that it isn'tKen Raeburn2004-05-052-0/+1
| | | | | | mostly static functions to be compiled in. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16314 dc483132-0cff-0310-8789-dd5450dbe970
* * foreachaddr.c: Implementation moved to lib/krb5/os/localaddr.c.Ken Raeburn2004-05-052-759/+17
| | | | | | | (krb5int_foreach_localaddr): Declare. (foreach_localaddr): New macro. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16310 dc483132-0cff-0310-8789-dd5450dbe970
* Update mutex debug code to be somewhat compatible with multi-threadedKen Raeburn2004-05-012-24/+40
| | | | | | | | | | | | | | | | | 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
* * k5-int.h: Include k5-thread.h.Ken Raeburn2004-04-302-0/+9
| | | | | | (struct krb5_rc_st): Add a mutex. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16289 dc483132-0cff-0310-8789-dd5450dbe970
* * k5-platform.h (DELAY_INITIALIZER): Don't define.Ken Raeburn2004-04-292-20/+43
| | | | | | | | | | | | | | (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
* Added support for library initialization and finalization, and verificationKen Raeburn2004-04-244-30/+493
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* krb5_get_in_tkt ignores lifetimeSam Hartman2004-04-162-1/+6
| | | | | | | | | | 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
* * k5-int.h (krb5int_prng_cleanup): DeclareKen Raeburn2004-04-022-0/+9
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16226 dc483132-0cff-0310-8789-dd5450dbe970
* krb5_fcc_generate_new should use mkstempSam Hartman2004-03-262-0/+5
| | | | | | | | | Change krb5_fcc_generate_new to use mkstemp rather than mktemp. Ticket: new Status: open git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16214 dc483132-0cff-0310-8789-dd5450dbe970
* Change subdir processing so that SUBDIRS will contain the configuredKen Raeburn2004-03-086-3/+13
| | | | | | | | | | | | | | subdirs only for the makefile in the directory with the configure script, and will have only $(LOCAL_SUBDIRS) elsewhere. Drop the use of "MY_SUBDIRS=." to override SUBDIRS in favor of this way of keeping SUBDIRS empty. Drop other uses of MY_SUBDIRS in favor of LOCAL_SUBDIRS or (in one case, the top level) overriding the SUBDIRS setting from pre.in. One less thing to keep tweaking as configure scripts get reorganized and merged. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16158 dc483132-0cff-0310-8789-dd5450dbe970
* fix debug initializer and copyrightKen Raeburn2004-03-061-3/+29
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16152 dc483132-0cff-0310-8789-dd5450dbe970
* Use more const data in the keytab type registryKen Raeburn2004-03-062-1/+3
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16149 dc483132-0cff-0310-8789-dd5450dbe970
* * k5-thread.h: New fileKen Raeburn2004-03-062-0/+151
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16148 dc483132-0cff-0310-8789-dd5450dbe970
* As discussed on the krbdev mailing list, krb5_get_init_creds_password()Jeffrey Altman2004-02-272-4/+10
| | | | | | | | | | | | | | | | | | | | | | | suffered from a behavior in which it would unintentionally query a master KDC twice if in fact the KDC queried when krb5int_sendto() was called with use_master = 0 was in fact the master. This resulted in more than an additional protocol operation. There were two negative side effects. First, in the case of an incorrect password there would be two counts against the max retry attempts. Second, in the case of hardware pre-auth and an expired password, the user would be asked to enter their expired password twice before being told it was expired. This has been fixed by changing the use_master parameter into an in/out parameter and modifying krb5int_sendto() to indicate which KDC it received the response from. This allows the use_master parameter to be set to indicate whether or not the response came from a master KDC regardless of whether a master KDC was requested. ticket: new target_version: next tags: pullup git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16137 dc483132-0cff-0310-8789-dd5450dbe970
* fix GET{SOCK,PEER}NAME_ARG{2,3}_TYPE lossage I createdKen Raeburn2004-02-262-0/+12
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16135 dc483132-0cff-0310-8789-dd5450dbe970
* Remove ENCTYPE_LOCAL_DES3_HMAC_SHA1Sam Hartman2004-02-242-3/+6
| | | | | | | | | | Previously, MIT had support for a version of the des3 enctype with a 32-bit length prepended to encrypted data. Remove that support. This is non-standard and is no longer needed even at MIT. Ticket: new git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16122 dc483132-0cff-0310-8789-dd5450dbe970
* * win-mac.h: conditionally define strcasecmp/strncasecmp macrosJeffrey Altman2004-01-052-0/+9
| | | | | | | | | | only if they do not already exist. ticket: new target_version: 1.3.2 tags: pullup git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@15963 dc483132-0cff-0310-8789-dd5450dbe970
* move some basic header and function checks from lib/krb5 to includeKen Raeburn2003-12-242-1/+11
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@15960 dc483132-0cff-0310-8789-dd5450dbe970
* * fake-addrinfo.h: Include stdio.hKen Raeburn2003-12-202-0/+6
| | | | | | ticket: 2016 git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@15957 dc483132-0cff-0310-8789-dd5450dbe970
* The new functions krb5int_c_mandatory_cksumtype, krb5_ser_pack_int64,Jeffrey Altman2003-12-192-1/+11
| | | | | | | | | | | | | and krb5_ser_unpack_int64 are considered private. Therefore, in order for them to be used from within gssapi they must be added to the krb5int_accessor mechanism. This allows us to not publicize their existence via exportation on Windows or MacOSX. ticket: new tags: pullup target_version: 1.3.2 git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@15941 dc483132-0cff-0310-8789-dd5450dbe970
* * k5-platform.h (SIZE_MAX): Provide default definition if stdint.h doesn'tKen Raeburn2003-12-152-2/+41
| | | | | | | | define it. ticket: 2040 git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@15929 dc483132-0cff-0310-8789-dd5450dbe970
* * win-mac.h: source code written to the C99 standard assumes thereJeffrey Altman2003-12-152-0/+15
| | | | | | | | | | | | | 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. ticket: 2040 git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@15927 dc483132-0cff-0310-8789-dd5450dbe970
* * add missing ChangeLog entryJeffrey Altman2003-12-151-0/+5
| | | | | | ticket: 1471 git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@15926 dc483132-0cff-0310-8789-dd5450dbe970
* * k5-platform.h: apply casts (unsigned char) to the assignments fromJeffrey Altman2003-12-151-16/+16
| | | | | | | | 64-bit ints to unsigned char fields to avoid warnings ticket: 1471 git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@15925 dc483132-0cff-0310-8789-dd5450dbe970
* Add platform-dependent 64-bit and inline-function support via new headerKen Raeburn2003-12-135-16/+184
| | | | | | | | | | | | | | | k5-platform.h. Add 64-bit serializer support. [Not needed for ticket 1471, but needed for 2040 and annoying to check in separately.] Add to (internal for now) crypto API a function to get the mandatory checksum type associated with an enctype. New support for server-generated subkey, selected via an auth_context flag. ticket: 1471 status: open git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@15908 dc483132-0cff-0310-8789-dd5450dbe970
* Save encoded KRB-SAFE-BODY to avoid problems caused by re-encoding it.Tom Yu2003-10-082-0/+11
| | | | | | | | | | Also, handle correctly implemented RFC 1510 KRB-SAFE i.e., checksummed over KRB-SAFE-BODY only. ticket: 1893 tags: pullup git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@15831 dc483132-0cff-0310-8789-dd5450dbe970