Import mknod from ubase
Although mknod is not a POSIX tool, it is widely available on nearly all UNIX-like systems. It also can be implemented portably apart from use of the makedev macros, which is already a requirement of a couple other tools in sbase. While we're at it, fix a few bugs: - Include sys/sysmacros.h if makedev was not defined by sys/types.h - The default mode should respect the user's umask, rather than assuming it is 022. - Clear the umask when -m is specified explicitly so that nodes can be created with permissions wider than the user's umask. - Utilize parsemode from libutil to support symbolic mode strings.
This commit is contained in: