On Wed, Mar 13, 2013 at 3:35 PM, Chuck Swiger <cswi...@mac.com> wrote: > Hi-- > > On Mar 13, 2013, at 8:21 AM, Matt Miller wrote: >> If we have a connection that has received a SYN and ip_output() >> returns, say, EHOSTUNREACH, is there anything that guarantees the >> connection would always eventually be dropped if the condition >> persists? > > If the local TCP stack is unable to reply with a SYN-ACK, then it hasn't > established a connection yet because it cannot proceed through the 3WHS to > ESTAB. It will stay in LISTEN state. >
Sorry, I should have been more specific: say the connection has already progressed to at least ESTABLISHED or beyond when the ip_output() error occurs. So, we'll hit the TCPS_HAVERCVDSYN if block below: case EHOSTDOWN: case EHOSTUNREACH: case ENETDOWN: case ENETUNREACH: if (TCPS_HAVERCVDSYN(tp->t_state)) { tp->t_softerror = error; return (0); } Thanks, Matt > Regards, > -- > -Chuck > _______________________________________________ freebsd-net@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-net To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"