1 1.1 dyoung *** 2 1.2 skrll *** Summary of changes between 2005-05-18 and 2005-11-01. 3 1.1 dyoung *** 4 1.2 skrll *** % setenv TZ UTC 5 1.1 dyoung *** % cvs -d freebsdanoncvs (a] anoncvs.freebsd.org:/home/ncvs co src 6 1.1 dyoung *** % cd src/sys/net80211/ 7 1.2 skrll *** % cvs2cl --follow trunk --hide-filenames --no-indent --no-wrap \ 8 1.2 skrll *** -f CHANGES -l '-d 2005-05-18<=2005-11-01' 9 1.1 dyoung *** 10 1.1 dyoung 11 1.2 skrll 2005-08-30 14:27 avatar 12 1.2 skrll 13 1.2 skrll Properly set ic_curchan before calling back to device driver to do channel 14 1.2 skrll switching(ifconfig devX channel Y). This fix should make channel changing 15 1.2 skrll works again in monitor mode. 16 1.2 skrll 17 1.2 skrll Submitted by: sam 18 1.2 skrll X-MFC-With: other ic_curchan changes 19 1.2 skrll 20 1.2 skrll 2005-08-13 17:50 sam 21 1.2 skrll 22 1.2 skrll revert 1.64: we cannot use the channel characteristics to decide when to 23 1.2 skrll do 11g erp sta accounting because b/g channels show up as false positives 24 1.2 skrll when operating in 11b. 25 1.2 skrll 26 1.2 skrll Noticed by: Michal Mertl 27 1.2 skrll 28 1.2 skrll 2005-08-13 17:31 sam 29 1.2 skrll 30 1.2 skrll Extend acl support to pass ioctl requests through and use this to 31 1.2 skrll add support for getting the current policy setting and collecting 32 1.2 skrll the list of mac addresses in the acl table. 33 1.2 skrll 34 1.2 skrll Submitted by: Michal Mertl (original version) 35 1.2 skrll MFC after: 2 weeks 36 1.2 skrll 37 1.2 skrll 2005-08-10 17:42 sam 38 1.2 skrll 39 1.2 skrll Don't use ic_curmode to decide when to do 11g station accounting, 40 1.2 skrll use the station channel properties. Fixes assert failure/bogus 41 1.2 skrll operation when an ap is operating in 11a and has associated stations 42 1.2 skrll then switches to 11g. 43 1.2 skrll 44 1.2 skrll Noticed by: Michal Mertl 45 1.2 skrll Reviewed by: avatar 46 1.2 skrll MFC after: 2 weeks 47 1.2 skrll 48 1.2 skrll 2005-08-10 16:22 sam 49 1.2 skrll 50 1.2 skrll Clarify/fix handling of the current channel: 51 1.2 skrll o add ic_curchan and use it uniformly for specifying the current 52 1.2 skrll channel instead of overloading ic->ic_bss->ni_chan (or in some 53 1.2 skrll drivers ic_ibss_chan) 54 1.2 skrll o add ieee80211_scanparams structure to encapsulate scanning-related 55 1.2 skrll state captured for rx frames 56 1.2 skrll o move rx beacon+probe response frame handling into separate routines 57 1.2 skrll o change beacon+probe response handling to treat the scan table 58 1.2 skrll more like a scan cache--look for an existing entry before adding 59 1.2 skrll a new one; this combined with ic_curchan use corrects handling of 60 1.2 skrll stations that were previously found at a different channel 61 1.2 skrll o move adhoc neighbor discovery by beacon+probe response frames to 62 1.2 skrll a new ieee80211_add_neighbor routine 63 1.2 skrll 64 1.2 skrll Reviewed by: avatar 65 1.2 skrll Tested by: avatar, Michal Mertl 66 1.2 skrll MFC after: 2 weeks 67 1.2 skrll 68 1.2 skrll 2005-08-09 10:19 rwatson 69 1.2 skrll 70 1.2 skrll Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE and 71 1.2 skrll IFF_DRV_RUNNING, as well as the move from ifnet.if_flags to 72 1.2 skrll ifnet.if_drv_flags. Device drivers are now responsible for 73 1.2 skrll synchronizing access to these flags, as they are in if_drv_flags. This 74 1.2 skrll helps prevent races between the network stack and device driver in 75 1.2 skrll maintaining the interface flags field. 76 1.2 skrll 77 1.2 skrll Many __FreeBSD__ and __FreeBSD_version checks maintained and continued; 78 1.2 skrll some less so. 79 1.2 skrll 80 1.2 skrll Reviewed by: pjd, bz 81 1.2 skrll MFC after: 7 days 82 1.2 skrll 83 1.2 skrll 2005-08-08 18:46 sam 84 1.2 skrll 85 1.2 skrll Split crypto tx+rx key indices and add a key index -> node mapping table: 86 1.2 skrll 87 1.2 skrll Crypto changes: 88 1.2 skrll o change driver/net80211 key_alloc api to return tx+rx key indices; a 89 1.2 skrll driver can leave the rx key index set to IEEE80211_KEYIX_NONE or set 90 1.2 skrll it to be the same as the tx key index (the former disables use of 91 1.2 skrll the key index in building the keyix->node mapping table and is the 92 1.2 skrll default setup for naive drivers by null_key_alloc) 93 1.2 skrll o add cs_max_keyid to crypto state to specify the max h/w key index a 94 1.2 skrll driver will return; this is used to allocate the key index mapping 95 1.2 skrll table and to bounds check table loookups 96 1.2 skrll o while here introduce ieee80211_keyix (finally) for the type of a h/w 97 1.2 skrll key index 98 1.2 skrll o change crypto notifiers for rx failures to pass the rx key index up 99 1.2 skrll as appropriate (michael failure, replay, etc.) 100 1.2 skrll 101 1.2 skrll Node table changes: 102 1.2 skrll o optionally allocate a h/w key index to node mapping table for the 103 1.2 skrll station table using the max key index setting supplied by drivers 104 1.2 skrll (note the scan table does not get a map) 105 1.2 skrll o defer node table allocation to lateattach so the driver has a chance 106 1.2 skrll to set the max key id to size the key index map 107 1.2 skrll o while here also defer the aid bitmap allocation 108 1.2 skrll o add new ieee80211_find_rxnode_withkey api to find a sta/node entry 109 1.2 skrll on frame receive with an optional h/w key index to use in checking 110 1.2 skrll mapping table; also updates the map if it does a hash lookup and the 111 1.2 skrll found node has a rx key index set in the unicast key; note this work 112 1.2 skrll is separated from the old ieee80211_find_rxnode call so drivers do 113 1.2 skrll not need to be aware of the new mechanism 114 1.2 skrll o move some node table manipulation under the node table lock to close 115 1.2 skrll a race on node delete 116 1.2 skrll o add ieee80211_node_delucastkey to do the dirty work of deleting 117 1.2 skrll unicast key state for a node (deletes any key and handles key map 118 1.2 skrll references) 119 1.2 skrll 120 1.2 skrll Ath driver: 121 1.2 skrll o nuke private sc_keyixmap mechansim in favor of net80211 support 122 1.2 skrll o update key alloc api 123 1.2 skrll 124 1.2 skrll These changes close several race conditions for the ath driver operating 125 1.2 skrll in ap mode. Other drivers should see no change. Station mode operation 126 1.2 skrll for ath no longer uses the key index map but performance tests show no 127 1.2 skrll noticeable change and this will be fixed when the scan table is eliminated 128 1.2 skrll with the new scanning support. 129 1.2 skrll 130 1.2 skrll Tested by: Michal Mertl, avatar, others 131 1.2 skrll Reviewed by: avatar, others 132 1.2 skrll MFC after: 2 weeks 133 1.2 skrll 134 1.2 skrll 2005-08-08 05:49 sam 135 1.2 skrll 136 1.2 skrll use ieee80211_iterate_nodes to retrieve station data; the previous 137 1.2 skrll code walked the list w/o locking 138 1.2 skrll 139 1.2 skrll MFC after: 1 week 140 1.2 skrll 141 1.2 skrll 2005-08-08 03:30 sam 142 1.2 skrll 143 1.2 skrll Cleanup beacon/listen interval handling: 144 1.2 skrll o separate configured beacon interval from listen interval; this 145 1.2 skrll avoids potential use of one value for the other (e.g. setting 146 1.2 skrll powersavesleep to 0 clobbers the beacon interval used in hostap 147 1.2 skrll or ibss mode) 148 1.2 skrll o bounds check the beacon interval received in probe response and 149 1.2 skrll beacon frames and drop frames with bogus settings; not clear 150 1.2 skrll if we should instead clamp the value as any alteration would 151 1.2 skrll result in mismatched sta+ap configuration and probably be more 152 1.2 skrll confusing (don't want to log to the console but perhaps ok with 153 1.2 skrll rate limiting) 154 1.2 skrll o while here up max beacon interval to reflect WiFi standard 155 1.2 skrll 156 1.2 skrll Noticed by: Martin <nakal (a] nurfuerspam.de> 157 1.2 skrll MFC after: 1 week 158 1.2 skrll 159 1.2 skrll 2005-08-06 04:57 sam 160 1.2 skrll 161 1.2 skrll fix debug msg typo 162 1.2 skrll 163 1.2 skrll MFC after: 3 days 164 1.2 skrll 165 1.2 skrll 2005-08-06 04:56 sam 166 1.2 skrll 167 1.2 skrll Fix handling of frames sent prior to a station being authorized 168 1.2 skrll when operating in ap mode. Previously we allocated a node from the 169 1.2 skrll station table, sent the frame (using the node), then released the 170 1.2 skrll reference that "held the frame in the table". But while the frame 171 1.2 skrll was in flight the node might be reclaimed which could lead to 172 1.2 skrll problems. The solution is to add an ieee80211_tmp_node routine 173 1.2 skrll that crafts a node that does exist in a table and so isn't ever 174 1.2 skrll reclaimed; it exists only so long as the associated frame is in flight. 175 1.2 skrll 176 1.2 skrll MFC after: 5 days 177 1.2 skrll 178 1.2 skrll 2005-07-31 06:12 sam 179 1.2 skrll 180 1.2 skrll close a race between reclaiming a node when a station is inactive 181 1.2 skrll and sending the null data frame used to probe inactive stations 182 1.2 skrll 183 1.2 skrll MFC after: 5 days 184 1.2 skrll 185 1.2 skrll 2005-07-27 04:41 sam 186 1.2 skrll 187 1.2 skrll when bridging internally bypass the bss node as traffic to it 188 1.2 skrll must follow the normal input path 189 1.2 skrll 190 1.2 skrll Submitted by: Michal Mertl 191 1.2 skrll MFC after: 5 days 192 1.2 skrll 193 1.2 skrll 2005-07-27 02:53 sam 194 1.2 skrll 195 1.2 skrll bandaid ni_fails handling so ap's with association failures are 196 1.2 skrll reconsidered after a bit; a proper fix involves more changes to 197 1.2 skrll the scanning infrastructure 198 1.2 skrll 199 1.2 skrll Reviewed by: avatar, David Young 200 1.2 skrll MFC after: 5 days 201 1.2 skrll 202 1.2 skrll 2005-07-23 00:16 sam 203 1.2 skrll 204 1.2 skrll the AREF flag is only meaningful in ap mode; adhoc neighbors now 205 1.2 skrll are timed out of the sta/neighbor table 206 1.2 skrll 207 1.2 skrll 2005-07-22 23:25 sam 208 1.2 skrll 209 1.2 skrll o move inactivity-related debug msgs under IEEE80211_MSG_INACT 210 1.2 skrll o probe inactive neighbors in adhoc mode (they don't have an 211 1.2 skrll association id so previously were being timed out) 212 1.2 skrll 213 1.2 skrll MFC after: 3 days 214 1.2 skrll 215 1.2 skrll 2005-07-22 21:11 sam 216 1.2 skrll 217 1.2 skrll split xmit of probe request frame out into a separate routine that 218 1.2 skrll takes explicit parameters; this will be needed when scanning is 219 1.2 skrll decoupled from the state machine to do bg scanning 220 1.2 skrll 221 1.2 skrll MFC after: 3 days 222 1.2 skrll 223 1.2 skrll 2005-07-22 20:48 sam 224 1.2 skrll 225 1.2 skrll split 802.11 frame xmit setup code into ieee80211_send_setup 226 1.2 skrll 227 1.2 skrll MFC after: 3 days 228 1.2 skrll 229 1.2 skrll 2005-07-22 17:57 sam 230 1.2 skrll 231 1.2 skrll simplify ic_newassoc callback 232 1.2 skrll 233 1.2 skrll MFC after: 3 days 234 1.2 skrll 235 1.2 skrll 2005-07-22 17:54 sam 236 1.2 skrll 237 1.2 skrll simplify ieee80211_ibss_merge api 238 1.2 skrll 239 1.2 skrll MFC after: 3 days 240 1.2 skrll 241 1.2 skrll 2005-07-22 17:50 sam 242 1.2 skrll 243 1.2 skrll add stats we know we'll need soon and some spare fields for future expansion 244 1.2 skrll 245 1.2 skrll MFC after: 3 days 246 1.2 skrll 247 1.2 skrll 2005-07-22 17:45 sam 248 1.2 skrll 249 1.2 skrll simplify tim callback api 250 1.2 skrll 251 1.2 skrll MFC after: 3 days 252 1.2 skrll 253 1.2 skrll 2005-07-22 17:42 sam 254 1.2 skrll 255 1.2 skrll don't include 802.3 header in min frame length calculation as it may 256 1.2 skrll not be present for a frag; fixes problem with small (fragmented) frames 257 1.2 skrll being dropped 258 1.2 skrll 259 1.2 skrll Obtained from: Atheros 260 1.2 skrll MFC after: 3 days 261 1.2 skrll 262 1.2 skrll 2005-07-22 17:36 sam 263 1.2 skrll 264 1.2 skrll simplify ieee80211_node_authorize and ieee80211_node_unauthorize api's 265 1.2 skrll 266 1.2 skrll MFC after: 3 days 267 1.2 skrll 268 1.2 skrll 2005-07-22 17:31 sam 269 1.2 skrll 270 1.2 skrll simplifiy ieee80211_send_nulldata api 271 1.2 skrll 272 1.2 skrll MFC after: 3 days 273 1.2 skrll 274 1.2 skrll 2005-07-22 17:29 sam 275 1.2 skrll 276 1.2 skrll simplify rate set api's by removing ic parameter (implicit in node reference) 277 1.2 skrll 278 1.2 skrll MFC after: 3 days 279 1.2 skrll 280 1.2 skrll 2005-07-22 17:21 sam 281 1.2 skrll 282 1.2 skrll reject association requests with a wpa/rsn ie when wpa/rsn is not 283 1.2 skrll configured on the ap; previously we either ignored the ie or (possibly) 284 1.2 skrll failed an assertion 285 1.2 skrll 286 1.2 skrll Obtained from: Atheros 287 1.2 skrll MFC after: 3 days 288 1.2 skrll 289 1.2 skrll 2005-07-22 17:16 sam 290 1.2 skrll 291 1.2 skrll missed one in last commit; add device name to discard msgs 292 1.2 skrll 293 1.2 skrll 2005-07-22 17:13 sam 294 1.2 skrll 295 1.2 skrll include device name in discard msgs 296 1.2 skrll 297 1.2 skrll 2005-07-22 17:12 sam 298 1.2 skrll 299 1.2 skrll add diag msgs for frames discarded because the direction field is wrong 300 1.2 skrll 301 1.2 skrll 2005-07-22 17:08 sam 302 1.2 skrll 303 1.2 skrll split data frame delivery out to a new function ieee80211_deliver_data 304 1.2 skrll 305 1.2 skrll 2005-07-22 17:00 sam 306 1.2 skrll 307 1.2 skrll o add IEEE80211_IOC_FRAGTHRESHOLD for getting+setting the 308 1.2 skrll tx fragmentation threshold 309 1.2 skrll o fix bounds checking on IEEE80211_IOC_RTSTHRESHOLD 310 1.2 skrll 311 1.2 skrll MFC after: 3 days 312 1.2 skrll 313 1.2 skrll 2005-07-22 16:55 sam 314 1.2 skrll 315 1.2 skrll o add IEEE80211_FRAG_DEFAULT 316 1.2 skrll o move default settings for RTS and frag thresholds to ieee80211_var.h 317 1.2 skrll 318 1.2 skrll 2005-07-22 16:50 sam 319 1.2 skrll 320 1.2 skrll diff reduction against p4: define IEEE80211_FIXED_RATE_NONE and use 321 1.2 skrll it instead of -1 322 1.2 skrll 323 1.2 skrll 2005-07-22 16:37 sam 324 1.2 skrll 325 1.2 skrll add flags missed in last merge 326 1.2 skrll 327 1.2 skrll 2005-07-22 16:36 sam 328 1.2 skrll 329 1.2 skrll Diff reduction against p4: 330 1.3 andvar o add ic_flags_ext for eventual extension of ic_flags 331 1.2 skrll o define/reserve flag+capabilities bits for superg, 332 1.2 skrll bg scan, and roaming support 333 1.2 skrll o refactor debug msg macros 334 1.2 skrll 335 1.2 skrll MFC after: 3 days 336 1.2 skrll 337 1.2 skrll 2005-07-22 05:17 sam 338 1.2 skrll 339 1.2 skrll send a response when an auth request is denied due to an acl; 340 1.2 skrll might be better to silently ignore the frame but this way we 341 1.2 skrll give stations a chance of figuring out what's wrong 342 1.2 skrll 343 1.2 skrll 2005-07-22 05:15 sam 344 1.2 skrll 345 1.2 skrll remove excess whitespace 346 1.2 skrll 347 1.2 skrll 2005-07-22 04:55 sam 348 1.2 skrll 349 1.2 skrll use IF_HANDOFF when bridging frames internally so if_start gets 350 1.2 skrll called; fixes communication between associated sta's 351 1.2 skrll 352 1.2 skrll MFC after: 3 days 353 1.2 skrll 354 1.2 skrll 2005-07-11 03:06 sam 355 1.1 dyoung 356 1.1 dyoung Handle encrypt of arbitarily fragmented mbuf chains: previously 357 1.1 dyoung we bailed if we couldn't collect the 16-bytes of data required 358 1.1 dyoung for an aes block cipher in 2 mbufs; now we deal with it. While 359 1.1 dyoung here make space accounting signed so a sanity check does the 360 1.1 dyoung right thing for malformed mbuf chains. 361 1.1 dyoung 362 1.2 skrll Approved by: re (scottl) 363 1.2 skrll 364 1.2 skrll 2005-07-11 03:00 sam 365 1.1 dyoung 366 1.1 dyoung nuke assert that duplicates real check 367 1.1 dyoung 368 1.2 skrll Reviewed by: avatar 369 1.2 skrll Approved by: re (scottl) 370 1.2 skrll 371 1.2 skrll 2005-07-09 23:15 sam 372 1.1 dyoung 373 1.1 dyoung Change default key allocation method to do the right thing for 374 1.1 dyoung legacy parts (i.e. those that have 4 global key slots). We 375 1.1 dyoung blindly assign unicast keys to key slot 0. Devices that need 376 1.1 dyoung alternate allocation logic must override this method. 377 1.1 dyoung 378 1.2 skrll Reviewed by: avatar 379 1.2 skrll Approved by: re (scottl) 380 1.2 skrll 381 1.2 skrll 2005-07-08 22:49 sam 382 1.1 dyoung 383 1.1 dyoung correct check for high priority wme traffic 384 1.1 dyoung 385 1.1 dyoung Noticed by: Ralf Assmann 386 1.2 skrll Reviewed by: apatti 387 1.2 skrll Approved by: re (scottl) 388 1.1 dyoung 389 1.2 skrll 2005-07-08 16:36 sam 390 1.1 dyoung 391 1.1 dyoung fix another instance of the MORE_DATA bit handling for frames on the 392 1.1 dyoung power save queue (missed in previous commit) 393 1.1 dyoung 394 1.1 dyoung Submitted by: Bruno Randolf 395 1.2 skrll Approved by: re (scottl) 396 1.1 dyoung 397 1.2 skrll 2005-07-06 15:38 sam 398 1.1 dyoung 399 1.1 dyoung add "pureg" mode for ap operation: reject association requests from 400 1.1 dyoung 11b-only stations when operating in 11g 401 1.1 dyoung 402 1.2 skrll Reviewed by: avatar 403 1.2 skrll Approved by: re (scottl) 404 1.2 skrll 405 1.2 skrll 2005-07-06 01:55 sam 406 1.1 dyoung 407 1.1 dyoung Fix handling of data frames queued for a station in power save mode: 408 1.1 dyoung don't mark the MORE_DATA bit when taking it off the ps queue, there's 409 1.1 dyoung no 802.11 header then; we must wait to do this at encap time so 410 1.1 dyoung mark the mbuf instead. 411 1.1 dyoung 412 1.2 skrll Reviewed by: avatar 413 1.2 skrll Approved by: re (scottl) 414 1.1 dyoung Obtained from: Atheros 415 1.1 dyoung 416 1.2 skrll 2005-07-06 01:51 sam 417 1.1 dyoung 418 1.1 dyoung Fix race condition in handling node reference counts for authenticating 419 1.1 dyoung stations in ap mode. Track when a node's first auth frame is 420 1.1 dyoung received and use this to decide whether or not to bump the refcnt. 421 1.1 dyoung This insures we only ever bump the refcnt once. 422 1.1 dyoung 423 1.2 skrll Reviewed by: avatar 424 1.2 skrll Approved by: re (scottl) 425 1.2 skrll 426 1.2 skrll 2005-07-06 01:31 avatar 427 1.1 dyoung 428 1.1 dyoung Only update the scan entry state based on newly received frames. 429 1.1 dyoung This fixes duplicative BSS entries(memory leaks as well) listed in 430 1.1 dyoung "ifconfig dev list scan" when a station fails to associate with an AP. 431 1.1 dyoung 432 1.2 skrll Reviewed by: sam 433 1.2 skrll Approved by: re (scottl) 434 1.2 skrll 435 1.2 skrll 2005-07-05 18:05 sam 436 1.1 dyoung 437 1.1 dyoung remove auto-add of IEEE80211_KEY_GROUP; all the apps that need to 438 1.1 dyoung set it have been fixed 439 1.1 dyoung 440 1.2 skrll Reviewed by: avatar 441 1.2 skrll Approved by: re (scottl) 442 1.2 skrll 443 1.2 skrll 2005-07-05 17:35 sam 444 1.1 dyoung 445 1.1 dyoung o when setting a wpa key, hold a ref on the bss node; 446 1.1 dyoung fixes a ref cnt leak 447 1.1 dyoung o make unicast key handling on delete identical to set 448 1.1 dyoung o change legacy wep key api to reset the 802.11 state 449 1.1 dyoung machine for backwards compatibility 450 1.1 dyoung 451 1.2 skrll Reviewed by: avatar 452 1.2 skrll Approved by: re (scottl) 453 1.2 skrll 454 1.2 skrll 2005-07-04 01:29 sam 455 1.1 dyoung 456 1.1 dyoung when operating in ap mode, explicitly drop associated/authenticated 457 1.1 dyoung stations when transitioning to INIT state (e.g. as a result of 458 1.1 dyoung changing state at the 802.11 level) 459 1.1 dyoung 460 1.2 skrll Approved by: re (scottl) 461 1.2 skrll 462 1.2 skrll 2005-06-13 21:01 sam 463 1.1 dyoung 464 1.1 dyoung revert 1.53; it breaks ibss merge 465 1.1 dyoung 466 1.1 dyoung Noticed by: Bruno Randolf 467 1.2 skrll Approved by: re (dwhite) 468 1.1 dyoung 469 1.2 skrll 2005-06-10 21:30 sam 470 1.1 dyoung 471 1.1 dyoung don't look at the wme ie in a beacon unless we negotiated use 472 1.1 dyoung 473 1.2 skrll 2005-06-10 16:49 brooks 474 1.1 dyoung 475 1.1 dyoung Stop embedding struct ifnet at the top of driver softcs. Instead the 476 1.1 dyoung struct ifnet or the layer 2 common structure it was embedded in have 477 1.1 dyoung been replaced with a struct ifnet pointer to be filled by a call to the 478 1.1 dyoung new function, if_alloc(). The layer 2 common structure is also allocated 479 1.1 dyoung via if_alloc() based on the interface type. It is hung off the new 480 1.1 dyoung struct ifnet member, if_l2com. 481 1.1 dyoung 482 1.1 dyoung This change removes the size of these structures from the kernel ABI and 483 1.1 dyoung will allow us to better manage them as interfaces come and go. 484 1.1 dyoung 485 1.1 dyoung Other changes of note: 486 1.1 dyoung - Struct arpcom is no longer referenced in normal interface code. 487 1.1 dyoung Instead the Ethernet address is accessed via the IFP2ENADDR() macro. 488 1.1 dyoung To enforce this ac_enaddr has been renamed to _ac_enaddr. 489 1.1 dyoung - The second argument to ether_ifattach is now always the mac address 490 1.1 dyoung from driver private storage rather than sometimes being ac_enaddr. 491 1.1 dyoung 492 1.2 skrll Reviewed by: sobomax, sam 493 1.2 skrll 494 1.2 skrll 2005-06-10 16:14 sam 495 1.1 dyoung 496 1.1 dyoung validate the bssid for non-data frames too when operating in 497 1.1 dyoung adhoc/ahdemo/hostap modes 498 1.1 dyoung 499 1.2 skrll 2005-06-10 16:11 sam 500 1.1 dyoung 501 1.1 dyoung o fix wpa w/ wme: don't strip the QoS header on recv as tkip requires 502 1.1 dyoung it; instead pass the space occupied by the header down into the 503 1.1 dyoung crypto modules (except in the demic case which needs it only when 504 1.1 dyoung doing int in s/w) 505 1.1 dyoung o while here fix defrag to strip the header from 2nd and later frames 506 1.1 dyoung o teach decap code how to handle 4-address frames 507 1.1 dyoung 508 1.2 skrll 2005-06-10 05:04 sam 509 1.1 dyoung 510 1.1 dyoung mark stations authorized during recv processing instead of doing it 511 1.1 dyoung as a side effect of sending an auth success frame; sending mgmt 512 1.1 dyoung frames should not have side effects 513 1.1 dyoung 514 1.2 skrll 2005-06-10 04:42 sam 515 1.1 dyoung 516 1.1 dyoung move AID implementation defines from the protocol definitions to 517 1.1 dyoung where they are used 518 1.1 dyoung 519 1.2 skrll 2005-06-10 04:37 sam 520 1.1 dyoung 521 1.1 dyoung accept diassoc frame in ASSOC state 522 1.1 dyoung 523 1.2 skrll 2005-06-10 01:48 sam 524 1.1 dyoung 525 1.1 dyoung pull some debug msgs up so they're seen more often 526 1.1 dyoung 527 1.2 skrll 2005-06-10 01:47 sam 528 1.1 dyoung 529 1.1 dyoung kick the state machine when we receive failure notice from an ap (when 530 1.1 dyoung operating in sta mode); this speeds up the state machine, previously 531 1.1 dyoung we were acting on a timeout 532 1.1 dyoung 533 1.2 skrll 2005-06-10 01:43 sam 534 1.1 dyoung 535 1.1 dyoung discard open auth requests in adhoc mode 536 1.1 dyoung 537 1.2 skrll 2005-06-10 01:41 sam 538 1.1 dyoung 539 1.1 dyoung reject open auth requests when shared key auth is configured 540 1.1 dyoung 541 1.1 dyoung Obtained from: Atheros 542 1.1 dyoung 543 1.2 skrll 2005-06-10 01:40 sam 544 1.1 dyoung 545 1.1 dyoung add ieee80211_send_error to encapsulate an idiom 546 1.1 dyoung 547 1.2 skrll 2005-06-10 01:38 sam 548 1.1 dyoung 549 1.1 dyoung o always check if ic_set_tim is !NULL before using it 550 1.1 dyoung o add missing call to clear tim after flushing ps q 551 1.1 dyoung 552 1.2 skrll 2005-06-10 01:35 sam 553 1.1 dyoung 554 1.1 dyoung mark state for protection only when operating in 11g 555 1.1 dyoung 556 1.2 skrll 2005-06-10 01:33 sam 557 1.1 dyoung 558 1.1 dyoung don't reject station based on the PRIVACY bit in the capabilities; 559 1.1 dyoung the 802.11 spec says not to 560 1.1 dyoung 561 1.1 dyoung Obtained from: Atheros 562 1.1 dyoung 563 1.2 skrll 2005-06-10 01:31 sam 564 1.1 dyoung 565 1.1 dyoung correct checks for rate set compatibility 566 1.1 dyoung 567 1.2 skrll 2005-06-10 01:29 sam 568 1.1 dyoung 569 1.1 dyoung record tstamp from beacons received in station mode when associated; 570 1.1 dyoung this is needed by drivers that want to resync their timers based on 571 1.1 dyoung the tsf of the last recv'd beacon frame 572 1.1 dyoung 573 1.2 skrll 2005-06-09 04:05 sam 574 1.1 dyoung 575 1.1 dyoung o collect dtim period+count from beacons in station mode so drivers 576 1.1 dyoung can better program beacon timers 577 1.1 dyoung o leave placeholder in com structure for future ap/adhoc mode tim support 578 1.1 dyoung 579 1.2 skrll Reviewed by: avatar 580 1.2 skrll 581 1.2 skrll 2005-06-07 23:37 sam 582 1.1 dyoung 583 1.1 dyoung Change the MLME ASSOCIATE ioctl to accept either a ssid, a bssid, 584 1.1 dyoung or a bssid+ssid. This is needed for later versions of wpa_supplicant 585 1.1 dyoung and for forthcoming addons to wpa_supplicant. 586 1.1 dyoung 587 1.1 dyoung Note this is an api change and applications must be rebuilt. 588 1.1 dyoung 589 1.2 skrll 2005-06-07 23:31 sam 590 1.1 dyoung 591 1.1 dyoung Don't clock the state machine in various cases when roaming is set 592 1.1 dyoung to manual; this helps keep wpa_supplicant in sync. 593 1.1 dyoung 594 1.2 skrll 2005-06-07 00:08 sam 595 1.1 dyoung 596 1.1 dyoung WPA/802.11i interoperability fixes: 597 1.1 dyoung o only include capabilities word in the WPA ie when non-zero and 598 1.1 dyoung not preauth 599 1.1 dyoung o always include the capabilities in the RSN ie 600 1.1 dyoung 601 1.1 dyoung Obtained from: Atheros 602 1.1 dyoung 603 1.2 skrll 2005-06-06 04:04 sam 604 1.1 dyoung 605 1.1 dyoung add force flag to enmic/demic crypto api for use in xmit fragmentation 606 1.1 dyoung and h/w mic verification 607 1.2 skrll 608 1.2 skrll Reviewed by: avatar 609 1.2 skrll 610