On Mon, Dec 21, 2020 at 11:34:04PM +0100, Alexander Bluhm wrote:
> Hi,
> 
> A while ago we decided to pass EACCES to uerland if pf blocks a
> packet.  IPv6 still has the old EHOSTUNREACH code.
> 
> Use the same errno for dropped IPv6 packets as in IPv4.
> 
> ok?

Seems reasonable. OK claudio@

> Index: netinet6/ip6_output.c
> ===================================================================
> RCS file: /data/mirror/openbsd/cvs/src/sys/netinet6/ip6_output.c,v
> retrieving revision 1.247
> diff -u -p -r1.247 ip6_output.c
> --- netinet6/ip6_output.c     17 Jul 2020 15:21:36 -0000      1.247
> +++ netinet6/ip6_output.c     21 Dec 2020 22:27:24 -0000
> @@ -616,7 +616,7 @@ reroute:
>  
>  #if NPF > 0
>       if (pf_test(AF_INET6, PF_OUT, ifp, &m) != PF_PASS) {
> -             error = EHOSTUNREACH;
> +             error = EACCES;
>               m_freem(m);
>               goto done;
>       }
> @@ -2773,7 +2773,7 @@ ip6_output_ipsec_send(struct tdb *tdb, s
>       if ((encif = enc_getif(tdb->tdb_rdomain, tdb->tdb_tap)) == NULL ||
>           pf_test(AF_INET6, fwd ? PF_FWD : PF_OUT, encif, &m) != PF_PASS) {
>               m_freem(m);
> -             return EHOSTUNREACH;
> +             return EACCES;
>       }
>       if (m == NULL)
>               return 0;
> 

-- 
:wq Claudio

Reply via email to