You are incorrect.

Recieving a file through DCC requires ZERO open ports on your end.

Only sending requires open ports, because the one getting the file connects to the one sending the file.