Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 20 May 1999 13:18:15 +0900 (JST)
From:      amagai@nue.org
To:        freebsd-bugs@FreeBSD.org
Subject:   Re: pending/11754: tx driver, SIOCGIFADDR ioctl does not work
Message-ID:  <199905200418.NAA10350@may.nue.org>

next in thread | raw e-mail | index | archive | help
My pr 11754 was not accepted by gnats, what's happened...

By the way, SIOCGIFADDR ioctl does not work on tx (SMC chip) network
driver.  The SIOCGIFADDR ioctl [src/pci/if_tx.c, epic_ifioctl]
invokes ether_ioctl() [src/net/if_ethersubr.c].  Here, MAC address
is copied out, as follows.

 bcopy(((struct arpcom *)ifp->if_softc)->ac_enaddr,
       (caddr_t) sa->sa_data, ETHER_ADDR_LEN);

So, "struct arpcom arpcom" must be a first element of softc structure.

/*	$OpenBSD: if_txvar.h,v 1.3 1998/10/10 04:30:09 jason Exp $	*/
/*      $Id: if_txvar.h,v 1.1.4.1 1999/04/23 05:47:53 semenu Exp $ */

================================================================
--- if_txvar.h'	Tue May 18 15:40:12 1999
+++ if_txvar.h	Tue May 18 15:41:15 1999
@@ -329,6 +329,7 @@
 	bus_space_tag_t		sc_st;
 	bus_space_handle_t	sc_sh;
 #else /* __FreeBSD__ */
+	struct arpcom		arpcom;
 #if defined(EPIC_USEIOSPACE)
 	u_int32_t		iobase;
 #else
@@ -338,7 +339,6 @@
 #if !defined(EPIC_NOIFMEDIA)
 	struct ifmedia 		ifmedia;
 #endif
-	struct arpcom		arpcom;
 	u_int32_t		unit;
 	struct epic_rx_buffer	rx_buffer[RX_RING_SIZE];
 	struct epic_tx_buffer	tx_buffer[TX_RING_SIZE];
================================================================

Amagai Yoshiji
NUE: New Unified Environment Research Project.


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199905200418.NAA10350>