summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* Add a mutex for the shared static storage used by YarrowKen Raeburn2004-05-014-44/+89
| | | | | | | | | | | | | | | | | | | | | | | * 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
* * 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
* * libk5crypto.exports: Drop the library init/fini functions and the DES tablesKen Raeburn2004-04-302-5/+5
| | | | | | from the export list. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16288 dc483132-0cff-0310-8789-dd5450dbe970
* * shlib.conf (alpha*-dec-osf*): Add support for export list, using a temporaryKen Raeburn2004-04-302-4/+14
| | | | | | | 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
* * aclocal.m4 (CONFIG_RULES): Substitute EXTRA_FILES into pre.inKen Raeburn2004-04-302-0/+3
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16286 dc483132-0cff-0310-8789-dd5450dbe970
* * pre.in (EXTRA_FILES): New variable.Ken Raeburn2004-04-303-1/+7
| | | | | | * post.in (clean-unix): Delete extra files. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16285 dc483132-0cff-0310-8789-dd5450dbe970
* updated dependenciesKen Raeburn2004-04-291-24/+26
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16284 dc483132-0cff-0310-8789-dd5450dbe970
* * debug.h (test): Macro renamed from "assert".Ken Raeburn2004-04-294-10/+15
| | | | | | * 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
* * 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
* * shlib.conf: Initialize use_linker_init_option and use_linker_fini_option toKen Raeburn2004-04-292-4/+23
| | | | | | | | | | 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
* * aclocal.m4 (CONFIG_RULES): Invoke KRB5_LIB_PARAMS and KRB5_AC_INITFINI.Ken Raeburn2004-04-292-1/+71
| | | | | | | | | (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
* * error_message.c (com_err_terminate): Free heap storage in et_list_dynamicKen Raeburn2004-04-292-0/+8
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16279 dc483132-0cff-0310-8789-dd5450dbe970
* * Makefile.in (LIBINITFUNC, LIBFINIFUNC): New variablesKen Raeburn2004-04-292-0/+6
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16278 dc483132-0cff-0310-8789-dd5450dbe970
* * libobj.in (.c.so): Add -DSHARED to compile optionsKen Raeburn2004-04-282-1/+5
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16277 dc483132-0cff-0310-8789-dd5450dbe970
* * aclocal.m4 (KRB5_BUILD_LIBRARY_WITH_DEPS): Report an error if perl cannot ↵Ken Raeburn2004-04-262-0/+8
| | | | | | be found git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16276 dc483132-0cff-0310-8789-dd5450dbe970
* * lib.in (PARSE_OBJLISTS): New variable.Ken Raeburn2004-04-262-13/+10
| | | | | | (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
* * shlib.conf (INIT_FINI_PREP): New variable. Default to a no-op, but let eachKen Raeburn2004-04-262-4/+17
| | | | | | | | 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
* update dependenciesKen Raeburn2004-04-2410-576/+687
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16273 dc483132-0cff-0310-8789-dd5450dbe970
* Handle the somewhat common fixed case of time value 0 more efficientlyKen Raeburn2004-04-243-16/+36
| | | | | | | | | * 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
* * conv_creds.c (krb524_init_ets, krb524_convert_creds_kdc): Add forward ↵Ken Raeburn2004-04-242-1/+12
| | | | | | declarations to silence gcc warnings git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16271 dc483132-0cff-0310-8789-dd5450dbe970
* update dependenciesKen Raeburn2004-04-2413-155/+169
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16270 dc483132-0cff-0310-8789-dd5450dbe970
* updated dependenciesKen Raeburn2004-04-2421-450/+504
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16269 dc483132-0cff-0310-8789-dd5450dbe970
* Added support for library initialization and finalization, and verificationKen Raeburn2004-04-2429-95/+835
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* * gssapi_krb5.c (kg_get_ccache_name): Don't test err while it's still known toKen Raeburn2004-04-242-32/+27
| | | | | | | 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
* Start depending on perl for buildsKen Raeburn2004-04-245-6/+15
| | | | | | | | | * 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
* * libupdate.sh: Deleted.Ken Raeburn2004-04-233-57/+5
| | | | | | | | * 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
* * makeshlib.conf: DeletedKen Raeburn2004-04-232-67/+4
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16264 dc483132-0cff-0310-8789-dd5450dbe970
* Use more flexible command substitution for shared library generation, so we canKen Raeburn2004-04-236-14/+51
| | | | | | | | | | | | | | | | | | | 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
* Delete a couple of symbols that are only defined when krb4 is enabled,Ken Raeburn2004-04-231-2/+0
| | | | | | 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
* update dependenciesKen Raeburn2004-04-235-96/+144
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16261 dc483132-0cff-0310-8789-dd5450dbe970
* add newline at end of fileKen Raeburn2004-04-231-1/+1
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16260 dc483132-0cff-0310-8789-dd5450dbe970
* Add files containing the export lists used on UNIX, in each directoryKen Raeburn2004-04-2224-0/+2095
| | | | | | | | | | | | | | 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
* krb5_get_in_tkt ignores lifetimeSam Hartman2004-04-165-6/+23
| | | | | | | | | | 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
* Fix memory leak when not sending to master KDC inSam Hartman2004-04-152-0/+9
| | | | | | | | | | 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
* added krb5-config to targetsAlexandra Ellwood2004-04-141-0/+2
| | | | | | ticket: 2348 git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16252 dc483132-0cff-0310-8789-dd5450dbe970
* Changes to the NSIS installer for Windows to support KFW 2.6.1Jeffrey Altman2004-04-143-6/+25
| | | | | | | | | | | 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
* Since we must reserve the single letter prefixes on all platformsJeffrey Altman2004-04-134-8/+12
| | | | | | | | 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
* Treat keytab and ccache names without prefixes as type FILE:Jeffrey Altman2004-04-134-17/+50
| | | | | | | | | | 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
* * ccbase.c: the krb5_cc_resolve() function pointer ccresolverJeffrey Altman2004-04-132-3/+11
| | | | | | | | must be of type KRB5_CALLCONV ticket: new git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16245 dc483132-0cff-0310-8789-dd5450dbe970
* * k5unseal.c: gss_krb5int_unseal_token_v3() takes a pointer toJeffrey Altman2004-04-133-2/+10
| | | | | | | | | | | 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
* * configure.in: Remove tests for strsave, sys_errlist,Ezra Peisach2004-04-122-30/+6
| | | | | | | 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
* ktbase.c - restore the thread safety changes which were accidentlyJeffrey Altman2004-04-082-16/+44
| | | | | | | | removed in revision 5.29 ticket: new git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16241 dc483132-0cff-0310-8789-dd5450dbe970
* On Windows, a single letter followed by colon is used to identifyJeffrey Altman2004-04-082-36/+27
| | | | | | | | | | 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
* Install kvno.exe on WindowsJeffrey Altman2004-04-061-0/+4
| | | | | | | ticket: new target_version: 1.4 git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16236 dc483132-0cff-0310-8789-dd5450dbe970
* * cc_mslsa.c:Jeffrey Altman2004-04-062-0/+20
| | | | | | | | | | | | | | | | In at least one case on Win2003 it appears that it is possible for the logon session to be authenticated via NTLM and yet for there to be Kerberos credentials obtained by the LSA on behalf of the logged in user. Therefore, we are removing the test for IsKerberosLogon() within krb5_lcc_resolve() which was meant to avoid the need to perform GetMSTGT() when there was no possibility of credentials being found. ticket: new tags: pullup target_version: next git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16235 dc483132-0cff-0310-8789-dd5450dbe970
* * network.c (setup_a_tcp_listener): Try to turn the IPV6_V6ONLY socket optionKen Raeburn2004-04-032-8/+23
| | | | | | | | on, not off, and do it before calling bind. (setup_tcp_listener_ports): Don't do it here any more. (setup_udp_port): Ignore AF_DLI addresses. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16234 dc483132-0cff-0310-8789-dd5450dbe970
* * server.c: Include string.hKen Raeburn2004-04-032-0/+5
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16233 dc483132-0cff-0310-8789-dd5450dbe970
* * lib/helpers.exp (expect_kadm_ok): Check for "ERROR" messages and report themKen Raeburn2004-04-032-0/+6
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16232 dc483132-0cff-0310-8789-dd5450dbe970
* * svc_auth_gssapi.c (destroy_client): Don't call purify_watch_n even if PURIFYKen Raeburn2004-04-032-1/+6
| | | | | | | is defined. (makes the monitoring much too noisy) git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16231 dc483132-0cff-0310-8789-dd5450dbe970
* * t_kdb.c (add_principal): Delete unused argument 'rseed'.Ken Raeburn2004-04-032-10/+9
| | | | | | (do_testing): Update callers. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16230 dc483132-0cff-0310-8789-dd5450dbe970