summaryrefslogtreecommitdiffstats
path: root/src/lib/gssapi
Commit message (Collapse)AuthorAgeFilesLines
...
* * Makefile.in (gssapi.h): Change SIZEOF symbols to start with GSS_ whenKen Raeburn2005-02-033-9/+14
| | | | | | | | | | | | | extracting from autoconf.h. Don't look for HAVE_ or USE_ symbols. Add ${include_xom} to the prologue. (include_xom): New variable. * gssapi.h: Always include stddef.h unconditionally. (GSS_SIZEOF_INT, GSS_SIZEOF_LONG, GSS_SIZEOF_SHORT): Don't define. ticket: 2910 status: open git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17077 dc483132-0cff-0310-8789-dd5450dbe970
* * configure.in: Check for xom.h. Set include_xom to a C include directive orKen Raeburn2005-02-032-0/+9
| | | | | | | | | comment, and substitute it in the Makefiles. ticket: 2910 status: open git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17076 dc483132-0cff-0310-8789-dd5450dbe970
* Some applications such as Eudora on Windows load and unload the KerberosJeffrey Altman2005-01-172-0/+7
| | | | | | | | | | | libraries as part of a plug-in. Plugins are often loaded for a specific purpose and then unregistered. In order to support this model, the libraries must restore the library state to the uninitialized state when the library is unloaded. ticket: new git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17050 dc483132-0cff-0310-8789-dd5450dbe970
* correction to previous commit. do not call krb5_gss_release_cred()Jeffrey Altman2005-01-131-11/+46
| | | | | | | | | if the cred was not acquired. destroy each field of the cred one piece at a time based upon what was allocated. ticket: 2875 git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17025 dc483132-0cff-0310-8789-dd5450dbe970
* Fix the calls to krb5_gss_release_cred to pass in the correct type.Jeffrey Altman2005-01-133-41/+19
| | | | | | | | | This fixes a mutex leak. ticket: new tags: pullup git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17023 dc483132-0cff-0310-8789-dd5450dbe970
* run "make depend"Ken Raeburn2004-12-303-191/+236
| | | | | | | | In most library directories, this just affects where the line breaks are. In most other directories, it's just dropping a trailing blank line. One or two files really do have updated dependencies. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16987 dc483132-0cff-0310-8789-dd5450dbe970
* * Makefile.in: Delete @SHARED_RULE@ line.Ken Raeburn2004-09-232-3/+6
| | | | | | (thisconfigdir): Fix. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16781 dc483132-0cff-0310-8789-dd5450dbe970
* * init_sec_context.c (make_ap_req_v1): Free checksum dataTom Yu2004-08-283-4/+14
| | | | | | | | | allocated by make_gss_checksum() to avoid leak. * k5sealv3.c (gss_krb5int_unseal_token_v3): Free plain.data after checksum is verified, to avoid leak. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16696 dc483132-0cff-0310-8789-dd5450dbe970
* * acquire_cred.c (krb5_gss_acquire_cred): Call gssint_initialize_library.Ken Raeburn2004-08-262-1/+13
| | | | | | Return correct error code on mutex initialization failure. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16687 dc483132-0cff-0310-8789-dd5450dbe970
* * gssapi_krb5.c (kg_ccache_name): Variable deleted.Ken Raeburn2004-07-302-3/+23
| | | | | | | (kg_sync_ccache_name, kg_get_ccache_name, kg_set_ccache_name): Get and set thread-specific values instead. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16632 dc483132-0cff-0310-8789-dd5450dbe970
* Export lucid context functions and gss_krb5_set_allowable_enctypesSam Hartman2004-07-292-0/+7
| | | | | | Ticket: 2587 git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16631 dc483132-0cff-0310-8789-dd5450dbe970
* Add a mutex to the GSSAPI krb5 mechanism credential structure. Lock it whileKen Raeburn2004-07-2911-30/+146
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | frobbing the contents. Also added krb5_gss_validate_cred_1, which is like krb5_gss_validate_cred but for internal use. It lets the caller supply the krb5_context instead of creating yet another one locally, and leaves the new credential mutex locked on a successful return so that the caller doesn't have to reacquire it. More functions should be changed to use this internally, but it's a performance issue; I don't think it's a correctness or thread-safety issue. * gssapiP_krb5.h (struct _krb5_gss_cred_id_rec): Add a mutex. (krb5_gss_validate_cred_1): Declare. * accept_sec_context.c (rd_and_store_for_creds): Initialize mutex. * acquire_cred.c (krb5_gss_acquire_cred): Initialize mutex. * add_cred.c (krb5_gss_add_cred): Create the krb5 context earlier. Call krb5_gss_validate_cred_1. Make sure the mutex is locked. * copy_ccache.c (gss_krb5_copy_ccache): Lock the mutex in the source credential. * init_sec_context.c (get_credentials, new_connection): Check that the mutex is locked. (mutual_auth): Delete unused credential argument. (krb5_gss_init_sec_context): Lock the mutex. * inq_cred.c (krb5_gss_inquire_cred): Lock the mutex. * rel_cred.c (krb5_gss_release_cred): Destroy the mutex. * set_allowable_enctypes.c (gss_krb5_set_allowable_enctypes): Lock the mutex. * val_cred.c (krb5_gss_validate_cred_1): New function. (krb5_gss_validate_cred): Use it. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16630 dc483132-0cff-0310-8789-dd5450dbe970
* * set_ccache.c (gss_krb5_ccache_name): Don't make a copy of the string returnedKen Raeburn2004-07-292-29/+13
| | | | | | | by kg_get_ccache_name. Simplify some calls using a temporary error code variable. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16629 dc483132-0cff-0310-8789-dd5450dbe970
* * gssapi_krb5.c (kg_get_ccache_name): Make the copy always, not justKen Raeburn2004-07-292-16/+22
| | | | | | in the local-context case. Check for errors in making the copy. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16628 dc483132-0cff-0310-8789-dd5450dbe970
* * gssapi_krb5.c (kg_get_ccache_name): Make a copy of the default ccache name,Ken Raeburn2004-07-282-1/+8
| | | | | | because calling krb5_free_context will destroy it. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16627 dc483132-0cff-0310-8789-dd5450dbe970
* update dependenciesKen Raeburn2004-07-161-2/+4
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16611 dc483132-0cff-0310-8789-dd5450dbe970
* Get rid of the global krb5 context used by the GSSAPI Kerberos mechanism. IKen Raeburn2004-07-156-48/+49
| | | | | | | | | | | | | | | | | | | | *think* I've gotten all the places where a ccache or keytab name that's been stored gets applied to whichever context needs it. * gssapi_krb5.c (kg_sync_ccache_name): Add context argument instead of calling kg_get_context. (kg_get_ccache_name): Use a locally created krb5 context instead of calling kg_get_context. (kg_get_context): Deleted. * acquire_cred.c (acquire_init_cred): Pass current context. (krb5_gss_acquire_cred): Use a locally created krb5 context instead of calling kg_get_context. * add_cred.c (krb5_gss_add_cred): Call kg_sync_ccache_name. * init_sec_context.c (krb5_gss_init_sec_context): Likewise. * gssapiP_krb5.h (kg_sync_ccache_name): Update prototype. (kg_get_context): Delete declaration. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16597 dc483132-0cff-0310-8789-dd5450dbe970
* * set_ccache.c (gss_krb5_ccache_name): Check thread-specific data for the savedKen Raeburn2004-07-142-5/+30
| | | | | | "old" name to free. Save the new old name in thread-specific data. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16594 dc483132-0cff-0310-8789-dd5450dbe970
* * gssapiP_krb5.h (gssint_krb5_keytab_lock): DeclareKen Raeburn2004-07-142-0/+3
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16593 dc483132-0cff-0310-8789-dd5450dbe970
* * gss_libinit.c (gssint_lib_init): Initialize new keytab-name mutex, andKen Raeburn2004-07-142-0/+13
| | | | | | register two new key values. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16592 dc483132-0cff-0310-8789-dd5450dbe970
* * Makefile.in (SHLIB_EXPDEPS): Use _DEPLIB variables.Ken Raeburn2004-07-142-4/+7
| | | | | | (SHLIB_EXPLIBS): Add $(SUPPORT_LIB). git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16591 dc483132-0cff-0310-8789-dd5450dbe970
* * acquire_cred.c: Include gss_libinit.h.Ken Raeburn2004-07-142-8/+43
| | | | | | | | (gssint_krb5_keytab_lock): New mutex. (krb5_gss_register_acceptor_identity, acquire_accept_cred): Lock the mutex while manipulating krb5_gss_keytab. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16590 dc483132-0cff-0310-8789-dd5450dbe970
* * Makefile.in (LOCALINCLUDES): Add $(srcdir)/.. to the listKen Raeburn2004-07-082-1/+5
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16560 dc483132-0cff-0310-8789-dd5450dbe970
* * disp_status.c: Include gss_libinit.h.Ken Raeburn2004-07-072-8/+9
| | | | | | | | (init_et): Variable deleted. (krb5_gss_display_status): Don't use init_et; instead, call gssint_initialize_library. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16558 dc483132-0cff-0310-8789-dd5450dbe970
* * import_name.c (krb5_gss_import_name) [HAVE_GETPWUID_R]: Use getpwuid_rKen Raeburn2004-07-072-5/+32
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16548 dc483132-0cff-0310-8789-dd5450dbe970
* Delete preprocessor tests for macintosh, __MWERKS__, applec, and THINK_C, allKen Raeburn2004-06-226-22/+10
| | | | | | | 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
* ignore generated file gssapi_krb5.hKen Raeburn2004-06-191-0/+1
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16496 dc483132-0cff-0310-8789-dd5450dbe970
* * Makefile.in (OBJFILELIST, OBJFILEDEP) [DOS]: Depend on locally built objectsKen Raeburn2004-06-182-2/+17
| | | | | | | | | | too. (OBJFILE, LIBOBJS) [DOS]: Define. ($(BUILDTOP)/include/gssapi/gssapi.h, generic/gssapi.h, krb5/gssapi_err_krb5.h, generic/gssapi_err_generic.h, krb5/gssapi_krb5.h) [DOS]: Disable dependencies on Windows. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16485 dc483132-0cff-0310-8789-dd5450dbe970
* oops, forgot somethingTom Yu2004-06-172-3/+6
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16479 dc483132-0cff-0310-8789-dd5450dbe970
* * ser_sctx.c (kg_ctx_size, kg_ctx_externalize): Adjust for newTom Yu2004-06-172-1/+10
| | | | | | field cred_rcache. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16477 dc483132-0cff-0310-8789-dd5450dbe970
* * util_validate.c (g_save): Call gssint_initialize_libraryKen Raeburn2004-06-172-0/+10
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16475 dc483132-0cff-0310-8789-dd5450dbe970
* Purge make targets and variables (and a few files) relating to the old,Ken Raeburn2004-06-174-7/+8
| | | | | | unmaintained Mac OS 9 (and earlier) support. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16473 dc483132-0cff-0310-8789-dd5450dbe970
* ok, let's try this again..Tom Yu2004-06-164-4/+21
| | | | | | | | | | | | | | | | | * accept_sec_context.c (krb5_gss_accept_sec_context): Only null out the auth_context's rcache if it was provided by acceptor creds; this prevents a leak. * delete_sec_context.c (krb5_gss_delete_sec_context): Only null out the auth_context's rcache if it was provided by acceptor creds; this prevents a leak. * gssapiP_krb5.h (krb5_gss_ctx_id_rec): Add cred_rcache to track whether acceptor creds provided an rcache. ticket: 2600 git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16465 dc483132-0cff-0310-8789-dd5450dbe970
* don't leak rcaches in accept_sec_contextTom Yu2004-06-151-1/+5
| | | | | | | | | | | | * accept_sec_context.c (krb5_gss_accept_sec_context): Don't null out rcache of auth_context prior to free if rcache was temporarily allocated; this prevents leaking rcaches. ticket: new version_reported: 1.3.4 component: krb5-libs git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16453 dc483132-0cff-0310-8789-dd5450dbe970
* * Makefile.in (SHLIB_EXPLIBS): Add $(LIBS)Ken Raeburn2004-06-152-1/+5
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16448 dc483132-0cff-0310-8789-dd5450dbe970
* * init_sec_context.c (krb5_gss_init_sec_context): Fix pointerTom Yu2004-06-142-1/+7
| | | | | | | assignment when retrieving k5_context from existing context_handle. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16440 dc483132-0cff-0310-8789-dd5450dbe970
* * Makefile.in (gssapi_krb5.h): Add Windows version of generation ruleKen Raeburn2004-06-112-0/+11
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16432 dc483132-0cff-0310-8789-dd5450dbe970
* * Makefile.in (krb5/gssapi_krb5.h): Depend on recursion ruleKen Raeburn2004-06-102-1/+5
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16429 dc483132-0cff-0310-8789-dd5450dbe970
* Install gssapi_krb5.h from build dir not srcdirSam Hartman2004-06-102-1/+4
| | | | | | | ticket: 2587 status: open git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16428 dc483132-0cff-0310-8789-dd5450dbe970
* If channel bindings are supplied to server require them to be matchedSam Hartman2004-06-092-15/+11
| | | | | | | | | | | | | | | | | | Based on discussion on kerberos@mit.edu, the decision to allow null channel bindings from a client to match even when server channel bindings are supplied is flawed. This decision assumes that we cannot get server implementations to change even though we are able to deploy a new Kerberos implementation on the server. In practice the server implementations in question have actually changed and so the only part of revision 1.54 of accept_sec_context.c we actually need is the code to ignore channel bindings if null channel bindings are passed into the server. Thus the change to allow null channel bindings from the client to match against any channel bindings on the server is backed out. Ticket: new git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16427 dc483132-0cff-0310-8789-dd5450dbe970
* Run make dependSam Hartman2004-06-082-1/+13
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16424 dc483132-0cff-0310-8789-dd5450dbe970
* Patch from kwc@citi.umich.edu to supportSam Hartman2004-06-0815-116/+803
| | | | | | | | | | | | gss_krb5_export_lucid_sec_context and other facilities for NFSv4 implementations. In order to apply this patch gss_krb5.h needs to be auto-generated so we can expose a 64-bit type for sequence numbers. Ticket: 2587 status: open git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16423 dc483132-0cff-0310-8789-dd5450dbe970
* Change all uses of LIB in UNIX makefiles to LIBBASE, for better WindowsKen Raeburn2004-06-042-1/+5
| | | | | | | | | compatibility. (Windows nmake exports make variables into the environment, and LIB is treated by the Windows linker as a search path for libraries, thus breaking the linking on Windows of anything needing libraries from the search path in directories where we build libraries on UNIX.) git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16411 dc483132-0cff-0310-8789-dd5450dbe970
* * disp_com_err_status.c (init_et): Variable deleted.Ken Raeburn2004-06-022-5/+7
| | | | | | | (g_display_com_err_status): Don't call initialize_ggss_error_table conditionally; instead, always call gssint_initialize_library. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16391 dc483132-0cff-0310-8789-dd5450dbe970
* * gss_libinit.c (gssint_lib_init): Initialize error tables here.Ken Raeburn2004-06-022-28/+18
| | | | | | | | | | (gssint_initialize_library): Don't do it directly here. Make sure gssint_lib_init has been called, and return the status. (gssint_lib_fini): Remove error tables here. (gssint_cleanup_library): Function deleted. (initialized): Variable deleted. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16390 dc483132-0cff-0310-8789-dd5450dbe970
* * libgssapi_krb5.exports: Remove et_*, generic_*, gssint_*, initialize_*, ↵Ken Raeburn2004-05-132-61/+5
| | | | | | kg_* symbols git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16333 dc483132-0cff-0310-8789-dd5450dbe970
* updated dependenciesKen Raeburn2004-04-241-47/+42
| | | | 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-246-10/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* update dependenciesKen Raeburn2004-04-233-95/+134
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16261 dc483132-0cff-0310-8789-dd5450dbe970