diff options
author | Jeffrey Altman <jaltman@secure-endpoints.com> | 2005-01-05 07:51:46 +0000 |
---|---|---|
committer | Jeffrey Altman <jaltman@secure-endpoints.com> | 2005-01-05 07:51:46 +0000 |
commit | efdc1bd5f475b8935f8e92739b78066c21e59dee (patch) | |
tree | 145534e20ad874dfc42b5e769dd884603865628b /src/lib | |
parent | 71cec0a783d3a43a18b5fda68bb6bd629ac871a5 (diff) | |
download | krb5-efdc1bd5f475b8935f8e92739b78066c21e59dee.zip krb5-efdc1bd5f475b8935f8e92739b78066c21e59dee.tar.gz krb5-efdc1bd5f475b8935f8e92739b78066c21e59dee.tar.bz2 |
Add new function krb5_boolean krb5_is_thread_safe(void) to library.
This function simply reports whether or not ENABLE_THREADS was specified
at compile time. It is meant to be used by applications which need to
know whether or not multithread libraries must be initialized OR
whether or not calls to Kerberos library functions from multi-threaded
applications must be protected by an application global mutex.
ticket: new
tags: pullup
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17003 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib')
-rw-r--r-- | src/lib/ChangeLog | 4 | ||||
-rw-r--r-- | src/lib/krb5/ChangeLog | 4 | ||||
-rw-r--r-- | src/lib/krb5/libkrb5.exports | 1 | ||||
-rw-r--r-- | src/lib/krb5/os/ChangeLog | 4 | ||||
-rw-r--r-- | src/lib/krb5/os/Makefile.in | 3 | ||||
-rw-r--r-- | src/lib/krb5/os/thread_safe.c | 40 | ||||
-rw-r--r-- | src/lib/krb5_32.def | 1 |
7 files changed, 57 insertions, 0 deletions
diff --git a/src/lib/ChangeLog b/src/lib/ChangeLog index 1123904..10a1565 100644 --- a/src/lib/ChangeLog +++ b/src/lib/ChangeLog @@ -1,3 +1,7 @@ +2005-01-03 Jeffrey Altman <jaltman@mit.edu> + + * krb5_32.def: export krb5_is_thread_safe() + 2004-12-18 Jeffrey Altman <jaltman@mit.edu> * krb5_32.def: mark krb5_principal2salt as using the wrong diff --git a/src/lib/krb5/ChangeLog b/src/lib/krb5/ChangeLog index e1ca4df..97a7fe3 100644 --- a/src/lib/krb5/ChangeLog +++ b/src/lib/krb5/ChangeLog @@ -1,3 +1,7 @@ +2005-01-04 Jeffrey Altman <jaltman@mit.edu> + + * libkrb5.exports: add krb5_is_thread_safe + 2004-11-18 Ken Raeburn <raeburn@mit.edu> * Makefile.in (SHLIB_EXPLIBS): Remove -ldl accidentally added in diff --git a/src/lib/krb5/libkrb5.exports b/src/lib/krb5/libkrb5.exports index 204296a..f16b45c 100644 --- a/src/lib/krb5/libkrb5.exports +++ b/src/lib/krb5/libkrb5.exports @@ -458,6 +458,7 @@ krb5_init_keyblock krb5_init_secure_context krb5_internalize_opaque krb5_is_permitted_enctype +krb5_is_thread_safe krb5_kdc_rep_decrypt_proc krb5_kt_add_entry krb5_kt_close diff --git a/src/lib/krb5/os/ChangeLog b/src/lib/krb5/os/ChangeLog index 1c08765..00b7cb8 100644 --- a/src/lib/krb5/os/ChangeLog +++ b/src/lib/krb5/os/ChangeLog @@ -1,3 +1,7 @@ +2005-01-03 Jeffrey Altman <jaltman@mit.edu> + + * thread_safe.c: (new file) krb5_is_thread_safe() + 2004-12-08 Ken Raeburn <raeburn@mit.edu> * accessor.c (krb5int_accessor): Set new field use_dns_kdc. diff --git a/src/lib/krb5/os/Makefile.in b/src/lib/krb5/os/Makefile.in index a971ba2..ade99dd 100644 --- a/src/lib/krb5/os/Makefile.in +++ b/src/lib/krb5/os/Makefile.in @@ -49,6 +49,7 @@ STLIBOBJS= \ send524.o \ sendto_kdc.o \ sn2princ.o \ + thread_safe.o \ timeofday.o \ toffset.o \ unlck_file.o \ @@ -94,6 +95,7 @@ OBJS= \ $(OUTPRE)send524.$(OBJEXT) \ $(OUTPRE)sendto_kdc.$(OBJEXT) \ $(OUTPRE)sn2princ.$(OBJEXT) \ + $(OUTPRE)thread_safe.$(OBJEXT) \ $(OUTPRE)timeofday.$(OBJEXT) \ $(OUTPRE)toffset.$(OBJEXT) \ $(OUTPRE)unlck_file.$(OBJEXT) \ @@ -139,6 +141,7 @@ SRCS= \ $(srcdir)/send524.c \ $(srcdir)/sendto_kdc.c \ $(srcdir)/sn2princ.c \ + $(srcdir)/thread_safe.c \ $(srcdir)/timeofday.c \ $(srcdir)/toffset.c \ $(srcdir)/unlck_file.c \ diff --git a/src/lib/krb5/os/thread_safe.c b/src/lib/krb5/os/thread_safe.c new file mode 100644 index 0000000..faac234 --- /dev/null +++ b/src/lib/krb5/os/thread_safe.c @@ -0,0 +1,40 @@ +/* + * lib/krb5/os/thread_safec + * + * Copyright 2005 by the Massachusetts Institute of Technology. + * All Rights Reserved. + * + * Export of this software from the United States of America may + * require a specific license from the United States Government. + * It is the responsibility of any person or organization contemplating + * export to obtain such a license before exporting. + * + * WITHIN THAT CONSTRAINT, permission to use, copy, modify, and + * distribute this software and its documentation for any purpose and + * without fee is hereby granted, provided that the above copyright + * notice appear in all copies and that both that copyright notice and + * this permission notice appear in supporting documentation, and that + * the name of M.I.T. not be used in advertising or publicity pertaining + * to distribution of the software without specific, written prior + * permission. Furthermore if you modify this software you must label + * your software as modified software and not distribute it in such a + * fashion that it might be confused with the original M.I.T. software. + * M.I.T. makes no representations about the suitability of + * this software for any purpose. It is provided "as is" without express + * or implied warranty. + * + * + * krb5_is_thread_safe() function. + */ + +#include "k5-int.h" + +krb5_boolean KRB5_CALLCONV +krb5_is_thread_safe(void) +{ +#if defined(ENABLE_THREADS) + return 1; +#else + return 0; +#endif +} diff --git a/src/lib/krb5_32.def b/src/lib/krb5_32.def index 95f8146..0125d26 100644 --- a/src/lib/krb5_32.def +++ b/src/lib/krb5_32.def @@ -168,6 +168,7 @@ krb5_c_string_to_key_with_params krb5_init_keyblock krb5_init_random_key krb5_init_secure_context + krb5_is_thread_safe krb5_kt_add_entry krb5_kt_close krb5_kt_default |