At 10:38 AM 6/26/01 -0400, Barry A. Warsaw wrote:
"RJ" == Ron Jarrell <jarrell@vt.edu> writes:
RJ> Python Information -----] admin(25762): sys.version = 2.1 (#1,
Oops, should have looked closer at your output. I bet something's messed up with your crypt library. Like, your older Python installation didn't have crypt, but your new installation does?
Try setting USE_CRYPT.
Ok, my USE_CRYPT has always been set to 1 (as advised in the comments, I just let configure set it.)
My old machine was running 1.5.2, and I thought I'd turned everything on, but given the module config file has about 174,000 poorly documented bits to flip on or off, apparently I didn't. I just went back to that machine and did a "from crypt import crypt", and sure enough, got an ImportError. However, on my new machine, which also has the USE_CRYPT set to 1, it turns out that yes, I can import crypt. So I guess I got screwed by the fact that python actually has half a clue now as to what it's doing when it builds itself.
However, I suspect the comments are wrong. I ignored it back then because I didn't know, and the comment suggested that configure would do the right thing. Obviously it didn't. In fact, looking at the Defaults.py.in, it's just hard coded to *1*.
From looking at the code, what's doing the right thing is the Crypt.py module, which, if mm_cfg.USE_CRYPT is set, tries to import it, traps the error, and resets it on the fly.
The comment in Defaults should probably be changed to "If you don't know, leave it at 1, and Crypt.py will do the right thing. But if you don't have crypt, then upgrade python to include crypt, admin.py will start blowing up in strange and mysterious ways until you change this back to 0"...