#include <sys/cdefs.h>
#if defined(LIBC_SCCS) && !defined(lint)
__RCSID("$NetBSD: yperr_string.c,v 1.9 2015/06/17 00:15:26 christos Exp $");
#endif
#include "namespace.h"
#include <stdio.h>
#include <rpc/rpc.h>
#include <rpcsvc/yp_prot.h>
#include <rpcsvc/ypclnt.h>
#ifdef __weak_alias
__weak_alias(yperr_string,_yperr_string)
#endif
char *
yperr_string(int incode)
{
static char err[80];
switch (incode) {
case 0:
return __UNCONST("Success");
case YPERR_BADARGS:
return __UNCONST("Request arguments bad");
case YPERR_RPC:
return __UNCONST("RPC failure");
case YPERR_DOMAIN:
return __UNCONST(
"Can't bind to server which serves this domain");
case YPERR_MAP:
return __UNCONST("No such map in server's domain");
case YPERR_KEY:
return __UNCONST("No such key in map");
case YPERR_YPERR:
return __UNCONST("YP server error");
case YPERR_RESRC:
return __UNCONST("Local resource allocation failure");
case YPERR_NOMORE:
return __UNCONST("No more records in map database");
case YPERR_PMAP:
return __UNCONST("Can't communicate with portmapper");
case YPERR_YPBIND:
return __UNCONST("Can't communicate with ypbind");
case YPERR_YPSERV:
return __UNCONST("Can't communicate with ypserv");
case YPERR_NODOM:
return __UNCONST("Local domain name not set");
case YPERR_BADDB:
return __UNCONST("Server data base is bad");
case YPERR_VERS:
return __UNCONST(
"YP server version mismatch - server can't supply service."
);
case YPERR_ACCESS:
return __UNCONST("Access violation");
case YPERR_BUSY:
return __UNCONST("Database is busy");
}
(void) snprintf(err, sizeof(err), "YP unknown error %d", incode);
return err;
}