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 #ifdef RPC_HDR 39 %#include <rpc/types.h> 40 %#include <rpcsvc/nis.h> 41 % 42 %/* default cache file */ 43 %#define CACHEFILE "/var/nis/NIS_SHARED_DIRCACHE" 44 % 45 %/* clients have to read-lock the cache file, and SVR4 locking requires that */ 46 %/* the file be writable, but we don't want a world-writable cache file. */ 47 %/* So... everyone agrees to use a different, world-writable file for the */ 48 %/* locking operations, but the data is in CACHEFILE. */ 49 %#define CACHELOCK "/usr/tmp/.NIS_DIR_CACHELOCK" 50 % 51 %/* the file containing one trusted XDR'ed directory object. 52 % * This has to be present for the system to work. 53 % */ 54 %#define COLD_START_FILE "/var/nis/NIS_COLD_START" 55 % 56 %enum pc_status {HIT, MISS, NEAR_MISS}; 57 % 58 %extern int __nis_debuglevel; 59 % 60 % 61 #endif 62 63 #ifdef RPC_CLNT 64 #ifdef SOLARIS 65 %#include "../gen/nis_clnt.h" 66 #else 67 %#include "nis.h" 68 #endif 69 #endif 70 71 program CACHEPROG { 72 version CACHE_VER_1 { 73 void NIS_CACHE_ADD_ENTRY(fd_result) = 1; 74 void NIS_CACHE_REMOVE_ENTRY(directory_obj) = 2; 75 void NIS_CACHE_READ_COLDSTART(void) = 3; 76 void NIS_CACHE_REFRESH_ENTRY(string<>) = 4; 77 } = 1; 78 } = 100301; 79