Jump to content
3992 posts in this topic

Recommended Posts

can you try the commented code in outputpacked()? it will be nice to have the ip displayed after associate to a network. this will allow to exclude "bad" networks

 

using ipw_best_network() can be used to:

- build a list of all accepted (good) networks

- build a list of all refused (bad) nets

 

and them let the user decide.

 

there's a bug when associatting to a secure network - must find a way to detect secure networks

 

another issue as to do with scan results - iwi keeps updating the network list with data -> must update application results too. this also happens after associating a network

 

 

i think at this point we can ask for help on build the "graphic" design of the interface - i'd love to have a airport menu with apple's logo :P

 

 

 

 

 

 

 

The 3945ABG is now reconized has an ethernet logement pci pci8086,4222.

 

what happens when you press the led (wireless) button?

 

for those who don't have that button - reboot from windows with the card power on

 

FlipHDK, patatester

 

are you getting this results in logs too?

 

maybe you can change someting in the code

 

 

and by the way

 

where's xkazu?

not apple`s logo, but insanely mac logo :P

and for the graphic menu, i can do one, but only in mono(C# port to mac & linux) , as i have pretty good knowledge in C# on windows forms...

 

but ofcourse if someone wishes to do it on a more native platform, he is more than wellcome, but i think were still way a head of ourselfes... first i'll need to make this stuff work, then work well...

 

my guess is that by the end of this week or maybe the one after we will have a fully working interface for selecting networks... after that, we will have to move it to a graphical interface.

not apple`s logo, but insanely mac logo :P

and for the graphic menu, i can do one, but only in mono(C# port to mac & linux) , as i have pretty good knowledge in C# on windows forms...

 

but ofcourse if someone wishes to do it on a more native platform, he is more than wellcome, but i think were still way a head of ourselfes... first i'll need to make this stuff work, then work well...

 

my guess is that by the end of this week or maybe the one after we will have a fully working interface for selecting networks... after that, we will have to move it to a graphical interface.

not apple`s logo, but insanely mac logo :P

 

i'll let that for the designers - i think there's some here

 

if you feel confortable with svn goto the iwidarwin page - i'll add you to the project so that you can post source/builds there. you need to have a gmail account

 

 

 

 

 

jalavoui, same here.

 

The 3945ABG is now reconized has an ethernet logement pci pci8086,4222.

 

and aiport menu at bar is gone also.

 

led is always off when fn+f2.. try p_disable = 1 and 0

 

if u need to test something , iam here.

 

regards,

 

 

when p_disable = 1 you need to press the "wireless button" to power the card on

 

i think kzau can explain this better than me

 

please send the logs - i always fix bugs by seeing it

 

 

i hope everybody's happy without the io80211 framewors

 

thank you all

well i'll just have to learn how to use svn, but still, it's a WIP.

i have some trouble moving network names from driver to application, i get it as bunch of numbers in the application...

 

is there a way for me to know how much networks the card gets ?

when p_disable = 1 you need to press the "wireless button" to power the card on

 

i think kzau can explain this better than me

 

Also did that, no go!!!

 

please send the logs - i always fix bugs by seeing it

i hope everybody's happy without the io80211 framewors

 

thank you all

 

thank u!!!

system.txt

dmesg.txt

ioreg.txt

is there a way for me to know how much networks the card gets ?

 

check ipw_best_network()

 

IWI_DEBUG("Network '%s (%02x:%02x:%02x:%02x:%02x:%02x)' \n",

escape_essid((const char*)network->ssid, network->ssid_len),

MAC_ARG(network->bssid));

 

if you copy "network" structure from iwi->app you only need to format the results as i do with iwi_debug

 

i think you only need the network name(ssid) and mac-address(bssid) to display to user

 

i'm not shure on how to find out if the network is a secure network - in this case the network must be exclude.

 

to get the number of networks - maybe using ARRAY_SIZE - or with a for..next cycle

 

check ipw_scan_check() - maybe you can build a function like this to pass the user choise - stop the scan or dissasociate (depending on priv->status) and try to attach to the new network

 

 

 

Also did that, no go!!!

thank u!!!

 

i think that if you disable the IOBluetoothHCIController extension it wil help iwi3945

 

when you get this message:

 

iwi3945: Radio Frequency Kill Switch is On:

Mar 19 16:58:35 iDell kernel[0]: Kill switch must be turned off for wireless networking to work.

 

the card is powered off - to switch it on you must boot with it already on (from windows)

 

another solution is to do it by software - i haven't done that yeat...

 

i do know that p_mode=1 requieres to push the button to power the card on

 

so p_mode=0 - if you don't have the wireless button

 

i also know that kazu skiped this problem - his card works

 

i'd like to ask others how to get arround this problem

 

thanks for the logs

i think i'm stupid or something...

 

take a look at this:

 

char* a="nothing";

socklen_t b=10;

result = getsockopt( fd, SYSPROTO_CONTROL, 0, a, &:(;

 

getsockopt is the function which should trigger the following function inside the kext, where data=a:

 

int sendNetworkList(kern_ctl_ref kctlref, u_int32_t unit, void *unitinfo,int opt, void *data, size_t *len)

{

printf("hello world: send network list\n");

 

struct ipw_priv *priv = clone->priv;

char *network="\";

if (priv!=NULL && priv->ieee!=NULL && priv->ieee->networks != NULL)

{

strcpy(network,escape_essid((const char*)priv->ieee->networks[0].ssid,priv->ieee->networks[0].ssid_len));

printf("found network: %s\n",network);

}

if (data!=NULL) strcpy((char*)data,network);

return(0);

}

 

and i have no idea why on hell it doesn't update *a.

i'm sending the pointer which shouldn't be touched, but it's data should be swapped with the one on "network"

 

after the function, "*a" should contain the name of the first available network... but it doesn't...

nevermind, i got it give me to first network name !

well... after putting in so much time on this little prick.. i think i deserve some sleep...

i'll carry out the rest tommorow, as i have a really really really boring class at the morning (logics).

 

BTW, jalavoui, my gmail is: asaf.algawi@...

i think that if you disable the IOBluetoothHCIController extension it wil help iwi3945

 

when you get this message:

 

iwi3945: Radio Frequency Kill Switch is On:

Mar 19 16:58:35 iDell kernel[0]: Kill switch must be turned off for wireless networking to work.

 

the card is powered off - to switch it on you must boot with it already on (from windows)

 

another solution is to do it by software - i haven't done that yeat...

 

i do know that p_mode=1 requieres to push the button to power the card on

 

so p_mode=0 - if you don't have the wireless button

 

i also know that kazu skiped this problem - his card works

 

i'd like to ask others how to get arround this problem

 

thanks for the logs

 

boot first in windows then reboot again to osx.. either my ethernet and wireless card are recognized. LOL

 

Disable bluetooth seems not to help either.

 

p_led =1

p_mode = 0

p_disable = 0

 

i attach both results from booting after windows and poweroff/power on!!

 

tnx again jalavoui/mosseschrist/kadzu.

dmesg_poff.txt

ioreg_poff.txt

system_poff.txt.txt

dmesg.txt

ioreg.txt

system.txt

you can't , yet.

the 3945 & 2100 can't connect to wireless networks, yet.

 

ok, i think i implemented getting the whole list of networks (not sure, the only network available is the one my card creates, i will check it at my university tomorrow.

 

lol, i couldn't just stop, i was having to much fun tinkering with it... which is a BAD thing ! you shouldn't enjoy software development !

 

good night, for real this time...

Hi

 

latest kext:

 

Card is recognized as ethernet pci... with correct MAC

 

logs are attached

 

 

PS. Bluetooth kext is still in use.

Does anybody know why it has complications with iwi kexts? Will it be the same for " iwi3945 ethernet adaptor"

approach?

dmesg.txt

ioreg.txt

system.txt

iwi2100 - rev 231

 

-more rx functions support

- static functions for mem r/w

 

http://iwidarwin.googlecode.com/svn/trunk/...100/iwi2100.dmg

 

 

 

how can ''- call ipw_associate_network()'' be done?

 

if you want to help - and have xcode

 

check the rx interupts i code

 

i think that if bluetooth extensions are present the iwi fails

 

when the driver receivs the scan interrupt it will allow to associate

 

need help on this...

 

I'm running GNU/Linux and would gladly help out with testing the 2100 driver.

 

iwi2100 has lots of code comment out - i do this to try to see how it can go

 

if you can review the code i think it will be easy to make it work

 

iwi2100 is easy to make - it can use most of iwi2200 working functions

 

if you can check the code it will help a lot

 

hmmm

 

check iwi2200.h - i'm using "private" for several var/functions - maybe change it to "public" helps

 

int sendNetworkList(kern_ctl_ref kctlref, u_int32_t unit, void *unitinfo,int opt, void *data, size_t *len)

{

struct list_head network_list=( struct list_head)data; // data should be priv->ieee->network_list

struct ieee80211_network *network;

 

 

}

 

if you can use iwi struct in app it will be much easy to do - then just print results

 

note that priv->ieee->network_list is struct list_head network_list;

 

you'll need

 

to pass it to network

 

hmmm

 

check iwi2200.h - i'm using "private" for several var/functions - maybe change it to "public" helps

 

int sendNetworkList(kern_ctl_ref kctlref, u_int32_t unit, void *unitinfo,int opt, void *data, size_t *len)

{

struct list_head network_list=( struct list_head)data; // data should be priv->ieee->network_list

struct ieee80211_network *network;

list_for_each_entry(network, &priv->ieee->network_list, list)

printf("Network '%s (%02x:%02x:%02x:%02x:%02x:%02x)' \n",

escape_essid((const char*)network->ssid, network->ssid_len),

MAC_ARG(network->bssid));

 

}

 

if you can use iwi struct in app it will be much easy to do - then just print results

 

see ipw_associate() - maybe it's better to get the list using ipw_best_network() - to allow to build a include/exclude list

 

about find the vendor/card id

 

open console

 

type ioreg -w0

 

text search for 8086

 

the ids are there

 

my id is pci8086,4220

 

edit info.plist if you get problems loading the drive

 

add 0x42208086 to allow the card to be detectect bt the driver

 

can someone put this in english into the faq of iwidarwin?

iwi2100 - rev 231

 

-more rx functions support

- static functions for mem r/w

 

hello,

 

kext is not loaded when I try rev230 and rev231.

if I load it manually then I have the attached kextload error message.

btw: I've modified Info.plist according to my device/vendor ID.

 

thanks.

kextload_rev230_rev231.txt

who wants to be a test subject ?

 

for your pleasure i am uploading two files:

 

1. updated iwi2200 driver with added functions to allow viewing of available networks.

2. application to view the networks (terminal application)

 

*******************

***important notes***

the version of the driver is slightly older than the last one jalavoui

posted here since i started working on it before he posted updates.

anoter one:

in order the use the application you must use my version of the driver.

if it will work for you, i will apply the changes to jalavoui`s latest version.

and last one:

i am uploading the files as xcode projects, so you will have the source if you are interested in it.

also you have binary files in:

KEXT file: iwi2200/build/Release/

application: networkSelector/build/Debug/

*******************

*******************

 

to use the application all you need to do is to compile(for now) and run it, and it will automaticly print out

available networks (no association for now).

to run the application, cd in the terminal to the directory above, and then type: ./networkSelector

 

there is no menu in application (even no textual one) for the main reason that it will NOT remain as a text application is that i (or someone else) will port it to a graphical environment when the job is finally done.

 

 

on a side note:

i'm so excited !!!

my first software release, i am an insanelymac developer :D

 

Network Selector

iwi2200 kext

 

sorry for the rapid share links, i still have not learend how to use the SVN thingy...

 

jalavoui, xkazu, FlipHDK and any other developers:

the diffrence between my version and jalavouis consists in adding the following:

1. static darwin_iwi2200 clone at the top of the iwi2200.cpp file, the variable is initilized at the start() function as: clone=this;

2. adding kext control API in the start() function.

3. adding 5 functions at the bottom of the iwi2200.cpp file. these functions are used to communicate between applications and the driver.

 

i have used the following guide:

kext control

Guest
This topic is now closed to further replies.
×
×
  • Create New...