don't call ypdb_close() until after we're finished using data returned
by a previous ypdb_*() operation. seems to fix a problem noted in [bin/8064]
This commit is contained in:
parent
275da9fc4d
commit
7dc5b4fed5
|
@ -1,4 +1,4 @@
|
||||||
/* $NetBSD: yppush.c,v 1.10 1999/01/11 22:40:01 kleink Exp $ */
|
/* $NetBSD: yppush.c,v 1.11 1999/07/25 09:36:02 lukem Exp $ */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
*
|
*
|
||||||
|
@ -182,7 +182,6 @@ main(argc, argv)
|
||||||
datum.dptr = YP_LAST_KEY;
|
datum.dptr = YP_LAST_KEY;
|
||||||
datum.dsize = YP_LAST_LEN;
|
datum.dsize = YP_LAST_LEN;
|
||||||
datum = ypdb_fetch(ypdb, datum);
|
datum = ypdb_fetch(ypdb, datum);
|
||||||
ypdb_close(ypdb);
|
|
||||||
if (datum.dptr == NULL)
|
if (datum.dptr == NULL)
|
||||||
errx(1,
|
errx(1,
|
||||||
"unable to fetch %s key: check database with 'makedbm -u'",
|
"unable to fetch %s key: check database with 'makedbm -u'",
|
||||||
|
@ -196,6 +195,7 @@ main(argc, argv)
|
||||||
ypi.order = (ypi.order * 10) + *cp - '0';
|
ypi.order = (ypi.order * 10) + *cp - '0';
|
||||||
cp++;
|
cp++;
|
||||||
}
|
}
|
||||||
|
ypdb_close(ypdb);
|
||||||
|
|
||||||
if (verbo)
|
if (verbo)
|
||||||
printf("pushing %s [order=%d] in domain %s\n", ypi.map,
|
printf("pushing %s [order=%d] in domain %s\n", ypi.map,
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $NetBSD: ypxfr.c,v 1.8 1999/01/22 02:38:05 thorpej Exp $ */
|
/* $NetBSD: ypxfr.c,v 1.9 1999/07/25 09:36:02 lukem Exp $ */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 1994 Mats O Jansson <moj@stacken.kth.se>
|
* Copyright (c) 1994 Mats O Jansson <moj@stacken.kth.se>
|
||||||
|
@ -33,7 +33,7 @@
|
||||||
|
|
||||||
#include <sys/cdefs.h>
|
#include <sys/cdefs.h>
|
||||||
#ifndef lint
|
#ifndef lint
|
||||||
__RCSID("$NetBSD: ypxfr.c,v 1.8 1999/01/22 02:38:05 thorpej Exp $");
|
__RCSID("$NetBSD: ypxfr.c,v 1.9 1999/07/25 09:36:02 lukem Exp $");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
|
@ -348,7 +348,6 @@ get_local_ordernum(domain, map, lordernum)
|
||||||
k.dsize = YP_LAST_LEN;
|
k.dsize = YP_LAST_LEN;
|
||||||
|
|
||||||
v = ypdb_fetch(db, k);
|
v = ypdb_fetch(db, k);
|
||||||
ypdb_close(db);
|
|
||||||
|
|
||||||
if (v.dptr == NULL)
|
if (v.dptr == NULL)
|
||||||
*lordernum = 0;
|
*lordernum = 0;
|
||||||
|
@ -357,6 +356,7 @@ get_local_ordernum(domain, map, lordernum)
|
||||||
order[v.dsize] = '\0';
|
order[v.dsize] = '\0';
|
||||||
*lordernum = (u_int)atoi((char *)&order);
|
*lordernum = (u_int)atoi((char *)&order);
|
||||||
}
|
}
|
||||||
|
ypdb_close(db);
|
||||||
|
|
||||||
out:
|
out:
|
||||||
if ((status == YPPUSH_NOMAP) || (status == YPPUSH_DBM)) {
|
if ((status == YPPUSH_NOMAP) || (status == YPPUSH_DBM)) {
|
||||||
|
|
Loading…
Reference in New Issue