aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlexandra Ellwood <lxs@mit.edu>1999-10-28 21:29:12 +0000
committerAlexandra Ellwood <lxs@mit.edu>1999-10-28 21:29:12 +0000
commit97b5cb550e0d0fc4af435a7d77b00d724112a894 (patch)
tree435e10c37a9df782a8775407c28fbeeabc72073d /src
parent4a5b9aac0a3668cfa00952418184530400bbbe29 (diff)
downloadkrb5-97b5cb550e0d0fc4af435a7d77b00d724112a894.zip
krb5-97b5cb550e0d0fc4af435a7d77b00d724112a894.tar.gz
krb5-97b5cb550e0d0fc4af435a7d77b00d724112a894.tar.bz2
Added support to use ErrorLib to get MIT Support Library and Mac OS Toolbox error codes (similar to the way windows does it)
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@11886 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src')
-rw-r--r--src/util/et/error_message.c18
-rw-r--r--src/util/et/error_table.h4
2 files changed, 20 insertions, 2 deletions
diff --git a/src/util/et/error_message.c b/src/util/et/error_message.c
index 7d03d34..b4a0537 100644
--- a/src/util/et/error_message.c
+++ b/src/util/et/error_message.c
@@ -27,12 +27,16 @@
#include "com_err.h"
#include "error_table.h"
+#ifdef macintosh
+#include <ErrorLib.h>
+#endif
+
#if defined(_MSDOS) || defined(_WIN32)
#define HAVE_STRERROR
#endif
#ifdef macintosh
-#define sys_nerr 100
+#define sys_nerr 100 /* XXX - What is this? */
#endif
#if !defined(HAVE_STRERROR) && !defined(SYS_ERRLIST_DECLARED)
@@ -143,8 +147,18 @@ KRB5_DLLIMP const char FAR * KRB5_CALLCONV error_message(code)
}
}
#endif
-
+
oops:
+
+#if defined(macintosh)
+ {
+ /* This may be a Mac OS Toolbox error or an MIT Support Library Error. Ask ErrorLib */
+ if (GetErrorLongString(code, buffer, ET_EBUFSIZ - 1) == noErr) {
+ return buffer;
+ }
+ }
+#endif
+
cp = buffer;
strcpy(cp, "Unknown code ");
cp += sizeof("Unknown code ") - 1;
diff --git a/src/util/et/error_table.h b/src/util/et/error_table.h
index 02c8d4a..2bc9076 100644
--- a/src/util/et/error_table.h
+++ b/src/util/et/error_table.h
@@ -9,7 +9,11 @@
#include <errno.h>
+#if defined(macintosh)
+#define ET_EBUFSIZ 256
+#else
#define ET_EBUFSIZ 64
+#endif
struct et_list {
struct et_list *next;