Adjust for the fact that Python 2.5 doesn't have collections.MutableSet. When the MutableSet mixin isn't available, we fall back on just deriving from object. This means that comparisons between membership sets like __le__ as well as operators like __or__ aren't available, but it seems unlikely those will be used for manipulating the AFS protection database. Signed-off-by: Evan Broder <broder@mit.edu>
First attempt at an ORM-like interface to the PRDB. Missing features that should eventually be added: - Create/delete users/groups - Expose afs._pts.PTS._AfsToKrb5 and afs._pts.PTS._Krb5ToAfs. _Krb5ToAfs could be exposed as a method to return a PTEntry from a Kerberos principal, while _AfsToKrb5 could be a method (or property) of a PTEntry that returns the equivalent Kerberos principal. Signed-off-by: Evan Broder <broder@mit.edu>
Implement the ability to set ACLs. - Added pioctl_write and setAcl to the Pyrex code - Added ACL.set to set an ACL to a given bitmask, ACL.apply to actually apply the ACL. ACLs set to 0 are pruned before applying. Signed-off-by: Jonathan Reed <jdreed@mit.edu>