482 case BLOCK_ACK: |
482 case BLOCK_ACK: |
483 switch (m_actionValue) |
483 switch (m_actionValue) |
484 { |
484 { |
485 case BLOCK_ACK_ADDBA_REQUEST: |
485 case BLOCK_ACK_ADDBA_REQUEST: |
486 retval.blockAck = BLOCK_ACK_ADDBA_REQUEST; |
486 retval.blockAck = BLOCK_ACK_ADDBA_REQUEST; |
487 return retval; |
487 break ; |
488 case BLOCK_ACK_ADDBA_RESPONSE: |
488 case BLOCK_ACK_ADDBA_RESPONSE: |
489 retval.blockAck = BLOCK_ACK_ADDBA_RESPONSE; |
489 retval.blockAck = BLOCK_ACK_ADDBA_RESPONSE; |
490 return retval; |
490 break ; |
491 case BLOCK_ACK_DELBA: |
491 case BLOCK_ACK_DELBA: |
492 retval.blockAck = BLOCK_ACK_DELBA; |
492 retval.blockAck = BLOCK_ACK_DELBA; |
493 return retval; |
493 break ; |
494 } |
494 } |
|
495 break ; |
|
496 |
495 case MESH_PEERING_MGT: |
497 case MESH_PEERING_MGT: |
496 switch (m_actionValue) |
498 switch (m_actionValue) |
497 { |
499 { |
498 case PEER_LINK_OPEN: |
500 case PEER_LINK_OPEN: |
499 retval.peerLink = PEER_LINK_OPEN; |
501 retval.peerLink = PEER_LINK_OPEN; |
500 return retval; |
502 break ; |
501 case PEER_LINK_CONFIRM: |
503 case PEER_LINK_CONFIRM: |
502 retval.peerLink = PEER_LINK_CONFIRM; |
504 retval.peerLink = PEER_LINK_CONFIRM; |
503 return retval; |
505 break ; |
504 case PEER_LINK_CLOSE: |
506 case PEER_LINK_CLOSE: |
505 retval.peerLink = PEER_LINK_CLOSE; |
507 retval.peerLink = PEER_LINK_CLOSE; |
506 return retval; |
508 break ; |
507 default: |
509 default: |
508 NS_FATAL_ERROR ("Unknown mesh peering management action code"); |
510 NS_FATAL_ERROR ("Unknown mesh peering management action code"); |
509 retval.peerLink = PEER_LINK_OPEN; /* quiet compiler */ |
511 retval.peerLink = PEER_LINK_OPEN; /* quiet compiler */ |
510 return retval; |
|
511 } |
512 } |
|
513 break ; |
|
514 |
512 case MESH_PATH_SELECTION: |
515 case MESH_PATH_SELECTION: |
513 switch (m_actionValue) |
516 switch (m_actionValue) |
514 { |
517 { |
515 case PATH_SELECTION: |
518 case PATH_SELECTION: |
516 retval.pathSelection = PATH_SELECTION; |
519 retval.pathSelection = PATH_SELECTION; |
517 return retval; |
520 break ; |
518 default: |
521 default: |
519 NS_FATAL_ERROR ("Unknown mesh path selection action code"); |
522 NS_FATAL_ERROR ("Unknown mesh path selection action code"); |
520 retval.peerLink = PEER_LINK_OPEN; /* quiet compiler */ |
523 retval.peerLink = PEER_LINK_OPEN; /* quiet compiler */ |
521 return retval; |
|
522 } |
524 } |
|
525 break ; |
|
526 |
523 case MESH_LINK_METRIC: |
527 case MESH_LINK_METRIC: |
524 // not yet supported |
528 // not yet supported |
525 case MESH_INTERWORKING: |
529 case MESH_INTERWORKING: |
526 // not yet supported |
530 // not yet supported |
527 case MESH_RESOURCE_COORDINATION: |
531 case MESH_RESOURCE_COORDINATION: |
528 // not yet supported |
532 // not yet supported |
529 default: |
533 default: |
530 NS_FATAL_ERROR ("Unsupported mesh action"); |
534 NS_FATAL_ERROR ("Unsupported mesh action"); |
531 retval.peerLink = PEER_LINK_OPEN; /* quiet compiler */ |
535 retval.peerLink = PEER_LINK_OPEN; /* quiet compiler */ |
532 return retval; |
|
533 } |
536 } |
|
537 return retval; |
534 } |
538 } |
535 TypeId |
539 TypeId |
536 WifiActionHeader::GetTypeId () |
540 WifiActionHeader::GetTypeId () |
537 { |
541 { |
538 static TypeId tid = TypeId ("ns3::WifiActionHeader") |
542 static TypeId tid = TypeId ("ns3::WifiActionHeader") |