Hello,
I've taken a different (better) approach to getting tpop3d-compatible UIDLs: the first attached patch (...md5_modifier.diff) adds a variable expansion modifier (%M) to return the md5sum of the expanded variable in hex. With the patch, you can get tpop3d-compatible UIDLs by setting pop3_uidl_format to %Mf.
While testing interactions with other modifiers (e.g. %MUf to get the md5sum in uppercase), I noticed that %U is broken -- it lowercases the input just as %L does. The second patch (...ucase_modifier_fix.diff) is a one-liner to fix that.
Finally, the third attached patch (...apop_aesthetics.diff) is another trivial patch to add a space between the server greeting and the APOP challenge. I think it looks better when telnetting to the server to diagnose something, and since spaces are stripped from the end of the login_greeting, editing the code is the only way to add the space.
Cheers,
Ben Winslow <rain@bluecherry.net>