author | mickeyl <mickeyl> | 2003-04-08 14:15:35 (UTC) |
---|---|---|
committer | mickeyl <mickeyl> | 2003-04-08 14:15:35 (UTC) |
commit | 1af4ae3d621d63c82f7d78efda05218a3457981f (patch) (unidiff) | |
tree | 99423ee25f8bf9d008d8e990725c4ecefc864ecd /libopie2/opienet/802_11_user.h | |
parent | 77b1330ad7380ac87db4ab532acec7ae11c3bd3a (diff) | |
download | opie-1af4ae3d621d63c82f7d78efda05218a3457981f.zip opie-1af4ae3d621d63c82f7d78efda05218a3457981f.tar.gz opie-1af4ae3d621d63c82f7d78efda05218a3457981f.tar.bz2 |
- add skeleton for the last missing parts in the 802.11 decoding framework
- fix huge memory leak in packet capturer
- add more fine granular 802.11 subtype handling
Diffstat (limited to 'libopie2/opienet/802_11_user.h') (more/less context) (ignore whitespace changes)
-rw-r--r-- | libopie2/opienet/802_11_user.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/libopie2/opienet/802_11_user.h b/libopie2/opienet/802_11_user.h index ffdcb93..f596bd8 100644 --- a/libopie2/opienet/802_11_user.h +++ b/libopie2/opienet/802_11_user.h | |||
@@ -246,24 +246,36 @@ struct ieee_802_11_mgmt_header { | |||
246 | struct ieee_802_11_data_header { | 246 | struct ieee_802_11_data_header { |
247 | u_int16_tframe_control; | 247 | u_int16_tframe_control; |
248 | u_int16_tduration; | 248 | u_int16_tduration; |
249 | u_int8_tmac1[6]; | 249 | u_int8_tmac1[6]; |
250 | u_int8_tmac2[6]; | 250 | u_int8_tmac2[6]; |
251 | u_int8_tmac3[6]; | 251 | u_int8_tmac3[6]; |
252 | u_int16_tSeqCtl; | 252 | u_int16_tSeqCtl; |
253 | u_int8_tmac4[6]; | 253 | u_int8_tmac4[6]; |
254 | // u_int16_tgapLen; | 254 | // u_int16_tgapLen; |
255 | // u_int8_tgap[8]; | 255 | // u_int8_tgap[8]; |
256 | }; | 256 | }; |
257 | 257 | ||
258 | struct ieee_802_11_control_header { | ||
259 | u_int16_tframe_control; | ||
260 | u_int16_tduration; | ||
261 | u_int8_tmac1[6]; | ||
262 | u_int8_tmac2[6]; | ||
263 | u_int8_tmac3[6]; | ||
264 | u_int16_tSeqCtl; | ||
265 | u_int8_tmac4[6]; | ||
266 | // u_int16_tgapLen; | ||
267 | // u_int8_tgap[8]; | ||
268 | }; | ||
269 | |||
258 | #define CAPABILITY_ESS(cap) ((cap) & 0x0001) | 270 | #define CAPABILITY_ESS(cap) ((cap) & 0x0001) |
259 | #define CAPABILITY_IBSS(cap) ((cap) & 0x0002) | 271 | #define CAPABILITY_IBSS(cap) ((cap) & 0x0002) |
260 | #define CAPABILITY_CFP(cap) ((cap) & 0x0004) | 272 | #define CAPABILITY_CFP(cap) ((cap) & 0x0004) |
261 | #define CAPABILITY_CFP_REQ(cap) ((cap) & 0x0008) | 273 | #define CAPABILITY_CFP_REQ(cap) ((cap) & 0x0008) |
262 | #define CAPABILITY_PRIVACY(cap) ((cap) & 0x0010) | 274 | #define CAPABILITY_PRIVACY(cap) ((cap) & 0x0010) |
263 | 275 | ||
264 | struct ssid_t { | 276 | struct ssid_t { |
265 | u_int8_telement_id; | 277 | u_int8_telement_id; |
266 | u_int8_tlength; | 278 | u_int8_tlength; |
267 | u_char ssid[33]; /* 32 + 1 for null */ | 279 | u_char ssid[33]; /* 32 + 1 for null */ |
268 | }; | 280 | }; |
269 | 281 | ||
@@ -353,24 +365,28 @@ struct ieee_802_11_mgmt_body { | |||
353 | // struct rates_t rates; | 365 | // struct rates_t rates; |
354 | // struct ds_tds; | 366 | // struct ds_tds; |
355 | // struct cf_tcf; | 367 | // struct cf_tcf; |
356 | // struct fh_tfh; | 368 | // struct fh_tfh; |
357 | // struct tim_ttim; | 369 | // struct tim_ttim; |
358 | }; | 370 | }; |
359 | 371 | ||
360 | 372 | ||
361 | struct ieee_802_11_data_body { | 373 | struct ieee_802_11_data_body { |
362 | //FIXME | 374 | //FIXME |
363 | }; | 375 | }; |
364 | 376 | ||
377 | struct ieee_802_11_control_body { | ||
378 | //FIXME | ||
379 | }; | ||
380 | |||
365 | struct ctrl_rts_t { | 381 | struct ctrl_rts_t { |
366 | u_int16_tfc; | 382 | u_int16_tfc; |
367 | u_int16_tduration; | 383 | u_int16_tduration; |
368 | u_int8_tra[6]; | 384 | u_int8_tra[6]; |
369 | u_int8_tta[6]; | 385 | u_int8_tta[6]; |
370 | u_int8_tfcs[4]; | 386 | u_int8_tfcs[4]; |
371 | }; | 387 | }; |
372 | 388 | ||
373 | #define CTRL_RTS_LEN(2+2+6+6+4) | 389 | #define CTRL_RTS_LEN(2+2+6+6+4) |
374 | 390 | ||
375 | struct ctrl_cts_t { | 391 | struct ctrl_cts_t { |
376 | u_int16_tfc; | 392 | u_int16_tfc; |