(In a Perl one-liner, no less.)
Now that I'm no longer on campus I had to reconfigure my offline mail setup to not use the school's SMTP server. I forwarded a port over SSH and tried to reconfigure masqmail, only to have it just chug away at my disk when I tried to have it send its queue. I verified the connections: the forward connected localhost:30025 to mailserver:25, and I had set mail_host=localhost:30025... After a bit of poking around, I sat back and thought about how it could get into a loop, and then it dawned on me: masqmail was pushing its queue into localhost:25—that is, itself! Apparently their lame config parser doesn't require quotes around the parameters, yet was silently dropping the part after the colon and using the implicit port 25 on the bare hostname. Sticking quotes around localhost:30025 made everything work as expected.
There's a lesson in this somewhere, but I'm not sure what it is. I hate computers.