1ae1add4eSEdward Tomasz Napierala /*- 2ae1add4eSEdward Tomasz Napierala * Copyright (c) 2008 Edward Tomasz Napierała <trasz@FreeBSD.org> 3ae1add4eSEdward Tomasz Napierala * All rights reserved. 4ae1add4eSEdward Tomasz Napierala * 5ae1add4eSEdward Tomasz Napierala * Redistribution and use in source and binary forms, with or without 6ae1add4eSEdward Tomasz Napierala * modification, are permitted provided that the following conditions 7ae1add4eSEdward Tomasz Napierala * are met: 8ae1add4eSEdward Tomasz Napierala * 1. Redistributions of source code must retain the above copyright 9ae1add4eSEdward Tomasz Napierala * notice, this list of conditions and the following disclaimer. 10ae1add4eSEdward Tomasz Napierala * 2. Redistributions in binary form must reproduce the above copyright 11ae1add4eSEdward Tomasz Napierala * notice, this list of conditions and the following disclaimer in the 12ae1add4eSEdward Tomasz Napierala * documentation and/or other materials provided with the distribution. 13ae1add4eSEdward Tomasz Napierala * 14b7014134SEdward Tomasz Napierala * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 15b7014134SEdward Tomasz Napierala * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 16b7014134SEdward Tomasz Napierala * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 17b7014134SEdward Tomasz Napierala * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 18b7014134SEdward Tomasz Napierala * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19b7014134SEdward Tomasz Napierala * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20b7014134SEdward Tomasz Napierala * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21b7014134SEdward Tomasz Napierala * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22b7014134SEdward Tomasz Napierala * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23b7014134SEdward Tomasz Napierala * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24b7014134SEdward Tomasz Napierala * SUCH DAMAGE. 25ae1add4eSEdward Tomasz Napierala */ 26ae1add4eSEdward Tomasz Napierala 27ae1add4eSEdward Tomasz Napierala #include <sys/cdefs.h> 28ae1add4eSEdward Tomasz Napierala __FBSDID("$FreeBSD$"); 29ae1add4eSEdward Tomasz Napierala 30ae1add4eSEdward Tomasz Napierala #include <sys/acl.h> 31ae1add4eSEdward Tomasz Napierala 32*8d7e1f15SCraig Rodrigues int __oldacl_get_perm_np(acl_permset_t, oldacl_perm_t); 33*8d7e1f15SCraig Rodrigues int __oldacl_add_perm(acl_permset_t, oldacl_perm_t); 34*8d7e1f15SCraig Rodrigues int __oldacl_delete_perm(acl_permset_t, oldacl_perm_t); 359762525cSCraig Rodrigues 36ae1add4eSEdward Tomasz Napierala /* 37ae1add4eSEdward Tomasz Napierala * Compatibility wrappers for applications compiled against libc from before 38ae1add4eSEdward Tomasz Napierala * NFSv4 ACLs were added. 39ae1add4eSEdward Tomasz Napierala */ 40ae1add4eSEdward Tomasz Napierala int 41ae1add4eSEdward Tomasz Napierala __oldacl_get_perm_np(acl_permset_t permset_d, oldacl_perm_t perm) 42ae1add4eSEdward Tomasz Napierala { 43ae1add4eSEdward Tomasz Napierala 44ae1add4eSEdward Tomasz Napierala return (acl_get_perm_np(permset_d, perm)); 45ae1add4eSEdward Tomasz Napierala } 46ae1add4eSEdward Tomasz Napierala 47ae1add4eSEdward Tomasz Napierala int 48ae1add4eSEdward Tomasz Napierala __oldacl_add_perm(acl_permset_t permset_d, oldacl_perm_t perm) 49ae1add4eSEdward Tomasz Napierala { 50ae1add4eSEdward Tomasz Napierala 51ae1add4eSEdward Tomasz Napierala return (acl_add_perm(permset_d, perm)); 52ae1add4eSEdward Tomasz Napierala } 53ae1add4eSEdward Tomasz Napierala 54ae1add4eSEdward Tomasz Napierala int 55ae1add4eSEdward Tomasz Napierala __oldacl_delete_perm(acl_permset_t permset_d, oldacl_perm_t perm) 56ae1add4eSEdward Tomasz Napierala { 57ae1add4eSEdward Tomasz Napierala 58ae1add4eSEdward Tomasz Napierala return (acl_delete_perm(permset_d, perm)); 59ae1add4eSEdward Tomasz Napierala } 60ae1add4eSEdward Tomasz Napierala 61ae1add4eSEdward Tomasz Napierala __sym_compat(acl_get_perm_np, __oldacl_get_perm_np, FBSD_1.0); 62ae1add4eSEdward Tomasz Napierala __sym_compat(acl_add_perm, __oldacl_add_perm, FBSD_1.0); 63ae1add4eSEdward Tomasz Napierala __sym_compat(acl_delete_perm, __oldacl_delete_perm, FBSD_1.0); 64