Because our implementation guarantees the strings inside struct utmpx to
be null terminated, we don't need to copy everything out, which makes
the code nicer to read.
Also set WARNS to 6 and add $FreeBSD$ to keep SVN happy.
current tty as returned from ttyname(3) so it can try to avoid writing to
the current tty if possible. Previously, it did this by trimming off any
leading directory (effectively performing a basename(3) on the path
returned from ttyname(3)). However, this chopped off too much of the path
for ttys who have directories in their name such as pts(4). Instead, just
strip off the leading /dev/ from the path returned by ttyname(3). This
fixes write(1) when using pts(4).
MFC after: 1 week
Reported by: rwatson
Add some constness to avoid some warnings.
Remove use register keyword.
Deal with missing/unneeded extern/prototypes.
Some minor type changes/casts to avoid warnings.
Reviewed by: md5
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.