New os.c-cygwin (and some minor WishList change I forgot to commit).
authorPhilip Hazel <ph10@hermes.cam.ac.uk>
Wed, 8 Mar 2006 09:43:10 +0000 (09:43 +0000)
committerPhilip Hazel <ph10@hermes.cam.ac.uk>
Wed, 8 Mar 2006 09:43:10 +0000 (09:43 +0000)
doc/doc-misc/WishList
doc/doc-txt/ChangeLog
src/OS/os.c-cygwin

index 572a8d5c11881a9145b96eeab91f4f4ac1f5bd29..3f70a9d643a3ae8b45f715f4e2c8ba6f31177a5c 100644 (file)
@@ -1,4 +1,4 @@
-$Cambridge: exim/doc/doc-misc/WishList,v 1.63 2006/03/02 15:13:59 ph10 Exp $
+$Cambridge: exim/doc/doc-misc/WishList,v 1.64 2006/03/08 09:43:10 ph10 Exp $
 
 EXIM 4 WISH LIST
 ----------------
@@ -1442,12 +1442,6 @@ this reason, I don't really like this idea.
 (236) 02-Feb-04 S  String in local_scan that's added to the binary version string
 ------------------------------------------------------------------------------
 
-(237) 02-Feb-04 M  Add_header in ACLs because "message" is overloaded
-
-This would be useful for verbs where "message" is an error message. See also
-333.
-------------------------------------------------------------------------------
-
 (238) 05-Feb-04 S  ${address to handle multiple addresses
 
 At present, ${address expects to see just one address. An extension would let
@@ -1905,7 +1899,7 @@ headers should be re-planned and re-implemented in a more consistent manner.
 These are the main previous items:
 
 Exim 3 Wish List: 41, 85, 149, 187.
-Exim 4 Wish List: 55, 62, 63, 160, 212, 237, 270, 314, 328.
+Exim 4 Wish List: 55, 62, 63, 160, 212, 270, 314, 328.
 ------------------------------------------------------------------------------
 
 (334) 07-Jun-05 M Support for messages larger than 2G
index 22f7b34e9497217473852647461edac59e0b0717..909570c9e55446bcdb8dae8a2bcce9ae564aa151 100644 (file)
@@ -1,4 +1,4 @@
-$Cambridge: exim/doc/doc-txt/ChangeLog,v 1.323 2006/03/07 20:58:55 jetmore Exp $
+$Cambridge: exim/doc/doc-txt/ChangeLog,v 1.324 2006/03/08 09:43:10 ph10 Exp $
 
 Change log file for Exim from version 4.21
 -------------------------------------------
@@ -278,6 +278,8 @@ PH/54 Added control=allow_auth_unadvertised, as it seems there are clients that
 PH/55 Added the add_header modified to ACLs. The use of "message" with "warn"
       will now be deprecated.
 
+PH/56 New os.c-cygwin from the Cygwin maintainer.
+
 JJ/06 exipick: added --unsorted option to allow unsorted output in all output
       formats (previously only available in exim formats via -bpr, -bpru,
       and -bpra.  Now also available in native and exiqgrep formats)
index 56b5a71849aa73259751d0a9a3378e685d5b9792..f7230ac8dd45f8a76ff66365a7c2bd5814b3bb58 100644 (file)
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/src/OS/os.c-cygwin,v 1.4 2005/10/03 09:53:38 ph10 Exp $ */
+/* $Cambridge: exim/src/OS/os.c-cygwin,v 1.5 2006/03/08 09:43:10 ph10 Exp $ */
 
 /*************************************************
 *     Exim - an Internet mail transport agent    *
@@ -49,6 +49,8 @@ unsigned int cygwin_WinVersion;
 #endif
 
 #include <windows.h>
+#define EqualLuid(Luid1, Luid2) \
+  ((Luid1.LowPart == Luid2.LowPart) && (Luid1.HighPart == Luid2.HighPart))
 #include <sys/cygwin.h>
 
 /* Special static variables */
@@ -130,9 +132,9 @@ static DWORD get_privileges ()
               && GetTokenInformation(hToken, TokenPrivileges,
                                      privs, length, &length)))) {
     for (i = 0; i < privs->PrivilegeCount; i++) {
-      if (privs->Privileges[i].Luid.QuadPart == cluid.QuadPart)
+      if (EqualLuid(privs->Privileges[i].Luid, cluid))
         ret |= CREATE_BIT;
-      else if (privs->Privileges[i].Luid.QuadPart == rluid.QuadPart)
+      else if (EqualLuid(privs->Privileges[i].Luid, rluid))
         ret |= RESTORE_BIT;
       else continue;
       if (ret == (CREATE_BIT | RESTORE_BIT))