|
@@ -940,6 +940,14 @@ static const struct icmp6_err {
|
|
|
.err = ECONNREFUSED,
|
|
|
.fatal = 1,
|
|
|
},
|
|
|
+ { /* POLICY_FAIL */
|
|
|
+ .err = EACCES,
|
|
|
+ .fatal = 1,
|
|
|
+ },
|
|
|
+ { /* REJECT_ROUTE */
|
|
|
+ .err = EACCES,
|
|
|
+ .fatal = 1,
|
|
|
+ },
|
|
|
};
|
|
|
|
|
|
int icmpv6_err_convert(u8 type, u8 code, int *err)
|
|
@@ -951,7 +959,7 @@ int icmpv6_err_convert(u8 type, u8 code, int *err)
|
|
|
switch (type) {
|
|
|
case ICMPV6_DEST_UNREACH:
|
|
|
fatal = 1;
|
|
|
- if (code <= ICMPV6_PORT_UNREACH) {
|
|
|
+ if (code < ARRAY_SIZE(tab_unreach)) {
|
|
|
*err = tab_unreach[code].err;
|
|
|
fatal = tab_unreach[code].fatal;
|
|
|
}
|