2 * SPDX-License-Identifier: BSD-3-Clause
4 * Copyright (c) 2010, Oracle America, Inc.
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions are
10 * * Redistributions of source code must retain the above copyright
11 * notice, this list of conditions and the following disclaimer.
12 * * Redistributions in binary form must reproduce the above
13 * copyright notice, this list of conditions and the following
14 * disclaimer in the documentation and/or other materials
15 * provided with the distribution.
16 * * Neither the name of the "Oracle America, Inc." nor the names of its
17 * contributors may be used to endorse or promote products derived
18 * from this software without specific prior written permission.
20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
23 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
24 * COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
25 * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
27 * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
28 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
29 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
30 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
35 * Copyright (c) 1991, Sun Microsystems Inc.
41 * This file contains the tags and statistics definitions. It is
42 * automatically included by nis.h
45 #ifndef _RPCSVC_NIS_TAGS_H
46 #define _RPCSVC_NIS_TAGS_H
49 /* From: #pragma ident "@(#)nis_tags.h 1.10 94/05/03 SMI" */
50 /* from file: zns_tags.h 1.7 Copyright (c) 1990 Sun Microsystems */
56 #ifndef ORIGINAL_DECLS
57 #define NIS_DIR "data"
60 /* Lookup and List function flags */
61 #define FOLLOW_LINKS (1<<0) /* Follow link objects */
62 #define FOLLOW_PATH (1<<1) /* Follow the path in a table */
63 #define HARD_LOOKUP (1<<2) /* Block until successful */
64 #define ALL_RESULTS (1<<3) /* Retrieve all results */
65 #define NO_CACHE (1<<4) /* Do not return 'cached' results */
66 #define MASTER_ONLY (1<<5) /* Get value only from master server */
67 #define EXPAND_NAME (1<<6) /* Expand partitially qualified names */
69 /* Semantic modification for table operations flags */
70 #define RETURN_RESULT (1<<7) /* Return resulting object to client */
71 #define ADD_OVERWRITE (1<<8) /* Allow overwrites on ADD */
72 #define REM_MULTIPLE (1<<9) /* Allow wildcard deletes */
73 #define MOD_SAMEOBJ (1<<10) /* Check modified object before write */
74 #define ADD_RESERVED (1<<11) /* Spare ADD semantic */
75 #define REM_RESERVED (1<<12) /* Spare REM semantic */
77 #define MOD_RESERVED (1<<13) /* Spare MOD semantic */
79 #define MOD_EXCLUSIVE (1<<13) /* Modify no overwrite on modified keys */
82 /* Transport specific modifications to the operation */
83 #define USE_DGRAM (1<<16) /* Use a datagram transport */
84 #define NO_AUTHINFO (1<<17) /* Don't bother attaching auth info */
87 * Declarations for "standard" NIS+ tags
88 * State variable tags have values 0 - 2047
89 * Statistic tags have values 2048 - 65535
90 * User Tags have values >2^16
92 #define TAG_DEBUG 1 /* set debug level */
93 #define TAG_STATS 2 /* Enable/disable statistics */
94 #define TAG_GCACHE 3 /* Flush the Group Cache */
95 #ifndef ORIGINAL_DECLS
96 #define TAG_GCACHE_ALL TAG_GCACHE
98 #define TAG_DCACHE 4 /* Flush the directory cache */
99 #ifndef ORIGINAL_DECLS
100 #define TAG_DCACHE_ONE TAG_DCACHE
102 #define TAG_OCACHE 5 /* Flush the Object Cache */
103 #define TAG_SECURE 6 /* Set the security level */
104 #ifndef ORIGINAL_DECLS
105 #define TAG_TCACHE_ONE 7 /* Flush the table cache */
106 #define TAG_DCACHE_ALL 8 /* Flush entire directory cache */
107 #define TAG_TCACHE_ALL 9 /* Flush entire table cache */
108 #define TAG_GCACHE_ONE 10 /* Flush one group object */
109 #define TAG_DCACHE_ONE_REFRESH 11 /* Flush and refresh one DO */
112 #define TAG_OPSTATS 2048 /* NIS+ operations statistics */
113 #define TAG_THREADS 2049 /* Child process/thread status */
114 #define TAG_HEAP 2050 /* Heap usage statistics */
115 #define TAG_UPDATES 2051 /* Updates to this service */
116 #define TAG_VISIBLE 2052 /* First update that isn't replicated */
117 #define TAG_S_DCACHE 2053 /* Directory cache statistics */
118 #define TAG_S_OCACHE 2054 /* Object cache statistics */
119 #define TAG_S_GCACHE 2055 /* Group cache statistics */
120 #define TAG_S_STORAGE 2056 /* Group cache statistics */
121 #define TAG_UPTIME 2057 /* Time that server has been up */
122 #ifndef ORIGINAL_DECLS
123 #define TAG_DIRLIST 2058 /* Dir served by this server */
124 #define TAG_NISCOMPAT 2059 /* Whether supports NIS compat mode */
125 #define TAG_DNSFORWARDING 2060 /* Whether DNS forwarding supported*/
126 #define TAG_SECURITY_LEVEL 2061 /* Security level of the server */
127 #define TAG_ROOTSERVER 2062 /* Whether root server */
131 * Declarations for the Group object flags. Currently
134 #define IMPMEM_GROUPS 1 /* Implicit Membership allowed */
135 #define RECURS_GROUPS 2 /* Recursive Groups allowed */
136 #define NEGMEM_GROUPS 4 /* Negative Groups allowed */
142 #endif /* _RPCSVC_NIS_TAGS_H */