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