      def samePrincipal(self, principal1, principal2):
          """
          Check whether the two prinicpals are exactly the same in terms of
-@@ -1219,7 +1310,6 @@
+@@ -1219,7 +1312,6 @@
              return False
                  
      def matchPrincipal(self, principal1, principal2, request):

         """
         Check whether the principal1 is a principal in the set defined by
         principal2.
@@ -1244,6 +1334,9 @@
             if isinstance(principal1, davxml.Unauthenticated):
                 yield False
                 return

 
         if isinstance(principal, davxml.HRef):
             yield principal
@@ -1517,6 +1616,270 @@
         return None
 
     ##
