[krbdev.mit.edu #1432] patch to compile with cygwin

The RT System itself via RT rt-comment at krbdev.mit.edu
Sat Apr 19 03:03:01 EDT 2003


>From liebman at zod.com  Sat Apr 19 03:02:57 2003
Received: from pacific-carrier-annex.mit.edu (PACIFIC-CARRIER-ANNEX.MIT.EDU [18.7.21.83]) by krbdev.mit.edu (8.9.3) with ESMTP
	id DAA10892; Sat, 19 Apr 2003 03:02:57 -0400 (EDT)
Received: from smtp015.mail.yahoo.com (smtp015.mail.yahoo.com [216.136.173.59])
	by pacific-carrier-annex.mit.edu (8.12.4/8.9.2) with SMTP id h3J72vIQ024559
	for <krb5-bugs at mit.edu>; Sat, 19 Apr 2003 03:02:57 -0400 (EDT)
Received: from 66-215-26-54.pas-mres.charterpipeline.net (HELO XYZZY) (cbliebman at 66.215.26.54 with login)
  by smtp.mail.vip.sc5.yahoo.com with SMTP; 19 Apr 2003 07:02:56 -0000
Message-ID: <003901c30641$b0020870$0401010a at XYZZY>
From: "Christopher B. Liebman" <liebman at zod.com>
To: <krb5-bugs at mit.edu>
Subject: patch to compile/run on cygwin
Date: Sat, 19 Apr 2003 00:02:48 -0700
MIME-Version: 1.0
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106

To: krb5-bugs at mit.edu
Subject:
From: liebman
Reply-To: liebman
Cc:
X-send-pr-version: 3.99


>Submitter-Id: net
>Originator: Christopher B. Liebman
>Organization:
 None
>Confidential: no
>Synopsis: patch to compile with cygwin
>Severity: non-critical
>Priority: low
>Category: krb5-misc
>Class:  sw-bug
>Release: krb5-1.2.8
>Environment:
System: CYGWIN_NT-5.0 XYZZY 1.3.22(0.78/3/2) 2003-03-18 09:20 i686 unknown
unknown Cygwin


>Description:
 some compile problems relating to the definition of errno and
 issues renaming files that are open
>How-To-Repeat:
 compile on Windows under cygwin
>Fix:

diff -u -r krb5-1.2.8-dist/src/lib/krb4/in_tkt.c
krb5-1.2.8/src/lib/krb4/in_tkt.c
--- krb5-1.2.8-dist/src/lib/krb4/in_tkt.c 2001-01-26
20:43:32.000000000 -0800
+++ krb5-1.2.8/src/lib/krb4/in_tkt.c 2003-04-18 21:45:36.000000000 -0700
@@ -35,6 +35,9 @@
 #ifdef HAVE_UNISTD_H
 #include <unistd.h>
 #endif
+#ifdef __CYGWIN__
+#include <errno.h>
+#endif

 extern int krb_debug;

diff -u -r krb5-1.2.8-dist/src/lib/krb4/send_to_kdc.c
krb5-1.2.8/src/lib/krb4/send_to_kdc.c
--- krb5-1.2.8-dist/src/lib/krb4/send_to_kdc.c 2000-05-17
00:13:44.000000000 -0700
+++ krb5-1.2.8/src/lib/krb4/send_to_kdc.c 2003-04-18
21:15:46.000000000 -0700
@@ -18,7 +18,9 @@
 #ifdef HAVE_SYS_SELECT_H
 #include <sys/select.h>
 #endif
-
+#ifdef __CYGWIN__
+#include <errno.h>
+#endif
 #define S_AD_SZ sizeof(struct sockaddr_in)

 #ifdef HAVE_STDLIB_H
diff -u -r krb5-1.2.8-dist/src/lib/krb5/rcache/rc_io.c
krb5-1.2.8/src/lib/krb5/rcache/rc_io.c
--- krb5-1.2.8-dist/src/lib/krb5/rcache/rc_io.c 2001-10-29
17:21:32.000000000 -0800
+++ krb5-1.2.8/src/lib/krb5/rcache/rc_io.c 2003-04-18
21:15:46.000000000 -0700
@@ -262,6 +262,18 @@
     krb5_rc_io_open(context, new, fn);
     free(fn);
 #else
+#ifdef __CYGWIN__
+    close(new->fd);
+/*    unlink(new->fn);*/
+    close(old->fd);
+    if (rename(old->fn,new->fn) == -1) /* MUST be atomic! */
+ return KRB5_RC_IO_UNKNOWN;
+    fn = new->fn;
+    new->fn = NULL;  /* avoid clobbering */
+    krb5_rc_io_close(context, new);
+    krb5_rc_io_open(context, new, fn);
+    free(fn);
+#else
     if (rename(old->fn,new->fn) == -1) /* MUST be atomic! */
  return KRB5_RC_IO_UNKNOWN;
     fn = new->fn;
@@ -274,6 +286,7 @@
     new->fd = dup(old->fd);
 #endif
 #endif
+#endif
     return 0;
 }

diff -u -r krb5-1.2.8-dist/src/util/ss/help.c krb5-1.2.8/src/util/ss/help.c
--- krb5-1.2.8-dist/src/util/ss/help.c 2000-05-01 08:53:38.000000000 -0700
+++ krb5-1.2.8/src/util/ss/help.c 2003-04-18 21:40:16.000000000 -0700
@@ -12,7 +12,11 @@
 #include "ss_internal.h"
 #include "copyright.h"

+#ifdef __CYGWIN__
+#include <errno.h>
+#else
 extern int errno;
+#endif

 void ss_help (argc, argv, sci_idx, info_ptr)
     int argc;
diff -u -r krb5-1.2.8-dist/src/util/ss/pager.c
krb5-1.2.8/src/util/ss/pager.c
--- krb5-1.2.8-dist/src/util/ss/pager.c 1995-04-27 09:41:16.000000000 -0700
+++ krb5-1.2.8/src/util/ss/pager.c 2003-04-18 21:15:46.000000000 -0700
@@ -17,7 +17,11 @@
 static char MORE[] = "more";
 extern char *_ss_pager_name;
 extern char *getenv();
+#ifdef __CYGWIN__
+#include <errno.h>
+#else
 extern int errno;
+#endif

 /*
  * this needs a *lot* of work....
diff -u -r krb5-1.2.8-dist/src/util/ss/parse.c
krb5-1.2.8/src/util/ss/parse.c
--- krb5-1.2.8-dist/src/util/ss/parse.c 1994-08-18 13:48:42.000000000 -0700
+++ krb5-1.2.8/src/util/ss/parse.c 2003-04-18 21:15:46.000000000 -0700
@@ -6,7 +6,9 @@

 #include "ss_internal.h"
 #include "copyright.h"
-
+#ifdef __CYGWIN__
+#include <errno.h>
+#endif

 enum parse_mode { WHITESPACE, TOKEN, QUOTED_STRING };




More information about the krb5-bugs mailing list