1 %/* 2 % * Sun RPC is a product of Sun Microsystems, Inc. and is provided for 3 % * unrestricted use provided that this legend is included on all tape 4 % * media and as a part of the software program in whole or part. Users 5 % * may copy or modify Sun RPC without charge, but are not authorized 6 % * to license or distribute it to anyone else except as part of a product or 7 % * program developed by the user or with the express written consent of 8 % * Sun Microsystems, Inc. 9 % * 10 % * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE 11 % * WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR 12 % * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE. 13 % * 14 % * Sun RPC is provided with no support and without any obligation on the 15 % * part of Sun Microsystems, Inc. to assist in its use, correction, 16 % * modification or enhancement. 17 % * 18 % * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE 19 % * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY SUN RPC 20 % * OR ANY PART THEREOF. 21 % * 22 % * In no event will Sun Microsystems, Inc. be liable for any lost revenue 23 % * or profits or other special, indirect and consequential damages, even if 24 % * Sun has been advised of the possibility of such damages. 25 % * 26 % * Sun Microsystems, Inc. 27 % * 2550 Garcia Avenue 28 % * Mountain View, California 94043 29 % */ 30 31 /* 32 * nis_cache.x 33 * 34 * Copyright (c) 1988-1992 Sun Microsystems Inc 35 * All Rights Reserved. 36 */ 37 38 /* From: %#pragma ident "@(#)nis_cache.x 1.11 94/05/03 SMI" */ 39 40 #ifndef RPC_HDR 41 %#include <sys/cdefs.h> 42 %__FBSDID("$FreeBSD$"); 43 #endif 44 45 #ifdef RPC_HDR 46 %#include <rpc/types.h> 47 %#include <rpcsvc/nis.h> 48 % 49 %/* default cache file */ 50 %#define CACHEFILE "/var/nis/NIS_SHARED_DIRCACHE" 51 % 52 %/* clients have to read-lock the cache file, and SVR4 locking requires that */ 53 %/* the file be writable, but we don't want a world-writable cache file. */ 54 %/* So... everyone agrees to use a different, world-writable file for the */ 55 %/* locking operations, but the data is in CACHEFILE. */ 56 %#define CACHELOCK "/usr/tmp/.NIS_DIR_CACHELOCK" 57 % 58 %/* the file containing one trusted XDR'ed directory object. 59 % * This has to be present for the system to work. 60 % */ 61 %#define COLD_START_FILE "/var/nis/NIS_COLD_START" 62 % 63 %enum pc_status {HIT, MISS, NEAR_MISS}; 64 % 65 %extern int __nis_debuglevel; 66 % 67 % 68 #endif 69 70 #ifdef RPC_CLNT 71 #ifdef SOLARIS 72 %#include "../gen/nis_clnt.h" 73 #else 74 %#include "nis.h" 75 #endif 76 #endif 77 78 program CACHEPROG { 79 version CACHE_VER_1 { 80 void NIS_CACHE_ADD_ENTRY(fd_result) = 1; 81 void NIS_CACHE_REMOVE_ENTRY(directory_obj) = 2; 82 void NIS_CACHE_READ_COLDSTART(void) = 3; 83 void NIS_CACHE_REFRESH_ENTRY(string<>) = 4; 84 } = 1; 85 } = 100301; 86