diff options
Diffstat (limited to 'sys/netinet/ip_input.c')
-rw-r--r-- | sys/netinet/ip_input.c | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/sys/netinet/ip_input.c b/sys/netinet/ip_input.c index 952b14943780..145c4464b855 100644 --- a/sys/netinet/ip_input.c +++ b/sys/netinet/ip_input.c @@ -873,13 +873,21 @@ ipproto_unregister(uint8_t proto) return (ENOENT); } +/* (x) - issued by icmp_input() */ u_char inetctlerrmap[PRC_NCMDS] = { - 0, 0, 0, 0, - 0, EMSGSIZE, EHOSTDOWN, EHOSTUNREACH, - EHOSTUNREACH, EHOSTUNREACH, ECONNREFUSED, ECONNREFUSED, - EMSGSIZE, EHOSTUNREACH, 0, 0, - 0, 0, EHOSTUNREACH, 0, - ENOPROTOOPT, ECONNREFUSED + [PRC_MSGSIZE] = EMSGSIZE, /* (x) */ + [PRC_HOSTDEAD] = EHOSTDOWN, + [PRC_HOSTUNREACH] = EHOSTUNREACH, + [PRC_UNREACH_NET] = EHOSTUNREACH, /* (x) */ + [PRC_UNREACH_HOST] = EHOSTUNREACH, + [PRC_UNREACH_PROTOCOL] = ECONNREFUSED, /* (x) */ + [PRC_UNREACH_PORT] = ECONNREFUSED, /* (x) */ + [12] = EMSGSIZE, + [PRC_UNREACH_SRCFAIL] = EHOSTUNREACH, + [PRC_TIMXCEED_INTRANS] = EHOSTUNREACH, /* (x) */ + [PRC_TIMXCEED_REASS] = 0, /* (x) */ + [PRC_PARAMPROB] = ENOPROTOOPT, /* (x) */ + [PRC_UNREACH_ADMIN_PROHIB] = ECONNREFUSED, /* (x) */ }; /* |