10Sstevel@tonic-gate /* 20Sstevel@tonic-gate * CDDL HEADER START 30Sstevel@tonic-gate * 40Sstevel@tonic-gate * The contents of this file are subject to the terms of the 51610Sthurlow * Common Development and Distribution License (the "License"). 61610Sthurlow * You may not use this file except in compliance with the License. 70Sstevel@tonic-gate * 80Sstevel@tonic-gate * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 90Sstevel@tonic-gate * or http://www.opensolaris.org/os/licensing. 100Sstevel@tonic-gate * See the License for the specific language governing permissions 110Sstevel@tonic-gate * and limitations under the License. 120Sstevel@tonic-gate * 130Sstevel@tonic-gate * When distributing Covered Code, include this CDDL HEADER in each 140Sstevel@tonic-gate * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 150Sstevel@tonic-gate * If applicable, add the following below this CDDL HEADER, with the 160Sstevel@tonic-gate * fields enclosed by brackets "[]" replaced with your own identifying 170Sstevel@tonic-gate * information: Portions Copyright [yyyy] [name of copyright owner] 180Sstevel@tonic-gate * 190Sstevel@tonic-gate * CDDL HEADER END 200Sstevel@tonic-gate */ 210Sstevel@tonic-gate 220Sstevel@tonic-gate /* 231610Sthurlow * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 24249Sjwahlig * Use is subject to license terms. 250Sstevel@tonic-gate */ 260Sstevel@tonic-gate 270Sstevel@tonic-gate #ifndef _MOUNTD_H 280Sstevel@tonic-gate #define _MOUNTD_H 290Sstevel@tonic-gate 300Sstevel@tonic-gate #pragma ident "%Z%%M% %I% %E% SMI" 310Sstevel@tonic-gate 32*2140Srmesta #include <door.h> 330Sstevel@tonic-gate #include <nfs/nfs.h> 340Sstevel@tonic-gate 350Sstevel@tonic-gate #ifdef __cplusplus 360Sstevel@tonic-gate extern "C" { 370Sstevel@tonic-gate #endif 380Sstevel@tonic-gate 390Sstevel@tonic-gate #define MAXIPADDRLEN 512 400Sstevel@tonic-gate 41249Sjwahlig struct nd_hostservlist; 420Sstevel@tonic-gate extern void rmtab_load(void); 430Sstevel@tonic-gate extern void mntlist_send(SVCXPRT *transp); 440Sstevel@tonic-gate extern void mntlist_new(char *host, char *path); 450Sstevel@tonic-gate extern void mntlist_delete(char *host, char *path); 460Sstevel@tonic-gate extern void mntlist_delete_all(char *host); 470Sstevel@tonic-gate extern void netgroup_init(void); 480Sstevel@tonic-gate extern int netgroup_check(struct nd_hostservlist *, char *, int); 490Sstevel@tonic-gate extern void export(struct svc_req *); 50*2140Srmesta extern void nfsauth_func(void *, char *, size_t, door_desc_t *, uint_t); 510Sstevel@tonic-gate extern char *inet_ntoa_r(struct in_addr, char *); 521610Sthurlow extern int nfs_getfh(char *, int, int *, char *); 530Sstevel@tonic-gate 540Sstevel@tonic-gate extern void nfsauth_prog(struct svc_req *, SVCXPRT *); 550Sstevel@tonic-gate 560Sstevel@tonic-gate extern struct sh_list *share_list; 570Sstevel@tonic-gate extern rwlock_t sharetab_lock; 580Sstevel@tonic-gate extern void check_sharetab(void); 590Sstevel@tonic-gate 600Sstevel@tonic-gate extern void log_cant_reply(SVCXPRT *); 610Sstevel@tonic-gate 620Sstevel@tonic-gate extern void *exmalloc(size_t); 630Sstevel@tonic-gate 640Sstevel@tonic-gate extern struct share *findentry(char *); 650Sstevel@tonic-gate extern int check_client(struct share *, struct netbuf *, 660Sstevel@tonic-gate struct nd_hostservlist *, int); 670Sstevel@tonic-gate extern struct nd_hostservlist *anon_client(char *host); 680Sstevel@tonic-gate 690Sstevel@tonic-gate /* 700Sstevel@tonic-gate * These functions are defined here due to the fact 710Sstevel@tonic-gate * that we can not find the proper header file to 720Sstevel@tonic-gate * include. These functions are, at present, not 730Sstevel@tonic-gate * listed in any other header files. 740Sstevel@tonic-gate */ 750Sstevel@tonic-gate /* 760Sstevel@tonic-gate * These three functions are hidden functions in the 770Sstevel@tonic-gate * bsm libraries (libbsm). 780Sstevel@tonic-gate */ 790Sstevel@tonic-gate extern void audit_mountd_setup(void); 800Sstevel@tonic-gate extern void audit_mountd_mount(char *, char *, int); 810Sstevel@tonic-gate extern void audit_mountd_umount(char *, char *); 820Sstevel@tonic-gate 830Sstevel@tonic-gate /* 840Sstevel@tonic-gate * This is a hidden function in the rpc libraries (libnsl). 850Sstevel@tonic-gate */ 860Sstevel@tonic-gate extern int __rpc_negotiate_uid(int); 870Sstevel@tonic-gate 880Sstevel@tonic-gate /* 890Sstevel@tonic-gate * This appears to be a hidden function in libc. 900Sstevel@tonic-gate * Private interface to nss_search(). 910Sstevel@tonic-gate * Accepts N strings rather than 1. 920Sstevel@tonic-gate */ 930Sstevel@tonic-gate extern int __multi_innetgr(); 940Sstevel@tonic-gate 950Sstevel@tonic-gate #ifdef __cplusplus 960Sstevel@tonic-gate } 970Sstevel@tonic-gate #endif 980Sstevel@tonic-gate 990Sstevel@tonic-gate #endif /* _MOUNTD_H */ 100