• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #ifndef MOBILEAPPLE80211_H
2 #define MOBILEAPPLE80211_H
3 
4 /*
5  * MobileApple80211 interface for iPhone/iPod touch
6  * These functions are available from Aeropuerto.
7  */
8 
9 struct Apple80211;
10 typedef struct Apple80211 *Apple80211Ref;
11 
12 int Apple80211Open(Apple80211Ref *ctx);
13 int Apple80211Close(Apple80211Ref ctx);
14 int Apple80211GetIfListCopy(Apple80211Ref handle, CFArrayRef *list);
15 int Apple80211BindToInterface(Apple80211Ref handle,
16 			      CFStringRef interface);
17 int Apple80211GetInterfaceNameCopy(Apple80211Ref handle,
18 				   CFStringRef *name);
19 int Apple80211GetInfoCopy(Apple80211Ref handle,
20 			  CFDictionaryRef *info);
21 int Apple80211GetPower(Apple80211Ref handle, char *pwr);
22 int Apple80211SetPower(Apple80211Ref handle, char pwr);
23 
24 /* parameters can be NULL; returns scan results in CFArrayRef *list;
25  * caller will need to free with CFRelease() */
26 int Apple80211Scan(Apple80211Ref handle, CFArrayRef *list,
27 		   CFDictionaryRef parameters);
28 
29 int Apple80211Associate(Apple80211Ref handle, CFDictionaryRef bss,
30 			CFStringRef password);
31 int Apple80211AssociateAndCopyInfo(Apple80211Ref handle, CFDictionaryRef bss,
32 				   CFStringRef password,
33 				   CFDictionaryRef *info);
34 
35 enum {
36 	APPLE80211_VALUE_SSID = 1,
37 	APPLE80211_VALUE_BSSID = 9
38 };
39 
40 int Apple80211CopyValue(Apple80211Ref handle, int field, CFDictionaryRef arg2,
41 			void *value);
42 
43 #endif /* MOBILEAPPLE80211_H */
44