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