summaryrefslogtreecommitdiff
path: root/sys/arch/mac68k/dev
diff options
context:
space:
mode:
authorJason Wright <jason@cvs.openbsd.org>2003-01-27 20:11:40 +0000
committerJason Wright <jason@cvs.openbsd.org>2003-01-27 20:11:40 +0000
commit5cd7e3f95a7a6674b4fb5a3fc07575f9a534fd55 (patch)
tree388b71d140f6a1ae83f519284acedf71b6b5ed2a /sys/arch/mac68k/dev
parentaa37cc51f16159b1ec474284273d2267b6673625 (diff)
padd < mimimum sized frames with 0's instead of whatever the chip wants; based on netbsd.
Diffstat (limited to 'sys/arch/mac68k/dev')
-rw-r--r--sys/arch/mac68k/dev/if_ae.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/sys/arch/mac68k/dev/if_ae.c b/sys/arch/mac68k/dev/if_ae.c
index b0d75b94c03..95a85c67521 100644
--- a/sys/arch/mac68k/dev/if_ae.c
+++ b/sys/arch/mac68k/dev/if_ae.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_ae.c,v 1.18 2002/03/14 01:26:35 millert Exp $ */
+/* $OpenBSD: if_ae.c,v 1.19 2003/01/27 20:11:39 jason Exp $ */
/* $NetBSD: if_ae.c,v 1.62 1997/04/24 16:52:05 scottr Exp $ */
/*
@@ -1079,6 +1079,13 @@ ae_put(sc, m, buf)
savebyte[1] = 0;
bus_space_write_region_2(sc->sc_buft, sc->sc_bufh,
buf, savebyte, 1);
+ buf += 2;
}
+ if (totlen < ETHER_MIN_LEN - ETHER_CRC_LEN) {
+ bus_space_set_region_2(sc->sc_buft, sc->sc_bufh, buf, 0,
+ (ETHER_MIN_LEN - ETHER_CRC_LEN - totlen) >> 1);
+ totlen = ETHERMIN - ETHER_CRC_LEN;
+ }
+
return (totlen);
}