changeset 896:598fbd635caf

* src/syntheth.c (synth_eth_init): Set the flag IFF_ALLMULTI so eth_drv correctly sets mutlicast filtering. * cdl/syntheth.cdl: This driver implements multicast.
author asl
date Thu, 03 Apr 2003 13:58:24 +0000
parents 4747af8ef0ef
children 07ad44cfd9a4
files packages/devs/eth/synth/ecosynth/current/ChangeLog packages/devs/eth/synth/ecosynth/current/cdl/syntheth.cdl packages/devs/eth/synth/ecosynth/current/src/syntheth.c
diffstat 3 files changed, 11 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/packages/devs/eth/synth/ecosynth/current/ChangeLog
+++ b/packages/devs/eth/synth/ecosynth/current/ChangeLog
@@ -1,3 +1,9 @@
+2003-04-01  Andrew Lunn  <andrew.lunn@ascom.ch>
+
+	* src/syntheth.c (synth_eth_init): Set the flag IFF_ALLMULTI so
+	eth_drv correctly sets mutlicast filtering.
+	* cdl/syntheth.cdl: This driver implements multicast.
+
 2003-02-25  Jonathan Larmour  <jifl@eCosCentric.com>
 
 	* doc/syntheth.sgml: Declare as <part> not <reference> to get
--- a/packages/devs/eth/synth/ecosynth/current/cdl/syntheth.cdl
+++ b/packages/devs/eth/synth/ecosynth/current/cdl/syntheth.cdl
@@ -64,6 +64,7 @@ cdl_package CYGPKG_DEVS_ETH_ECOSYNTH {
     parent      CYGPKG_IO_ETH_DRIVERS
     active_if   CYGPKG_IO_ETH_DRIVERS
     active_if   CYGPKG_HAL_SYNTH
+    implements  CYGINT_IO_ETH_MULTICAST
 
     cdl_option CYGVAR_DEVS_ETH_ECOSYNTH_ETH0 {
 	display         "Provide eth0 device"
--- a/packages/devs/eth/synth/ecosynth/current/src/syntheth.c
+++ b/packages/devs/eth/synth/ecosynth/current/src/syntheth.c
@@ -451,5 +451,9 @@ synth_eth_init(struct cyg_netdevtab_entr
         }
     }
     (*sc->funs->eth_drv->init)(sc, eth->MAC);
+
+#ifdef CYGPKG_NET
+    sc->sc_arpcom.ac_if.if_flags |= IFF_ALLMULTI;
+#endif    
     return result;
 }