Better handling of error codes returned by winsock
authorKeith Vetter <keithv@fusion.com>
Sat, 3 Jun 1995 01:38:03 +0000 (01:38 +0000)
committerKeith Vetter <keithv@fusion.com>
Sat, 3 Jun 1995 01:38:03 +0000 (01:38 +0000)
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@5937 dc483132-0cff-0310-8789-dd5450dbe970

src/util/et/ChangeLog
src/util/et/error_message.c

index b8330fd8d9b3fef42ac865c4c8192a35ce0df7e4..8e7990f79a70eaac10fafaa8031cb9c1427521fc 100644 (file)
@@ -1,3 +1,7 @@
+Fri Jun 2 18:05:16 1995 Keith Vetter (keithv@fusion.com)
+
+       * error_message.c: better handling of Winsock errors.
+
 Tue May  2 21:35:09 1995  Tom Yu  (tlyu@dragons-lair)
 
        * Makefile.in: remove spurious whitespace from blank line
index b549a02bd1268c452827888e0849b87adb4fedad..9f493808f3d841b66ef5e11052ccb82846c53919 100644 (file)
@@ -31,6 +31,15 @@ long code;
     int started = 0;
     char *cp;
 
+#ifdef _WINDOWS
+/*
+** Winsock defines errors in the range 10000-10100. These are equivalent
+** to 10000 plus the Berkeley error numbers.
+*/
+    if (code >= 10000 && code <= 10100)                /* Is it Winsock error? */
+       code -= 10000;                          /* Turn into Berkeley errno */
+#endif
+
     l_offset = code & ((1<<ERRCODE_RANGE)-1);
     offset = (int) l_offset;
     table_num = code - l_offset;