Index: asp3_tinet_ecnl_rx/trunk/asp3_dcre/tinet/net/ethernet.c
===================================================================
--- asp3_tinet_ecnl_rx/trunk/asp3_dcre/tinet/net/ethernet.c	(revision 337)
+++ asp3_tinet_ecnl_rx/trunk/asp3_dcre/tinet/net/ethernet.c	(revision 342)
@@ -29,5 +29,5 @@
  *  接的または間接的に生じたいかなる損害に関しても，その責任を負わない．
  * 
- *  @(#) $Id$
+ *  @(#) $Id: ethernet.c 1524 2018-04-25 13:48:23Z coas-nagasima $
  */
 
@@ -195,72 +195,83 @@
 
 /**
- * Called by a driver when its link goes up
- */
-void ether_set_link_up()
-{
-  if (!(ether_ifnet.flags & IF_FLAG_LINK_UP)) {
-    ether_ifnet.flags |= IF_FLAG_LINK_UP;
-
-    if (ether_ifnet.flags & IF_FLAG_UP) {
-#if LWIP_ARP
-      /* For Ethernet network interfaces, we would like to send a "gratuitous ARP" */ 
-      if (ether_ifnet.flags & IF_FLAG_ETHARP) {
-        etharp_gratuitous(&ether_ifnet);
-      }
-#endif /* LWIP_ARP */
-
-#if LWIP_IGMP
-      /* resend IGMP memberships */
-      if (ether_ifnet._flags & IF_FLAG_IGMP) {
-        igmp_report_groups(&ether_ifnet);
-      }
-#endif /* LWIP_IGMP */
-    }
-    if (ether_ifnet.link_callback) {
-      (ether_ifnet.link_callback)(&ether_ifnet);
-    }
-  }
-}
+ * ether_set_link_up -- リンクしたときにNICから呼び出される
+ */
+void
+ether_set_link_up()
+{
+	if (!(ether_ifnet.flags & IF_FLAG_LINK_UP)) {
+		ether_ifnet.flags |= IF_FLAG_LINK_UP;
+
+		if (ether_ifnet.flags & IF_FLAG_UP) {
+#if defined(_IP4_CFG) && defined(SUPPORT_ETHER)
+			/* ARP再構築？ */
+#endif /* #if defined(_IP4_CFG) && defined(SUPPORT_ETHER) */
+
+#ifdef SUPPORT_IGMP
+			/* IGMP参加 */
+#endif /* #ifdef SUPPORT_IGMP */
+			}
+		if (ether_ifnet.link_callback) {
+			(ether_ifnet.link_callback)(&ether_ifnet);
+			}
+		}
+	}
 
 /**
- * Called by a driver when its link goes down
- */
-void ether_set_link_down()
-{
-  if (ether_ifnet.flags & IF_FLAG_LINK_UP) {
-    ether_ifnet.flags &= ~IF_FLAG_LINK_UP;
-    if (ether_ifnet.link_callback) {
-      (ether_ifnet.link_callback)(&ether_ifnet);
-    }
-  }
-}
-
-void ether_set_up()
-{
-  if (!(ether_ifnet.flags & IF_FLAG_UP)) {
-    ether_ifnet.flags |= IF_FLAG_UP;
-    if (ether_ifnet.link_callback) {
-      (ether_ifnet.link_callback)(&ether_ifnet);
-    }
-  }
-}
-
-void ether_set_down()
-{
-  if (ether_ifnet.flags & IF_FLAG_UP) {
-    ether_ifnet.flags &= ~IF_FLAG_UP;
-    if (ether_ifnet.link_callback) {
-      (ether_ifnet.link_callback)(&ether_ifnet);
-    }
-  }
-}
-
-/**
- * Set callback to be called when link is brought up/down
- */
-void ether_set_link_callback(ether_status_callback_fn link_callback)
+ * ether_set_link_up -- リンクが切断したときにNICから呼び出される
+ */
+void
+ether_set_link_down()
+{
+	if (ether_ifnet.flags & IF_FLAG_LINK_UP) {
+		ether_ifnet.flags &= ~IF_FLAG_LINK_UP;
+		if (ether_ifnet.link_callback) {
+			(ether_ifnet.link_callback)(&ether_ifnet);
+			}
+		}
+	}
+
+/*
+ * ether_set_up -- DHCPでアドレスが設定されたとき呼び出される
+ */
+
+void
+ether_set_up()
+{
+	if (!(ether_ifnet.flags & IF_FLAG_UP)) {
+		ether_ifnet.flags |= IF_FLAG_UP;
+		if (ether_ifnet.link_callback) {
+			(ether_ifnet.link_callback)(&ether_ifnet);
+			}
+		}
+	}
+
+/*
+ * ether_set_down -- DHCPでアドレスが解放されたとき呼び出される
+ */
+
+void
+ether_set_down()
+{
+	if (ether_ifnet.flags & IF_FLAG_UP) {
+		ether_ifnet.flags &= ~IF_FLAG_UP;
+		if (ether_ifnet.link_callback) {
+			(ether_ifnet.link_callback)(&ether_ifnet);
+			}
+		}
+	}
+
+/*
+ * ether_set_link_callback -- リンク状態変化時のコールバック登録
+ */
+
+void
+ether_set_link_callback(ether_status_callback_fn link_callback)
 {
 	ether_ifnet.link_callback = link_callback;
-}
+	if (ether_ifnet.link_callback) {
+		(ether_ifnet.link_callback)(&ether_ifnet);
+		}
+	}
 
 /*
Index: asp3_tinet_ecnl_rx/trunk/asp3_dcre/tinet/net/ethernet.h
===================================================================
--- asp3_tinet_ecnl_rx/trunk/asp3_dcre/tinet/net/ethernet.h	(revision 337)
+++ asp3_tinet_ecnl_rx/trunk/asp3_dcre/tinet/net/ethernet.h	(revision 342)
@@ -29,5 +29,5 @@
  *  接的または間接的に生じたいかなる損害に関しても，その責任を負わない．
  * 
- *  @(#) $Id$
+ *  @(#) $Id: ethernet.h 1524 2018-04-25 13:48:23Z coas-nagasima $
  */
 
@@ -311,5 +311,4 @@
 extern uint32_t ether_srand (void);
 
-/** Function prototype for netif status- or link-callback functions. */
 typedef void (*ether_status_callback_fn)(T_IFNET *ether);
 extern void ether_set_link_callback(ether_status_callback_fn link_callback);
