a system header defines a macro __printf0like() using the new printf0
format attribute. uucp's internal ulog() function isn't actually
printf-like but uucp normally declares it as such.
can get their rights as well. ;-) The default remains, of course, Taylor
config.
Demanded by: some people on -hackers
I think this is safe enough to go into RELENG_2_2 as well, if there's
demand.
This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.
Boy, I'm glad we're not using sup anymore. This update would have been
insane otherwise.
ypxfr can't easily be reduced down to one file like yppush because it
needs to do certain special things (such as binding to a specific
machine (the NIS master)) which the yp_*() functions in libc don't
allow.
that ypxfr is supposed to log messages to /var/yp/ypxfr.log if it exists,
using syslog() makes more sense, especially since ypserv does the same
thing already. Try to use stderr by default, and use syslog() if stderr
is not a tty.
Also update the man page to reflect this change.
NIS maps (get rid of extraneous slash a la /var/yp//domainname).
Have ypxfr log all output to /var/yp/ypxfr.log if stdin is not a
tty. This should allow logging to be done when ypxfr is called from
inside ypserv in response to a yppush request.
Update man page to reflect the change (and fix a typo).
This is a ported/modified version of the ypxfr program from the yps-0.21
package from the NYS project. This program is normally invoked by ypserv
when it receives a yppush command from an NIS master. It can also be
run from the command line to grab copies of maps when initializing a
slave server.
This program has been hacked in the following ways:
- rpcgen'ed new yp_xdr.c, yp_svc.c and yp_clnt.c files. The old ones were
rather grody.
- Changed certain function names (prefended a _ to them) to avoid conflicts
with certain functions lurking within libc. One major problem here is
that ypxfr needs to bind to a YP master in order to work correctly,
but it can't use the _yp_bind function inside libc because that
function only lets you bind to a domain, not a specific host. Lots
of head scratching here.
- Converted from GDBM to DB at gunpoint.
- Removed lots of really nasty looking DEBUG code to try to reduce clutter.
- Incorporated some of the library code supplied with yps-0.21 on which
ypxfr was dependent.
This program still needs to be cleaned up just as a matter of principle:
I get all icky just looking at it sometimes.