si_t
{ offsetof(si_t, aowner), "USER_OBJ" },
{ offsetof(si_t, agroup), "GROUP_OBJ" },
{ offsetof(si_t, aother), "OTHER_OBJ" },
{ offsetof(si_t, ausers), "USER" },
{ offsetof(si_t, agroups), "GROUP" },
{ offsetof(si_t, downer), "DEF_USER_OBJ" },
{ offsetof(si_t, dgroup), "DEF_GROUP_OBJ" },
{ offsetof(si_t, dother), "DEF_OTHER_OBJ" },
{ offsetof(si_t, dusers), "DEF_USER" },
{ offsetof(si_t, dgroups), "DEF_GROUP" },
si_t *si;
si = mdb_alloc(sizeof (si_t), UM_SLEEP);
if (mdb_vread(si, sizeof (si_t), (uintptr_t)inode.i_ufs_acl) == -1) {
mdb_free(si, sizeof (si_t));
si_t *si = wsp->walk_data;
mdb_free(wsp->walk_data, sizeof (si_t));
si_t *sp;
sp = kmem_zalloc(sizeof (si_t), KM_SLEEP);
aclentry2vsecattr(si_t *sp, vsecattr_t *vsap)
ufs_si_free_mem(si_t *sp)
kmem_free(sp, sizeof (si_t));
si_t *tsp, *sp = tdp->i_ufs_acl;
tsp = kmem_zalloc(sizeof (si_t), KM_SLEEP);
si_t *
ufs_acl_cp(si_t *sp)
si_t *dsp;
dsp = kmem_zalloc(sizeof (si_t), KM_SLEEP);
si_t *sp;
ufs_sectobuf(si_t *sp, caddr_t *buf, size_t *len)
ufs_si_free(si_t *sp, struct vfs *vfsp, cred_t *cr)
si_cachei_get(struct inode *ip, si_t **spp)
si_t *sp;
si_cachea_get(struct inode *ip, si_t *spi, si_t **spp)
si_t *sp;
si_cache_put(si_t *sp)
si_t **tspp;
si_cache_del(si_t *sp, int signature)
si_t **tspp;
si_cachea = kmem_zalloc(si_cachecnt * sizeof (si_t *), KM_SLEEP);
si_cachei = kmem_zalloc(si_cachecnt * sizeof (si_t *), KM_SLEEP);
si_signature(si_t *sp)
si_cmp(si_t *sp1, si_t *sp2)
si_t *tsp, **tspp;
si_t *sp = ip->i_ufs_acl;
si_t *sp;
static int si_signature(si_t *);
static int si_cachei_get(struct inode *, si_t **);
static int si_cachea_get(struct inode *, si_t *, si_t **);
static int si_cmp(si_t *, si_t *);
static void si_cache_put(si_t *);
void si_cache_del(si_t *, int);
static void ufs_si_free_mem(si_t *);
static int ufs_si_store(struct inode *, si_t *, int, cred_t *);
static si_t *ufs_acl_cp(si_t *);
static int ufs_sectobuf(si_t *, caddr_t *, size_t *);
static int vsecattr2aclentry(vsecattr_t *, si_t **);
static int aclentry2vsecattr(si_t *, vsecattr_t *);
si_t *sp = NULL;
si_t **si_cachea; /* The 'by acl' cache chains */
si_t **si_cachei; /* The 'by inode' cache chains */
si_t *sp;
ufs_si_store(struct inode *ip, si_t *sp, int puship, cred_t *cr)
si_t *oldsp;
si_t *csp;
vsecattr2aclentry(vsecattr_t *vsap, si_t **spp)
si_t *i_ufs_acl; /* pointer to acl entry */
extern int ufs_si_free(si_t *, struct vfs *, cred_t *);