Project

General

Profile

Statistics
| Revision:

root / lab4 / .minix-src / include / rpcsvc / ypclnt.h @ 14

History | View | Annotate | Download (3.53 KB)

1 13 up20180614
/*        $NetBSD: ypclnt.h,v 1.14 2012/03/02 17:27:48 christos Exp $        */
2
3
/*
4
 * Copyright (c) 1992, 1993 Theo de Raadt <deraadt@fsa.ca>
5
 * All rights reserved.
6
 *
7
 * Redistribution and use in source and binary forms, with or without
8
 * modification, are permitted provided that the following conditions
9
 * are met:
10
 * 1. Redistributions of source code must retain the above copyright
11
 *    notice, this list of conditions and the following disclaimer.
12
 * 2. Redistributions in binary form must reproduce the above copyright
13
 *    notice, this list of conditions and the following disclaimer in the
14
 *    documentation and/or other materials provided with the distribution.
15
 *
16
 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS
17
 * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18
 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
20
 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26
 * SUCH DAMAGE.
27
 */
28
29
#ifndef _RPCSVC_YPCLNT_H_
30
#define _RPCSVC_YPCLNT_H_
31
32
#define YPERR_BADARGS        1                /* args to function are bad */
33
#define YPERR_RPC        2                /* RPC failure */
34
#define YPERR_DOMAIN        3                /* can't bind to a server for domain */
35
#define YPERR_MAP        4                /* no such map in server's domain */
36
#define YPERR_KEY        5                /* no such key in map */
37
#define YPERR_YPERR        6                /* some internal YP server or client error */
38
#define YPERR_RESRC        7                /* local resource allocation failure */
39
#define YPERR_NOMORE        8                /* no more records in map database */
40
#define YPERR_PMAP        9                /* can't communicate with portmapper */
41
#define YPERR_YPBIND        10                /* can't communicate with ypbind */
42
#define YPERR_YPSERV        11                /* can't communicate with ypserv */
43
#define YPERR_NODOM        12                /* local domain name not set */
44
#define YPERR_BADDB        13                /* YP data base is bad */
45
#define YPERR_VERS        14                /* YP version mismatch */
46
#define YPERR_ACCESS        15                /* access violation */
47
#define YPERR_BUSY        16                /* database is busy */
48
49
/*
50
 * Types of update operations
51
 */
52
#define YPOP_CHANGE        1                /* change, do not add */
53
#define YPOP_INSERT        2                /* add, do not change */
54
#define YPOP_DELETE        3                /* delete this entry */
55
#define YPOP_STORE         4                /* add, or change */
56
57
struct ypall_callback {
58
        /* return non-0 to stop getting called */
59
        int (*foreach)(int, char *, int, char *, int, char *);
60
        char *data;                /* opaque pointer for use of callback fn */
61
};
62
63
__BEGIN_DECLS
64
int        yp_bind                (const char *);
65
struct dom_binding;
66
int        _yp_dobind        (const char *, struct dom_binding **);
67
int        _yp_check        (char **);
68
void        yp_unbind        (const char *);
69
int        yp_get_default_domain(char **);
70
struct ypmaplist;
71
int        yp_maplist        (const char *, struct ypmaplist **);
72
int        yp_match         (const char *, const char *, const char *,
73
                             int , char **, int *);
74
int        yp_first         (const char *, const char *, char **, int *,
75
                             char **, int *);
76
int        yp_next                (const char *, const char *, const char *,
77
                             int, char **, int *, char **, int *);
78
int        yp_master        (const char *, const char *, char **);
79
int        yp_order        (const char *, const char *, int *);
80
int        yp_all                (const char *, const char *, struct ypall_callback *);
81
char *        yperr_string        (int);
82
int        ypprot_err        (unsigned int);
83
int        yp_setbindtries        (int);
84
__END_DECLS
85
86
#endif /* _RPCSVC_YPCLNT_H_ */