1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown/*
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown * CDDL HEADER START
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown *
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown * The contents of this file are subject to the terms of the
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown * Common Development and Distribution License (the "License").
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown * You may not use this file except in compliance with the License.
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown *
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown * or http://www.opensolaris.org/os/licensing.
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown * See the License for the specific language governing permissions
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown * and limitations under the License.
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown *
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown * When distributing Covered Code, include this CDDL HEADER in each
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown * If applicable, add the following below this CDDL HEADER, with the
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown * fields enclosed by brackets "[]" replaced with your own identifying
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown * information: Portions Copyright [yyyy] [name of copyright owner]
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown *
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown * CDDL HEADER END
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown */
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown/*
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown * Use is subject to license terms.
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown */
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown/*
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown * RPC shims for directory lookup. Originally generated using rpcgen.
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown */
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown#include <memory.h> /* for memset */
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown#include <rpcsvc/idmap_prot.h>
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown#ifndef _KERNEL
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown#include <stdio.h>
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown#include <stdlib.h> /* getenv, exit */
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown#endif /* !_KERNEL */
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown/* Default timeout can be changed using clnt_control() */
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brownstatic struct timeval TIMEOUT = { 25, 0 };
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brownenum clnt_stat
1fcced4c370617db71610fecffd5451a5894ca5eJordan Browndirectory_get_common_1(
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown idmap_utf8str_list ids,
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown idmap_utf8str types,
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown idmap_utf8str_list attrs,
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown directory_results_rpc *clnt_res,
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown CLIENT *clnt)
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown{
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown directory_get_common_1_argument arg;
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown arg.ids = ids;
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown arg.attrs = attrs;
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown arg.types = types;
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown return (clnt_call(clnt, DIRECTORY_GET_COMMON,
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown (xdrproc_t)xdr_directory_get_common_1_argument, (caddr_t)&arg,
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown (xdrproc_t)xdr_directory_results_rpc, (caddr_t)clnt_res,
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown TIMEOUT));
1fcced4c370617db71610fecffd5451a5894ca5eJordan Brown}