Making, drinking tea and reading an opus magnum from David Lee:
> On Sat, 16 Apr 2005, Andrew Bartlett wrote:
> > On Sat, 2005-04-16 at 07:18 -0400, Michael Shalayeff wrote:
> >
> >> what is so "wrong" in it for you?
> >> maybe we can "fix" it...

> >
> > I don't like such low-level messing with the utmp file. How does ftpd
> > on the BSDs handle utmp? This is the modal David Lee used originally, I
> > think.

> It's nearly six years since I did the Samba utmp code, so my memory of it
> is fading.
> I never had access to, or experience of, BSD. In previous years we had
> used SunOS 4, which seems to be similar and was likewise based on the BSD
> subtree of UN*X, but we never used that with Samba.
> So the comments in the source code about SunOS 4 and BSD are based simply
> on a perusal of man pages (supplemented by some prior experience, though
> none directly of umtp) of SunOS 4.
> >
> > If the login() and logout() apis are not useful (has this been tested?),
> > can they be improved by the BSD crew to honour the contents of the
> > struct utmp?
> >
> > Basically, I want anything that avoids doing a write() to those files
> > directly.

> Use of the higher-level subroutines ("pututline()", "login()" etc.), where
> provided by the OS, certainly seems preferable. For one thing, it should
> (assuming no bugs!) manage locking, in a consistent fashion, of the
> underlying utmp/wtmp database files. (Imagine two or more simultaneous
> connects or disconnects of any entities (ftpd, telnetd, sshd, smbd, ...)
> which try to update those database files.)

those interfaces do not exist in *bsd.
login/logout is unusable as well and it is explained
in the comments in my diff WHY


paranoic mickey (my employers have changed but, the name has remained)