From bazilio@ns1.ied-vorstu.ac.ru  Thu Jan  8 03:42:57 1998
Received: from ns1.ied-vorstu.ac.ru (news.ied-vorstu.ac.ru [193.233.113.20])
          by hub.freebsd.org (8.8.7/8.8.7) with ESMTP id DAA05300
          for <FreeBSD-gnats-submit@freebsd.org>; Thu, 8 Jan 1998 03:41:16 -0800 (PST)
          (envelope-from bazilio@ns1.ied-vorstu.ac.ru)
Received: (from bazilio@localhost)
	by ns1.ied-vorstu.ac.ru (8.8.8/8.8.8) id OAA07676;
	Thu, 8 Jan 1998 14:36:34 +0300 (MSK)
	(envelope-from bazilio)
Message-Id: <199801081136.OAA07676@ns1.ied-vorstu.ac.ru>
Date: Thu, 8 Jan 1998 14:36:34 +0300 (MSK)
From: "Vasily V. Grechishnikov" <bazilio@ns1.ied-vorstu.ac.ru>
Reply-To: bazilio@ns1.ied-vorstu.ac.ru
To: FreeBSD-gnats-submit@freebsd.org
Subject: fxp device driver doesn't support SIOCSIFADDR for AF_IPX.
X-Send-Pr-Version: 3.2

>Number:         5460
>Category:       i386
>Synopsis:       [PATCH] fxp device driver doesn't support SIOCSIFADDR for AF_IPX.
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-bugs
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Thu Jan  8 14:33:23 PST 1998
>Closed-Date:    Mon May 4 13:25:31 PDT 1998
>Last-Modified:  Mon May  4 13:29:15 PDT 1998
>Originator:     Vasily V. Grechishnikov
>Release:        FreeBSD 3.0-CURRENT i386
>Organization:
IM & PE Dep. of VorSTU.
>Environment:

         3.0-CURRENT, last CVSup: 08 Jan 1998.

>Description:
	fxp device driver hasn't implementation of SIOCSIFADDR ioctl
request for AF_IPX address family. It is cause of absence to change
IPX address for this network interface.

>How-To-Repeat:

	ifconfig fxp0 ipx 0x76
>Fix:
	
*** if_fxp.c.orig	Wed Oct 29 16:49:33 1997
--- if_fxp.c	Thu Jan  8 13:57:45 1998
***************
*** 51,56 ****
--- 51,61 ----
  #include <netinet/in.h>
  #endif
  
+ #ifdef IPX
+ #include <netipx/ipx.h>
+ #include <netipx/ipx_if.h>
+ #endif
+ 
  #ifdef NS
  #include <netns/ns.h>
  #include <netns/ns_if.h>
***************
*** 437,442 ****
--- 442,465 ----
  			arp_ifinit(ifp, ifa);
  			break;
  #endif
+ 
+ #ifdef IPX
+ 		case AF_IPX:
+ 		    {
+ 			 register struct ns_addr *ina = &IA_SIPX(ifa)->sipx_addr;
+ 
+ 			 if (ipx_nullhost(*ina))
+ 				ina->x_host = *(union ipx_host *)
+ 				    LLADDR(ifp->if_sadl);
+ 			 else
+ 				bcopy(ina->x_host.c_host, LLADDR(ifp->if_sadl),
+ 				    ifp->if_addrlen);
+ 			 /* Set new address. */
+ 			 fxp_init(sc);
+ 			 break;
+ 		    }
+ #endif   /* IPX */
+ 
  #ifdef NS
  		case AF_NS:
  		    {
>Release-Note:
>Audit-Trail:
State-Changed-From-To: open->suspended 
State-Changed-By: phk 
State-Changed-When: Thu Apr 30 22:49:37 PDT 1998 
State-Changed-Why:  
awaiting committer 
State-Changed-From-To: suspended->closed 
State-Changed-By: jhay 
State-Changed-When: Mon May 4 13:25:31 PDT 1998 
State-Changed-Why:  
The fxp driver already supports IPX. The part of the driver which the 
patch applied to is part of the NetBSD specific part of the driver and 
they don't have IPX implemented in their kernels. AFAIK. 
>Unformatted:
