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

source code of glibc/nis/rpcsvc/nis_tags.h