Subject: Re: latest ath/net80211 from freebsd
To: None <tech-net@netbsd.org>
From: Jukka Salmi <j+nbsd@2005.salmi.ch>
List: tech-net
Date: 06/07/2005 18:06:18
--NMuMz9nt05w80d4+
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

Hi,

David Young wrote:
> I have imported ath/net80211 of 18 May 2005 from FreeBSD into
> NetBSD-current.  Please test and send your feedback.  I have done the
> most rudimentary tests of ath(4) in ad hoc mode, only.

I applied your patches to todays HEAD sources with the following results:

* While building a GENERIC kernel, I noticed three missing files:
    _ieee80211.h
    athrate.h
    athrate-onoe.h
  Your fimport script told me how to create these files.

* The attached patches were neccessary to successfully compile the
  kernel. (However, I'm not sure whether ieee80211_netbsd.c.patch is
  correct or not, but at least it made compilation succeed...)

* Linking the kernel failed with undefined references to rijndael_set_key
  and rijndael_encrypt. I don't know how to fix this.


Help is appreciated!

TIA, Jukka

-- 
bashian roulette:
$ ((RANDOM%6)) || rm -rf ~

--NMuMz9nt05w80d4+
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="ieee80211_netbsd.c.patch"

--- sys/net80211/ieee80211_netbsd.c.orig	2005-06-03 16:47:57.000000000 +0200
+++ sys/net80211/ieee80211_netbsd.c	2005-06-07 16:55:44.000000000 +0200
@@ -333,7 +333,7 @@
 	int error, s, nelt;
 
 	if (namelen == 1 && name[0] == CTL_QUERY)
-		return (sysctl_query(SYSCTLFN_CALL(rnode)));
+		return (sysctl_query(SYSCTLFN_CALL(&rnode)));
 
 	if (namelen != IEEE80211_SYSCTL_NODENAMELEN)
 		return (EINVAL);

--NMuMz9nt05w80d4+
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="ieee80211_proto.c.patch"

--- sys/net80211/ieee80211_proto.c.orig	2005-03-08 10:39:25.000000000 +0100
+++ sys/net80211/ieee80211_proto.c	2005-06-07 16:57:38.000000000 +0200
@@ -324,11 +324,11 @@
 		break;
 	}
 	if (wh->i_fc[1] & IEEE80211_FC1_WEP) {
-		int i;
+		int j;
 		printf(" WEP [IV");
-		for (i = 0; i < IEEE80211_WEP_IVLEN; i++)
-			printf(" %.02x", buf[sizeof(*wh)+i]);
-		printf(" KID %u]", buf[sizeof(*wh)+i] >> 6);
+		for (j = 0; j < IEEE80211_WEP_IVLEN; j++)
+			printf(" %.02x", buf[sizeof(*wh)+j]);
+		printf(" KID %u]", buf[sizeof(*wh)+j] >> 6);
 	}
 	if (rate >= 0)
 		printf(" %dM", rate / 2);

--NMuMz9nt05w80d4+--