kidmap_priv.h revision 32ff2b3c67debc0dc66e07986e072d489ea88322
c5c4113dfcabb1eed3d4bdf7609de5170027a794nw * CDDL HEADER START
c5c4113dfcabb1eed3d4bdf7609de5170027a794nw * The contents of this file are subject to the terms of the
c5c4113dfcabb1eed3d4bdf7609de5170027a794nw * Common Development and Distribution License (the "License").
c5c4113dfcabb1eed3d4bdf7609de5170027a794nw * You may not use this file except in compliance with the License.
c5c4113dfcabb1eed3d4bdf7609de5170027a794nw * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
c5c4113dfcabb1eed3d4bdf7609de5170027a794nw * See the License for the specific language governing permissions
c5c4113dfcabb1eed3d4bdf7609de5170027a794nw * and limitations under the License.
c5c4113dfcabb1eed3d4bdf7609de5170027a794nw * When distributing Covered Code, include this CDDL HEADER in each
c5c4113dfcabb1eed3d4bdf7609de5170027a794nw * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
c5c4113dfcabb1eed3d4bdf7609de5170027a794nw * If applicable, add the following below this CDDL HEADER, with the
c5c4113dfcabb1eed3d4bdf7609de5170027a794nw * fields enclosed by brackets "[]" replaced with your own identifying
c5c4113dfcabb1eed3d4bdf7609de5170027a794nw * information: Portions Copyright [yyyy] [name of copyright owner]
c5c4113dfcabb1eed3d4bdf7609de5170027a794nw * CDDL HEADER END
f7b4b2fefbe31d31fbe1e6a4b494a8fbed3f49b1jp * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
c5c4113dfcabb1eed3d4bdf7609de5170027a794nw * Use is subject to license terms.
c5c4113dfcabb1eed3d4bdf7609de5170027a794nw * Windows to Solaris Identity Mapping kernel API
c5c4113dfcabb1eed3d4bdf7609de5170027a794nw * This header file contains private definitions.
c5c4113dfcabb1eed3d4bdf7609de5170027a794nwextern "C" {
32ff2b3c67debc0dc66e07986e072d489ea88322Julian Pullentypedef struct sid2pid {
32ff2b3c67debc0dc66e07986e072d489ea88322Julian Pullentypedef struct pid2sid {
d15447b6c777a1b2223924443bf36c9c8efb2ea4jptypedef struct idmap_sid2pid_cache {
d15447b6c777a1b2223924443bf36c9c8efb2ea4jptypedef struct idmap_pid2sid_cache {
0b10de9fc92843e871f48de87f623808c5913a71jp * There is a cache for every mapping request because a group SID
0b10de9fc92843e871f48de87f623808c5913a71jp * on Windows can be set in a file owner field and versa-visa.
0b10de9fc92843e871f48de87f623808c5913a71jp * To stop this causing problems on Solaris a SID can map to
0b10de9fc92843e871f48de87f623808c5913a71jp * both a UID and a GID.
c5c4113dfcabb1eed3d4bdf7609de5170027a794nwtypedef struct idmap_cache {
0b10de9fc92843e871f48de87f623808c5913a71jpkidmap_cache_lookup_uidbysid(idmap_cache_t *cache, const char *sid_prefix,
0b10de9fc92843e871f48de87f623808c5913a71jpkidmap_cache_lookup_gidbysid(idmap_cache_t *cache, const char *sid_prefix,
0b10de9fc92843e871f48de87f623808c5913a71jpkidmap_cache_lookup_pidbysid(idmap_cache_t *cache, const char *sid_prefix,
0b10de9fc92843e871f48de87f623808c5913a71jpkidmap_cache_lookup_sidbyuid(idmap_cache_t *cache, const char **sid_prefix,
0b10de9fc92843e871f48de87f623808c5913a71jpkidmap_cache_lookup_sidbygid(idmap_cache_t *cache, const char **sid_prefix,
d15447b6c777a1b2223924443bf36c9c8efb2ea4jpkidmap_cache_add_sid2uid(idmap_cache_t *cache, const char *sid_prefix,
d15447b6c777a1b2223924443bf36c9c8efb2ea4jpkidmap_cache_add_sid2gid(idmap_cache_t *cache, const char *sid_prefix,
d15447b6c777a1b2223924443bf36c9c8efb2ea4jpkidmap_cache_add_sid2pid(idmap_cache_t *cache, const char *sid_prefix,
f7b4b2fefbe31d31fbe1e6a4b494a8fbed3f49b1jpkidmap_cache_get_data(idmap_cache_t *cache, size_t *uidbysid, size_t *gidbysid,
c5c4113dfcabb1eed3d4bdf7609de5170027a794nwconst char *
c5c4113dfcabb1eed3d4bdf7609de5170027a794nw#endif /* _KIDMAP_PRIV_H */