freebsd-skq/sbin/mountd
iedowse e293eec299 The introduction of IPv6 support from NetBSD's mountd invalidated
a number of assumptions related to the parsing of options in
/etc/exports, and missed a few necessary new error checks.

The main problems related to netmasks: an IPv6 network address
missing a netmask would result in the filesystem being exported to
the whole IPv6 world, non-continuous netmasks would be made continuous
without any warnings, and nothing prevented you specifying an IPv4
mask with an IPv6 address.

This change addresses these issues. As a side-effect we now store
netmasks in sockaddr structs (this matches the kernel interface,
and is closer to the way it used to be). Add a flag OP_HAVEMASK to
keep track of whether or not we have successfully got a mask from
any source. Replace some mask-related helper functions with versions
that use the sockaddr-based masks.

Also tidy up get_net() and fix the code that interprets IPv4 partial
networks such as "127.1" as network rather than host addresses.
Properly zero out some structures that were ending up partially
containing junk from the stack, fix a few formatting issues, and
add a comment noting some assumptions about export arguments.
2001-04-21 20:06:18 +00:00
..
exports.5 mdoc(7) police: split punctuation characters + misc fixes. 2001-02-01 16:38:02 +00:00
Makefile - Backout botched attempt to introduce MANSECT feature. 2001-03-26 14:33:27 +00:00
mountd.8 mdoc(7) police: use the new features of the Nm macro. 2000-11-20 16:52:27 +00:00
mountd.c The introduction of IPv6 support from NetBSD's mountd invalidated 2001-04-21 20:06:18 +00:00
netgroup.5 mdoc(7) police: use the new features of the Nm macro. 2000-11-20 16:52:27 +00:00
pathnames.h