summaryrefslogtreecommitdiffstats
path: root/source/lib/sysacls.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2001-06-08 19:22:53 +0000
committerJeremy Allison <jra@samba.org>2001-06-08 19:22:53 +0000
commit80c6bb5db3769cc3cd5efa0d36a649a7b4f6d07b (patch)
tree588a611f052012241d247feb1b3e6fd226f50fcc /source/lib/sysacls.c
parent07ad26dbef99f0811e0d6fd6d14769aa402c2f86 (diff)
downloadsamba-80c6bb5db3769cc3cd5efa0d36a649a7b4f6d07b.tar.gz
samba-80c6bb5db3769cc3cd5efa0d36a649a7b4f6d07b.tar.xz
samba-80c6bb5db3769cc3cd5efa0d36a649a7b4f6d07b.zip
Added sys_acl_delete_def_file() - needed as part of NT ACL editing fix.
Will add changes for other supported ACL systems shortly (Herb, I may need help with the IRIX one). Jeremy.
Diffstat (limited to 'source/lib/sysacls.c')
-rw-r--r--source/lib/sysacls.c26
1 files changed, 19 insertions, 7 deletions
diff --git a/source/lib/sysacls.c b/source/lib/sysacls.c
index 5df67596ac6..7eadc6d4cb7 100644
--- a/source/lib/sysacls.c
+++ b/source/lib/sysacls.c
@@ -45,8 +45,9 @@ extern int DEBUGLEVEL;
int sys_acl_set_qualifier( SMB_ACL_ENTRY_T entry, void *qual)
int sys_acl_set_permset( SMB_ACL_ENTRY_T entry, SMB_ACL_PERMSET_T permset)
int sys_acl_valid( SMB_ACL_T theacl )
- int sys_acl_set_file( char *name, SMB_ACL_TYPE_T acltype, SMB_ACL_T theacl)
+ int sys_acl_set_file( const char *name, SMB_ACL_TYPE_T acltype, SMB_ACL_T theacl)
int sys_acl_set_fd( int fd, SMB_ACL_T theacl)
+ int sys_acl_delete_def_file(const char *path)
This next one is not POSIX complient - but we *have* to have it !
More POSIX braindamage.
@@ -160,7 +161,7 @@ int sys_acl_valid( SMB_ACL_T theacl )
return acl_valid(theacl);
}
-int sys_acl_set_file( char *name, SMB_ACL_TYPE_T acltype, SMB_ACL_T theacl)
+int sys_acl_set_file( const char *name, SMB_ACL_TYPE_T acltype, SMB_ACL_T theacl)
{
return acl_set_file(name, acltype, theacl);
}
@@ -170,6 +171,11 @@ int sys_acl_set_fd( int fd, SMB_ACL_T theacl)
return acl_set_fd(fd, theacl);
}
+int sys_acl_delete_def_file(const char *name)
+{
+ return acl_delete_def_file(name);
+}
+
int sys_acl_free_text(char *text)
{
return acl_free(text);
@@ -659,7 +665,7 @@ int sys_acl_valid(SMB_ACL_T acl_d)
return 0;
}
-int sys_acl_set_file(char *name, SMB_ACL_TYPE_T type, SMB_ACL_T acl_d)
+int sys_acl_set_file(const char *name, SMB_ACL_TYPE_T type, SMB_ACL_T acl_d)
{
struct stat s;
struct acl *acl_p;
@@ -1000,7 +1006,7 @@ int sys_acl_valid(SMB_ACL_T acl_d)
return acl_valid(acl_d->aclp);
}
-int sys_acl_set_file(char *name, SMB_ACL_TYPE_T type, SMB_ACL_T acl_d)
+int sys_acl_set_file(const char *name, SMB_ACL_TYPE_T type, SMB_ACL_T acl_d)
{
return acl_set_file(name, type, acl_d->aclp);
}
@@ -1073,7 +1079,7 @@ int sys_acl_valid( SMB_ACL_T theacl )
return acl_valid(theacl);
}
-int sys_acl_set_file( char *name, SMB_ACL_TYPE_T acltype, SMB_ACL_T theacl)
+int sys_acl_set_file( const char *name, SMB_ACL_TYPE_T acltype, SMB_ACL_T theacl)
{
return acl_set_file(name, acltype, theacl);
}
@@ -1911,7 +1917,7 @@ int sys_acl_valid( SMB_ACL_T theacl )
return(0);
}
-int sys_acl_set_file( char *name, SMB_ACL_TYPE_T acltype, SMB_ACL_T theacl)
+int sys_acl_set_file( const char *name, SMB_ACL_TYPE_T acltype, SMB_ACL_T theacl)
{
struct acl_entry_link *acl_entry_link = NULL;
struct acl *file_acl = NULL;
@@ -2231,7 +2237,7 @@ int sys_acl_valid( SMB_ACL_T theacl )
return -1;
}
-int sys_acl_set_file( char *name, SMB_ACL_TYPE_T acltype, SMB_ACL_T theacl)
+int sys_acl_set_file( const char *name, SMB_ACL_TYPE_T acltype, SMB_ACL_T theacl)
{
errno = ENOSYS;
return -1;
@@ -2243,6 +2249,12 @@ int sys_acl_set_fd( int fd, SMB_ACL_T theacl)
return -1;
}
+int sys_acl_delete_def_file(const char *name)
+{
+ errno = ENOSYS;
+ return -1;
+}
+
int sys_acl_free_acl(SMB_ACL_T the_acl)
{
errno = ENOSYS;