I, too, am being hammered by useless connections to qpsmtpd.
I suspect I'm being attacked by some sort of reverse-tarpit denial of service attack - my system shows 227 connections to port 25, of which 71 are in state SYN_RECV, 143 are in state CLOSE_WAIT and only 13 are ESTABLISHED.
When this happened last week I added all of the actively connected hosts to the smtpd DenyHosts list and that seemed to take care of it... until this morning.
If I run "tcpdump -i eth1 port 25" all of the packets captured show 0 byte length.
Many of the remote hosts are listed in the RBL services that I have configured, but they are allowed to connect before the RBL check is performed, letting them eat up smtp connections despite being known spammers.
Does anyone know of a script that will automatically maintain the DenyHosts list, or of any other way to kill do-nothing connections once they are recognized?