Commit Briefs
implement virtual and userdata tables for users handling
The idea is to abstract over the users that kamid manages. The virtual table allows to use a custom userbase instead of the local UNIX users. The userdata tables maps (virtual) users to their home directory, which is the only directory tree exported by kamid as of now. Together, they allow a powerful and flexible management of the users and their data. The idea is somewhat stolen from smtpd(8).
backport type change for parse.y
Don't declare variables as "unsigned char *" that are passed to functions that take "char *" arguments. Where such chars are assigned to int or passed to ctype functions, explicitly cast them to unsigned char. For OpenBSD' clang, -Wpointer-sign has been disabled by default, but when the parse.y code was built elsewhere, the compiler would complain. (originally by naddy@ for various parse.y in the tree)
s/SIMPLEQ_/STAILQ_/g
STAILQ_* macros seems to be more widespread than SIMPLEQ_*
add flags to listener; warn if missing auth_table
in the future we'll have also plain 9p, so mark the tls listeners with L_TLS and add the libtls machinery only in that case.
avoid redefining symbol `listen'
on some version of bison there's an issue since we have a rule `listen' and a variable `listen'.