projects
/
invirt/packages/python-afs.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Update the build-dependencies.
[invirt/packages/python-afs.git]
/
afs
/
_acl.pyx
diff --git
a/afs/_acl.pyx
b/afs/_acl.pyx
index
5f0360b
..
bf1b1f9
100644
(file)
--- a/
afs/_acl.pyx
+++ b/
afs/_acl.pyx
@@
-1,7
+1,7
@@
-from afs cimport *
-from afs import pyafs_error
+from afs._util cimport *
+from afs._util import pyafs_error
-cdef import from "afs/prs_fs.h":
+cdef extern from "afs/prs_fs.h":
enum:
PRSFS_READ, PRSFS_WRITE, PRSFS_INSERT, PRSFS_LOOKUP,
PRSFS_DELETE, PRSFS_LOCK, PRSFS_ADMINISTER,
enum:
PRSFS_READ, PRSFS_WRITE, PRSFS_INSERT, PRSFS_LOOKUP,
PRSFS_DELETE, PRSFS_LOCK, PRSFS_ADMINISTER,
@@
-16,12
+16,12
@@
cdef struct vcxstat2:
afs_int32 anyAccess
char mvstat
afs_int32 anyAccess
char mvstat
-READ = PRSFS_READ
-WRITE = PRSFS_WRITE
-INSERT = PRSFS_INSERT
-LOOKUP = PRSFS_LOOKUP
-DELETE = PRSFS_DELETE
-LOCK = PRSFS_LOCK
+READ = PRSFS_READ
+WRITE = PRSFS_WRITE
+INSERT = PRSFS_INSERT
+LOOKUP = PRSFS_LOOKUP
+DELETE = PRSFS_DELETE
+LOCK = PRSFS_LOCK
ADMINISTER = PRSFS_ADMINISTER
USR0 = PRSFS_USR0
USR1 = PRSFS_USR1
ADMINISTER = PRSFS_ADMINISTER
USR0 = PRSFS_USR0
USR1 = PRSFS_USR1
@@
-37,10
+37,12
@@
DEF MAXSIZE = 2048
def getAcl(char* dir, int follow=1):
cdef char space[MAXSIZE]
pioctl_read(dir, VIOCGETAL, space, MAXSIZE, follow)
def getAcl(char* dir, int follow=1):
cdef char space[MAXSIZE]
pioctl_read(dir, VIOCGETAL, space, MAXSIZE, follow)
- ret = space # Python managed string
- return ret
+ return space
def getCallerAccess(char *dir, int follow=1):
cdef vcxstat2 stat
pioctl_read(dir, VIOC_GETVCXSTATUS2, <void*>&stat, sizeof(vcxstat2), follow)
return stat.callerAccess
def getCallerAccess(char *dir, int follow=1):
cdef vcxstat2 stat
pioctl_read(dir, VIOC_GETVCXSTATUS2, <void*>&stat, sizeof(vcxstat2), follow)
return stat.callerAccess
+
+def setAcl(char* dir, char* acl, int follow=1):
+ pioctl_write(dir, VIOCSETAL, acl, follow)