diff options
| author | 2005-01-18 23:26:51 +0000 | |
|---|---|---|
| committer | 2005-01-18 23:26:51 +0000 | |
| commit | ba3c70d7ffadf03fe5752bc1ce61a0fe7fd8a15c (patch) | |
| tree | a710eddb832345d31581154a018a806312735bfd /sys/net/if_ethersubr.c | |
| parent | Use correct source address for ICMP errors generated from packets that were (diff) | |
| download | wireguard-openbsd-ba3c70d7ffadf03fe5752bc1ce61a0fe7fd8a15c.tar.xz wireguard-openbsd-ba3c70d7ffadf03fe5752bc1ce61a0fe7fd8a15c.zip | |
Rewriting the lladdr can now be done without using mbuf tags.
Advertisements run through the carp interface first.
So we just take the address from ifp0.
While we're there,
also remove carp_macmatch6, which isn't used anymore.
Proposed by mcbride@
ok mcbride@, pascoe@
Diffstat (limited to 'sys/net/if_ethersubr.c')
| -rw-r--r-- | sys/net/if_ethersubr.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/sys/net/if_ethersubr.c b/sys/net/if_ethersubr.c index c89daabab6e..2a832916b5c 100644 --- a/sys/net/if_ethersubr.c +++ b/sys/net/if_ethersubr.c @@ -1,4 +1,4 @@ -/* $OpenBSD: if_ethersubr.c,v 1.87 2004/12/19 03:25:36 mcbride Exp $ */ +/* $OpenBSD: if_ethersubr.c,v 1.88 2005/01/18 23:26:52 mpf Exp $ */ /* $NetBSD: if_ethersubr.c,v 1.19 1996/05/07 02:40:30 thorpej Exp $ */ /* @@ -494,10 +494,9 @@ ether_output(ifp0, m0, dst, rt0) sizeof(eh->ether_shost)); #if NCARP > 0 - if (ifp->if_carp) { - error = carp_fix_lladdr(ifp0, m, dst, NULL); - if (error) - goto bad; + if (ifp0 != ifp && ifp0->if_type == IFT_CARP) { + bcopy((caddr_t)((struct arpcom *)ifp0)->ac_enaddr, + (caddr_t)eh->ether_shost, sizeof(eh->ether_shost)); } #endif |
