summaryrefslogtreecommitdiffstats
path: root/libexec/ypxfr
diff options
context:
space:
mode:
authorwpaul <wpaul@FreeBSD.org>1996-07-04 02:13:11 +0000
committerwpaul <wpaul@FreeBSD.org>1996-07-04 02:13:11 +0000
commitc26f3ec39e5c2fa4a8622057dc8491ffbd1fa9a9 (patch)
tree026335963f077546619c67d1a7a8e49fb215988f /libexec/ypxfr
parentffe43a70955c6e80274bbc1b6ac4a0a642982893 (diff)
downloadFreeBSD-src-c26f3ec39e5c2fa4a8622057dc8491ffbd1fa9a9.zip
FreeBSD-src-c26f3ec39e5c2fa4a8622057dc8491ffbd1fa9a9.tar.gz
Fill in new arguments in the ypxfr_getmap structure (byte order,
db type, filename) and check for new failure codes (db mismatch, endian mismatch).
Diffstat (limited to 'libexec/ypxfr')
-rw-r--r--libexec/ypxfr/ypxfrd_getmap.c18
1 files changed, 16 insertions, 2 deletions
diff --git a/libexec/ypxfr/ypxfrd_getmap.c b/libexec/ypxfr/ypxfrd_getmap.c
index 7af9a52..e598883 100644
--- a/libexec/ypxfr/ypxfrd_getmap.c
+++ b/libexec/ypxfr/ypxfrd_getmap.c
@@ -29,7 +29,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id: ypxfrd_getmap.c,v 1.7 1996/06/02 19:51:33 wpaul Exp $
+ * $Id: ypxfrd_getmap.c,v 1.7 1996/06/02 19:51:33 wpaul Exp wpaul $
*/
#include <sys/types.h>
@@ -44,7 +44,7 @@
#include "ypxfr_extern.h"
#ifndef lint
-static const char rcsid[] = "$Id: ypxfrd_getmap.c,v 1.7 1996/06/02 19:51:33 wpaul Exp $";
+static const char rcsid[] = "$Id: ypxfrd_getmap.c,v 1.7 1996/06/02 19:51:33 wpaul Exp wpaul $";
#endif
int fp = 0;
@@ -79,6 +79,14 @@ static bool_t xdr_my_xfr(register XDR *xdrs, xfr *objp)
yp_error("access to map denied by rpc.ypxfrd");
return(FALSE);
break;
+ case(XFR_DB_TYPE_MISMATCH):
+ yp_error("client/server DB type mismatch");
+ return(FALSE);
+ break;
+ case(XFR_DB_ENDIAN_MISMATCH):
+ yp_error("client/server byte order mismatch");
+ return(FALSE);
+ break;
default:
yp_error("got unknown status from rpc.ypxfrd");
return(FALSE);
@@ -104,6 +112,12 @@ int ypxfrd_get_map(host, map, domain, tmpname)
req.xfrmap = map;
req.xfrdomain = domain;
+ req.xfrmap_filename = "";
+ req.xfr_db_type = XFR_DB_BSD_HASH; /*
+ req.xfr_byte_order = XFR_ENDIAN_ANY; * Berkeley DB isn't
+ * byte-order sensitive.
+ */
+
bzero((char *)&resp, sizeof(resp));
if ((clnt = clnt_create(host, YPXFRD_FREEBSD_PROG,
OpenPOWER on IntegriCloud