556ef90573
is asking for trouble (sequential database enumerations can get caught in an infinite loop). The yp_mkdb(8) utility avoids putting such records into a database, but ypxfr does not. Today I got bit by a NULL entry in one of the amd maps on my network, which is served by a SunOS master. The map was transfered successfully to my FreeBSD slave, but attempting to dump it with ypcat(1) caused ypserv(8) to transmit the same record over and over again, making the map appear to be infinitely large. I finally noticed the problem while testing a new version of amd under development at the Columbia CS department, which began gobbling up insane amounts of memory while trying to swallow the map. To deal with this problem, I'm modifying ypxfr to watch for records with zero-length keys and turn them into something less destructive before writing them to the database. |
||
---|---|---|
.. | ||
Makefile | ||
yp_dbwrite.c | ||
ypxfr_extern.h | ||
ypxfr_getmap.c | ||
ypxfr_main.c | ||
ypxfr_misc.c | ||
ypxfr.8 | ||
ypxfrd_getmap.c |