aboutsummaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorJeffrey Altman <jaltman@secure-endpoints.com>2005-01-05 07:51:46 +0000
committerJeffrey Altman <jaltman@secure-endpoints.com>2005-01-05 07:51:46 +0000
commitefdc1bd5f475b8935f8e92739b78066c21e59dee (patch)
tree145534e20ad874dfc42b5e769dd884603865628b /src/lib
parent71cec0a783d3a43a18b5fda68bb6bd629ac871a5 (diff)
downloadkrb5-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/ChangeLog4
-rw-r--r--src/lib/krb5/ChangeLog4
-rw-r--r--src/lib/krb5/libkrb5.exports1
-rw-r--r--src/lib/krb5/os/ChangeLog4
-rw-r--r--src/lib/krb5/os/Makefile.in3
-rw-r--r--src/lib/krb5/os/thread_safe.c40
-rw-r--r--src/lib/krb5_32.def1
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