From: Seth M. <se...@ro...> - 2009-01-20 00:36:02
|
I was working on developing fetchmail for use in a large multiuser environment and came across some issues with the POP3 UID lists. I'm very new to fetchmail's code, so I don't know of these things are intentional or expected behavior, but they seemed "broken" to me. 1) The old UID list is never loaded when the daemon starts or restarts and the whole POP3 box downloaded every time for "keep" sources. My fix was to comment out the break after save_str() in uid.c because as far as I can tell, having that break in there causes it to never load the id file and it'll self-break when the for loop hits a null anyway. 2) Everything is duplicated in the scratchlist even for UID entries we should know about so I added a boolean flag to skips duplicates. Otherwise when the UID file is written it'll include oldlist plus duplicates in scratchlist. Is it supposed to duplicate everything into the scratchlist for some reason? This isn't a functional problem, but it does waste memory and disk space if you're thinking about large deployments. I'm still muddling through this so I can roll these changes plus some other weirdness I'm seeing into a patch when I'm finished, if interested. -- Seth Mattinen se...@ro... Roller Network LLC |