David Young wrote:
I upgraded my kernel and userland from 4.99.73 to 5.99.8. Since then, some programs that I installed from pkgsrc before the upgrade will crash. The crash circumstances suggest that the programs may read bigger-than-expected 'struct passwd' from the password database, in that way clobbering variables and causing a crash later. In other words, this may be 64-bit time_t fallout.
These issues have been hashed out a bit in the past couple of months. With the kind of version jump you've made, that kind of fallout is 'currently' expected.
Rebuilding most of everything from pkgsrc and regenerating pwd.db are at least two things I remember doing.
And yes, before you say anything, binary backwards compatibility is indeed an issue :)
The reason I think tcsh is reading password entries before it crashes is that when I try to tab-complete a user's home directory,ls ~dyoun<Tab>Segmentation fault Mutt crashes, too, when I try to send an email to, say, 'fubar' without qualifying the username with a FQDN ('fubar%ojctech.com@localhost'). It stands to reason that mutt may lookup the username in the password database in the former case, but not in the latter.
I have no idea but maybe pwd_mkdb will help. If you attempt to install any pkgsrc programs that try to create a user and group, you'll be presented with a warning to do so anyway.
There are a few major pieces of software effected (this is for the people searching the archives) besides what you have listed. Apache22/apr1 (but most likely apache/apr in general) and postgresql are the others I hit but I'm sure there is more. Both of these programs reported errors that in no way related to the actual problem, most implying that system limits needed to be increased when a recompile was needed or additionally in postgresql's case, new data files implemented. Apparently it writes time_t to disk.
Sarton