www.usr.com/support/gpl/USR9113_release1.0.tar.gz
[bcm963xx.git] / kernel / linux / net / bridge / br_fdb.c
index 35ecf0e..daf638e 100755 (executable)
@@ -95,10 +95,10 @@ void dolist(struct net_bridge *br)
        list_for_each_rcu(lh, &br->mc_list) {
            dst = (struct net_bridge_mc_fdb_entry *) list_entry(lh, struct net_bridge_mc_fdb_entry, list);
            printk("%s  %s      ", br->dev->name, dst->dst->dev->name);
-           addr_debug(&dst->addr);
+           addr_debug((unsigned char *) &dst->addr);
            printk("    ");
-           addr_debug(&dst->host);
-           printk("    %d\n", (dst->tstamp - jiffies)/HZ);
+           addr_debug((unsigned char *) &dst->host);
+           printk("    %d\n", (int) (dst->tstamp - jiffies)/HZ);
        }
 }
 
@@ -136,9 +136,9 @@ struct net_bridge_mc_fdb_entry *br_mc_fdb_get(struct net_bridge *br, struct net_
        return NULL;
 }
 
-mac_addr upnp_addr = {0x01, 0x00, 0x5e, 0x7f, 0xff, 0xfa};
+extern mac_addr upnp_addr;
 
-br_mc_fdb_add(struct net_bridge *br, struct net_bridge_port *prt, unsigned char *dest, unsigned char *host)
+int br_mc_fdb_add(struct net_bridge *br, struct net_bridge_port *prt, unsigned char *dest, unsigned char *host)
 {
        struct net_bridge_mc_fdb_entry *mc_fdb;
 
@@ -165,7 +165,7 @@ br_mc_fdb_add(struct net_bridge *br, struct net_bridge_port *prt, unsigned char
            init_timer(&br->igmp_timer);
            br->igmp_timer.expires = jiffies + TIMER_CHECK_TIMEOUT*HZ;
            br->igmp_timer.function = query_timeout;
-           br->igmp_timer.data = br;
+           br->igmp_timer.data = (unsigned long) br;
            add_timer(&br->igmp_timer);
            br->start_timer = 1;
        }
@@ -173,7 +173,7 @@ br_mc_fdb_add(struct net_bridge *br, struct net_bridge_port *prt, unsigned char
        return 1;
 }
 
-br_mc_fdb_cleanup(struct net_bridge *br)
+void br_mc_fdb_cleanup(struct net_bridge *br)
 {
        struct net_bridge_mc_fdb_entry *dst;
        struct list_head *lh;
@@ -188,7 +188,7 @@ br_mc_fdb_cleanup(struct net_bridge *br)
        spin_unlock_bh(&br->mcl_lock);
 }
 
-br_mc_fdb_remove_grp(struct net_bridge *br, struct net_bridge_port *prt, unsigned char *dest)
+void br_mc_fdb_remove_grp(struct net_bridge *br, struct net_bridge_port *prt, unsigned char *dest)
 {
        struct net_bridge_mc_fdb_entry *dst;
        struct list_head *lh;
@@ -205,13 +205,13 @@ br_mc_fdb_remove_grp(struct net_bridge *br, struct net_bridge_port *prt, unsigne
        spin_unlock_bh(&br->mcl_lock);
 }
 
-br_mc_fdb_remove(struct net_bridge *br, struct net_bridge_port *prt, unsigned char *dest, unsigned char *host)
+int br_mc_fdb_remove(struct net_bridge *br, struct net_bridge_port *prt, unsigned char *dest, unsigned char *host)
 {
        struct net_bridge_mc_fdb_entry *mc_fdb;
 
        //printk("--- remove mc entry ---\n");
        
-       if (mc_fdb = br_mc_fdb_get(br, prt, dest, host)) {
+       if ((mc_fdb = br_mc_fdb_get(br, prt, dest, host))) {
            spin_lock_bh(&br->mcl_lock);
            list_del_rcu(&mc_fdb->list);
            kfree(mc_fdb);