I prefer Jesper's other patch (the one that goes back to
code = PRC_UNREACH_PORT).  Note that the comment here:

                        /*
                         * RFC 1122, Sections 3.2.2.1 and 4.2.3.9.
                         * Treat subcodes 2,3 as immediate RST
                         */
                        case ICMP_UNREACH_PROTOCOL:
                        case ICMP_UNREACH_PORT:
                                code = PRC_UNREACH_ADMIN_PROHIB;
                                break;

3.2.2.1 says that ICMP errors must be passed to the transport layer,
and 4.2.3.9 is TCP-specific.  To me, it's a more general solution to
give the transport layer more specific info (i.e. code = PRC_UNREACH_PORT)
and let it act appropriately (i.e. TCP treats PRC_UNREACH_PORT specially),
especially since TCP and UDP may want to report different things here.

  Bill

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-net" in the body of the message

Reply via email to