It appears to be a pervasive assumption in the Portable OpenSSH code that wtmp and wtmpx records for the end of a session do not need to include the user name or hostname. Unfortunately Solaris appears not to go along with that assumption; the Solaris "last" command shows all login sessions initiated by OpenSSH as never terminating, or sometimes terminating with the user's next login, and examination of wtmp/wtmpx records for other kinds of logins show that those services do record the username and hostname in both session start and session end records. While it looks like it is possible to fix this, it's probably going to require some extensive code changes and some kind of conditionals to make this do the right thing in Solaris without changing the behavior on other OSes.