nscd_door.h revision 7d7551bcfe5ded1738ddbe3268520996a32023b4
cb5caa98562cf06753163f558cbcfe30b8f4673adjl * CDDL HEADER START
cb5caa98562cf06753163f558cbcfe30b8f4673adjl * The contents of this file are subject to the terms of the
cb5caa98562cf06753163f558cbcfe30b8f4673adjl * Common Development and Distribution License (the "License").
cb5caa98562cf06753163f558cbcfe30b8f4673adjl * You may not use this file except in compliance with the License.
cb5caa98562cf06753163f558cbcfe30b8f4673adjl * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
cb5caa98562cf06753163f558cbcfe30b8f4673adjl * See the License for the specific language governing permissions
cb5caa98562cf06753163f558cbcfe30b8f4673adjl * and limitations under the License.
cb5caa98562cf06753163f558cbcfe30b8f4673adjl * When distributing Covered Code, include this CDDL HEADER in each
cb5caa98562cf06753163f558cbcfe30b8f4673adjl * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
cb5caa98562cf06753163f558cbcfe30b8f4673adjl * If applicable, add the following below this CDDL HEADER, with the
cb5caa98562cf06753163f558cbcfe30b8f4673adjl * fields enclosed by brackets "[]" replaced with your own identifying
cb5caa98562cf06753163f558cbcfe30b8f4673adjl * information: Portions Copyright [yyyy] [name of copyright owner]
cb5caa98562cf06753163f558cbcfe30b8f4673adjl * CDDL HEADER END
606f6aa3d37f0f8e8282e483c1400bae5275aeebmichen * Copyright 2007 Sun Microsystems, Inc. All rights reserved.
cb5caa98562cf06753163f558cbcfe30b8f4673adjl * Use is subject to license terms.
7d7551bcfe5ded1738ddbe3268520996a32023b4Milan Jurik * Copyright 2012 Milan Jurik. All rights reserved.
cb5caa98562cf06753163f558cbcfe30b8f4673adjl * Definitions for nscd to nscd door interfaces
cb5caa98562cf06753163f558cbcfe30b8f4673adjlextern "C" {
cb5caa98562cf06753163f558cbcfe30b8f4673adjl/* door for Trusted Extensions */
cb5caa98562cf06753163f558cbcfe30b8f4673adjl#define TSOL_NAME_SERVICE_DOOR "/var/tsol/doors/name_service_door"
bf1e3bee1b13b3a914f0dd817a04f6e0ce8e0691michen/* TX per label nscd indication file */
bf1e3bee1b13b3a914f0dd817a04f6e0ce8e0691michen#define TSOL_NSCD_PER_LABEL_FILE "/var/tsol/doors/nscd_per_label"
cb5caa98562cf06753163f558cbcfe30b8f4673adjl/* nscd v2 nscd -> nscd call numbers */
cb5caa98562cf06753163f558cbcfe30b8f4673adjl#define NSCD_IMHERE (NSCD_CALLCAT_N2N|0x10) /* IMHERE+WHOAMI */
cb5caa98562cf06753163f558cbcfe30b8f4673adjl/* nscd v2 nscd identities */
606f6aa3d37f0f8e8282e483c1400bae5275aeebmichen ((nss_pheader_t *)uptr)->p_version = NSCD_HEADER_REV; \
606f6aa3d37f0f8e8282e483c1400bae5275aeebmichen ((nss_pheader_t *)uptr)->data_off = sizeof (nss_pheader_t); \
606f6aa3d37f0f8e8282e483c1400bae5275aeebmichen ((nss_pheader_t *)uptr)->key_off = sizeof (nss_pheader_t); \
606f6aa3d37f0f8e8282e483c1400bae5275aeebmichen ((nss_pheader_t *)uptr)->dbd_off = sizeof (nss_pheader_t); \
cb5caa98562cf06753163f558cbcfe30b8f4673adjl (type *)((void *)(((char *)(buf)) + sizeof (nss_pheader_t)))
cb5caa98562cf06753163f558cbcfe30b8f4673adjl#define NSCD_N2N_DOOR_BUF_SIZE(struct) \
cb5caa98562cf06753163f558cbcfe30b8f4673adjl sizeof (nss_pheader_t) + sizeof (struct)
cb5caa98562cf06753163f558cbcfe30b8f4673adjl int e = errno; \
cb5caa98562cf06753163f558cbcfe30b8f4673adjl if (e != -1) \
cb5caa98562cf06753163f558cbcfe30b8f4673adjl int e = errno; \
cb5caa98562cf06753163f558cbcfe30b8f4673adjl if (e != -1) \
cb5caa98562cf06753163f558cbcfe30b8f4673adjlnss_status_t _nscd_doorcall_data(int callnum, void *indata,
cb5caa98562cf06753163f558cbcfe30b8f4673adjlnss_status_t _nscd_doorcall_fd(int fd, int callnum, void *indata,
cb5caa98562cf06753163f558cbcfe30b8f4673adjl#endif /* _NSCD_DOOR_H */