aboutsummaryrefslogtreecommitdiff
path: root/sys/nlm/sm_inter.h
blob: 0cc240b8a191d8f1a54467c4e553f9f10ff52a58 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
/*
 * Please do not edit this file.
 * It was generated using rpcgen.
 */
/* $FreeBSD$ */

#ifndef _SM_INTER_H_RPCGEN
#define	_SM_INTER_H_RPCGEN

#include <rpc/rpc.h>

#ifdef __cplusplus
extern "C" {
#endif

#define	SM_MAXSTRLEN 1024

struct sm_name {
	char *mon_name;
};
typedef struct sm_name sm_name;

struct my_id {
	char *my_name;
	int my_prog;
	int my_vers;
	int my_proc;
};
typedef struct my_id my_id;

struct mon_id {
	char *mon_name;
	struct my_id my_id;
};
typedef struct mon_id mon_id;

struct mon {
	struct mon_id mon_id;
	char priv[16];
};
typedef struct mon mon;

struct stat_chge {
	char *mon_name;
	int state;
};
typedef struct stat_chge stat_chge;

struct sm_stat {
	int state;
};
typedef struct sm_stat sm_stat;

enum sm_res {
	stat_succ = 0,
	stat_fail = 1
};
typedef enum sm_res sm_res;

struct sm_stat_res {
	sm_res res_stat;
	int state;
};
typedef struct sm_stat_res sm_stat_res;

struct sm_status {
	char *mon_name;
	int state;
	char priv[16];
};
typedef struct sm_status sm_status;

#define	SM_PROG ((unsigned long)(100024))
#define	SM_VERS ((unsigned long)(1))

extern  void sm_prog_1(struct svc_req *rqstp, SVCXPRT *transp);
#define	SM_STAT ((unsigned long)(1))
extern  struct sm_stat_res * sm_stat_1(struct sm_name *, CLIENT *);
extern  struct sm_stat_res * sm_stat_1_svc(struct sm_name *, struct svc_req *);
#define	SM_MON ((unsigned long)(2))
extern  struct sm_stat_res * sm_mon_1(struct mon *, CLIENT *);
extern  struct sm_stat_res * sm_mon_1_svc(struct mon *, struct svc_req *);
#define	SM_UNMON ((unsigned long)(3))
extern  struct sm_stat * sm_unmon_1(struct mon_id *, CLIENT *);
extern  struct sm_stat * sm_unmon_1_svc(struct mon_id *, struct svc_req *);
#define	SM_UNMON_ALL ((unsigned long)(4))
extern  struct sm_stat * sm_unmon_all_1(struct my_id *, CLIENT *);
extern  struct sm_stat * sm_unmon_all_1_svc(struct my_id *, struct svc_req *);
#define	SM_SIMU_CRASH ((unsigned long)(5))
extern  void * sm_simu_crash_1(void *, CLIENT *);
extern  void * sm_simu_crash_1_svc(void *, struct svc_req *);
#define	SM_NOTIFY ((unsigned long)(6))
extern  void * sm_notify_1(struct stat_chge *, CLIENT *);
extern  void * sm_notify_1_svc(struct stat_chge *, struct svc_req *);
extern int sm_prog_1_freeresult(SVCXPRT *, xdrproc_t, caddr_t);

/* the xdr functions */
extern  bool_t xdr_sm_name(XDR *, sm_name*);
extern  bool_t xdr_my_id(XDR *, my_id*);
extern  bool_t xdr_mon_id(XDR *, mon_id*);
extern  bool_t xdr_mon(XDR *, mon*);
extern  bool_t xdr_stat_chge(XDR *, stat_chge*);
extern  bool_t xdr_sm_stat(XDR *, sm_stat*);
extern  bool_t xdr_sm_res(XDR *, sm_res*);
extern  bool_t xdr_sm_stat_res(XDR *, sm_stat_res*);
extern  bool_t xdr_sm_status(XDR *, sm_status*);

#ifdef __cplusplus
}
#endif

#endif /* !_SM_INTER_H_RPCGEN */