2c5c4113nw * CDDL HEADER START
3c5c4113nw *
4c5c4113nw * The contents of this file are subject to the terms of the
5c5c4113nw * Common Development and Distribution License (the "License").
6c5c4113nw * You may not use this file except in compliance with the License.
7c5c4113nw *
8c5c4113nw * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9c5c4113nw * or http://www.opensolaris.org/os/licensing.
10c5c4113nw * See the License for the specific language governing permissions
11c5c4113nw * and limitations under the License.
12c5c4113nw *
13c5c4113nw * When distributing Covered Code, include this CDDL HEADER in each
14c5c4113nw * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15c5c4113nw * If applicable, add the following below this CDDL HEADER, with the
16c5c4113nw * fields enclosed by brackets "[]" replaced with your own identifying
17c5c4113nw * information: Portions Copyright [yyyy] [name of copyright owner]
18c5c4113nw *
19c5c4113nw * CDDL HEADER END
20c5c4113nw */
22c586600Keyur Desai * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
23ad8ef92Milan Jurik * Copyright Milan Jurik 2012. All rights reserved.
248ce3a03Marcel Telka * Copyright 2014 Nexenta Systems, Inc.  All rights reserved.
2529d5524Jerry Jelinek * Copyright 2015 Joyent, Inc.
26c5c4113nw */
30c5c4113nw * libidmap API
31c5c4113nw */
33c5c4113nw#include <stdlib.h>
34479ac37dm#include <sys/varargs.h>
35c5c4113nw#include <inttypes.h>
36c5c4113nw#include <errno.h>
37c5c4113nw#include <strings.h>
38c5c4113nw#include <ctype.h>
39c5c4113nw#include <sys/param.h>
40c5c4113nw#include <sys/types.h>
41c5c4113nw#include <sys/stat.h>
42c5c4113nw#include <dlfcn.h>
43c5c4113nw#include <libintl.h>
44c586600Keyur Desai#include <syslog.h>
45148c5f4Alan Wright#include <assert.h>
46c5c4113nw#include "idmap_impl.h"
473ee87bcJulian Pullen#include "idmap_cache.h"
49c5c4113nwstatic struct timeval TIMEOUT = { 25, 0 };
51c5c4113nwstatic int idmap_stat2errno(idmap_stat);