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