[haiku-commits] r35387 - haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mpdu_coordination/services

  • From: coling@xxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Tue, 2 Feb 2010 09:58:36 +0100 (CET)

Author: colin
Date: 2010-02-02 09:58:36 +0100 (Tue, 02 Feb 2010)
New Revision: 35387
Changeset: http://dev.haiku-os.org/changeset/35387/haiku

Modified:
   
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mpdu_coordination/services/FragmentateService.cpp
   
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mpdu_coordination/services/FragmentateService.h
Log:
Definition of the fragmentation procedure.


Modified: 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mpdu_coordination/services/FragmentateService.cpp
===================================================================
--- 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mpdu_coordination/services/FragmentateService.cpp
        2010-02-01 22:03:11 UTC (rev 35386)
+++ 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mpdu_coordination/services/FragmentateService.cpp
        2010-02-02 08:58:36 UTC (rev 35387)
@@ -50,5 +50,35 @@
 status_t
 FragmentateService::_Run()
 {
+       Frame* frame = NULL;
+       status_t status = B_OK;
+
+       do {
+               status = fProcessQueue.Dequeue(&frame);
+               if (status != B_OK)
+                       break;
+
+               status = _FragmentAndHandOverFragments(frame);
+       } while (status == B_OK);
+
+       return status;
+}
+
+
+/* #pragma mark - private */
+
+
+/*!    If frame length is greater than dot11FragmentationThreshold divide the 
frame
+       in multiple frames of length dot11FragmentationThreshold.
+       Hand the frame/frames over to the next processing stage afterwards.
+
+       \param frame to be fragmented eventually and handed over afterwards.
+       \return B_OK The frame was successfully handed over to the next 
processing
+               stage.
+       \return Else The frame wasn't handed over, due to an unrecoverable 
error.
+ */
+status_t
+FragmentateService::_FragmentAndHandOverFragments(Frame* frame)
+{
        return B_OK;
 }

Modified: 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mpdu_coordination/services/FragmentateService.h
===================================================================
--- 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mpdu_coordination/services/FragmentateService.h
  2010-02-01 22:03:11 UTC (rev 35386)
+++ 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mpdu_coordination/services/FragmentateService.h
  2010-02-02 08:58:36 UTC (rev 35387)
@@ -26,6 +26,8 @@
 private:
        virtual status_t        _Run();
 
+                       status_t        _FragmentAndHandOverFragments(Frame*);
+
        Queue<Frame>            fProcessQueue;
 };
 


Other related posts:

  • » [haiku-commits] r35387 - haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mpdu_coordination/services - coling