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