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