xref: /freebsd/lib/libc/rpc/rpc_svc_err.3 (revision 734e82fe33aa764367791a7d603b383996c6b40b)
1.\" @(#)rpc_svc_err.3n 1.23 93/08/31 SMI; from SVr4
2.\" Copyright 1989 AT&T
3.\" @(#)rpc_svc_err 1.4 89/06/28 SMI;
4.\" Copyright (c) 1988 Sun Microsystems, Inc. - All Rights Reserved.
5.\"	$NetBSD: rpc_svc_err.3,v 1.1 2000/06/02 23:11:14 fvdl Exp $
6.Dd May 3, 1993
7.Dt RPC_SVC_ERR 3
8.Os
9.Sh NAME
10.Nm rpc_svc_err ,
11.Nm svcerr_auth ,
12.Nm svcerr_decode ,
13.Nm svcerr_noproc ,
14.Nm svcerr_noprog ,
15.Nm svcerr_progvers ,
16.Nm svcerr_systemerr ,
17.Nm svcerr_weakauth
18.Nd library routines for server side remote procedure call errors
19.Sh LIBRARY
20.Lb libc
21.Sh SYNOPSIS
22.In rpc/rpc.h
23.Ft void
24.Fn svcerr_auth "SVCXPRT *xprt" "enum auth_stat why"
25.Ft void
26.Fn svcerr_decode "SVCXPRT *xprt"
27.Ft void
28.Fn svcerr_noproc "SVCXPRT *xprt"
29.Ft void
30.Fn svcerr_noprog "SVCXPRT *xprt"
31.Ft void
32.Fn svcerr_progvers "SVCXPRT *xprt" "rpcvers_t low_vers" "rpcvers_t high_vers"
33.Ft void
34.Fn svcerr_systemerr "SVCXPRT *xprt"
35.Ft void
36.Fn svcerr_weakauth "SVCXPRT *xprt"
37.Sh DESCRIPTION
38These routines are part of the RPC
39library which allows C language programs to make procedure
40calls on other machines across the network.
41.Pp
42These routines can be called by the server side
43dispatch function if there is any error in the
44transaction with the client.
45.Sh Routines
46See
47.Xr rpc 3
48for the definition of the
49.Vt SVCXPRT
50data structure.
51.Bl -tag -width XXXXX
52.It Fn svcerr_auth
53Called by a service dispatch routine that refuses to perform
54a remote procedure call due to an authentication error.
55.It Fn svcerr_decode
56Called by a service dispatch routine that cannot successfully
57decode the remote arguments
58(see
59.Fn svc_getargs
60in
61.Xr rpc_svc_reg 3 ) .
62.It Fn svcerr_noproc
63Called by a service dispatch routine that does not implement
64the procedure number that the caller requests.
65.It Fn svcerr_noprog
66Called when the desired program is not registered with the
67RPC package.
68Service implementors usually do not need this routine.
69.It Fn svcerr_progvers
70Called when the desired version of a program is not registered with the
71RPC package.
72The
73.Fa low_vers
74argument
75is the lowest version number,
76and
77.Fa high_vers
78is the highest version number.
79Service implementors usually do not need this routine.
80.It Fn svcerr_systemerr
81Called by a service dispatch routine when it detects a system
82error not covered by any particular protocol.
83For example, if a service can no longer allocate storage,
84it may call this routine.
85.It Fn svcerr_weakauth
86Called by a service dispatch routine that refuses to perform
87a remote procedure call due to insufficient (but correct)
88authentication arguments.
89The routine calls
90.Fn svcerr_auth "xprt" "AUTH_TOOWEAK" .
91.El
92.Sh SEE ALSO
93.Xr rpc 3 ,
94.Xr rpc_svc_calls 3 ,
95.Xr rpc_svc_create 3 ,
96.Xr rpc_svc_reg 3
97