[haiku-commits] r35243 - in haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack: mac_management station_management

  • From: coling@xxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Fri, 22 Jan 2010 21:54:34 +0100 (CET)

Author: colin
Date: 2010-01-22 21:54:33 +0100 (Fri, 22 Jan 2010)
New Revision: 35243
Changeset: http://dev.haiku-os.org/changeset/35243/haiku

Added:
   
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/AuthenticateRequest.cpp
   
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/AuthenticateRequest.h
Modified:
   
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/Jamfile
   
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/JoinRequest.cpp
   
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/JoinRequest.h
   
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/Requests.h
   
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/Roster.cpp
   
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/Roster.h
   
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/station_management/Roster.cpp
Log:
Prepare handling of authenticate requests.

Added: 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/AuthenticateRequest.cpp
===================================================================
--- 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/AuthenticateRequest.cpp
                           (rev 0)
+++ 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/AuthenticateRequest.cpp
   2010-01-22 20:54:33 UTC (rev 35243)
@@ -0,0 +1,33 @@
+/*
+ * Copyright 2010 Haiku Inc. All rights reserved.
+ * Distributed under the terms of the MIT License.
+ *
+ * Authors:
+ *             Colin Günther, coling@xxxxxx
+ */
+
+
+/*!    Contains the data for the authentication request.
+
+       \sa IEEE Standard 802.11-2007, section 10.3.4.1 
"MLME-AUTHENTICATE.request"
+ */
+
+#include <mac_management/AuthenticateRequest.h>
+#include <station_management/ConnectRequest.h>
+
+
+using namespace Ieee80211;
+
+
+/*!    Constructs a new object by using relevant data from the ConnectRequest.
+       
+       \param request ConnectRequest object, containing data needed for
+               proper authentication.
+       \return NULL not enough memory.
+       \return AuthenticateRequest otherwise.
+ */
+MacManagement::AuthenticateRequest::AuthenticateRequest(
+       StationManagement::ConnectRequest* request)
+{
+       return;
+}

Added: 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/AuthenticateRequest.h
===================================================================
--- 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/AuthenticateRequest.h
                             (rev 0)
+++ 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/AuthenticateRequest.h
     2010-01-22 20:54:33 UTC (rev 35243)
@@ -0,0 +1,27 @@
+/*
+ * Copyright 2010 Haiku Inc. All rights reserved.
+ * Distributed under the terms of the MIT License.
+ */
+#ifndef MAC_MANAGEMENT_AUTHENTICATION_REQUEST_H_
+#define MAC_MANAGEMENT_AUTHENTICATION_REQUEST_H_
+
+
+#include <mac_management/Request.h>
+#include <station_management/ConnectRequest.h>
+
+
+namespace Ieee80211 {
+
+namespace MacManagement {
+class AuthenticateRequest;
+}      /* namespace MacManagement */
+
+
+class MacManagement::AuthenticateRequest : public MacManagement::Request {
+public:
+               AuthenticateRequest(StationManagement::ConnectRequest*);
+};
+
+}      /* namespace Ieee80211 */
+
+#endif /* MAC_MANAGEMENT_AUTHENTICATION_REQUEST_H_ */

Modified: 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/Jamfile
===================================================================
--- 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/Jamfile
   2010-01-22 20:01:26 UTC (rev 35242)
+++ 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/Jamfile
   2010-01-22 20:54:33 UTC (rev 35243)
@@ -6,6 +6,8 @@
 KernelMergeObject mac_management.o :
        Roster.cpp
 
+       # Requests
        Request.cpp
+       AuthenticateRequest.cpp
        JoinRequest.cpp
        ;

Modified: 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/JoinRequest.cpp
===================================================================
--- 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/JoinRequest.cpp
   2010-01-22 20:01:26 UTC (rev 35242)
+++ 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/JoinRequest.cpp
   2010-01-22 20:54:33 UTC (rev 35243)
@@ -7,7 +7,7 @@
  */
 
 
-/*!    Contains the data for the join/synchronization request.
+/*!    Contains the data for the join (synchronization) request.
 
        \sa IEEE Standard 802.11-2007, section 10.3.3.1 "MLME-JOIN.request"
  */

Modified: 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/JoinRequest.h
===================================================================
--- 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/JoinRequest.h
     2010-01-22 20:01:26 UTC (rev 35242)
+++ 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/JoinRequest.h
     2010-01-22 20:54:33 UTC (rev 35243)
@@ -19,7 +19,7 @@
 
 class MacManagement::JoinRequest : public MacManagement::Request {
 public:
-                               JoinRequest(StationManagement::ConnectRequest*);
+               JoinRequest(StationManagement::ConnectRequest*);
 };
 
 }      /* namespace Ieee80211 */

Modified: 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/Requests.h
===================================================================
--- 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/Requests.h
        2010-01-22 20:01:26 UTC (rev 35242)
+++ 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/Requests.h
        2010-01-22 20:54:33 UTC (rev 35243)
@@ -6,6 +6,7 @@
 #define MAC_MANAGEMENT_REQUESTS_H_
 
 
+#include <mac_management/AuthenticateRequest.h>
 #include <mac_management/JoinRequest.h>
 
 #endif /* MAC_MANAGEMENT_REQUESTS_H_ */

Modified: 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/Roster.cpp
===================================================================
--- 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/Roster.cpp
        2010-01-22 20:01:26 UTC (rev 35242)
+++ 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/Roster.cpp
        2010-01-22 20:54:33 UTC (rev 35243)
@@ -13,6 +13,7 @@
        It is the central access point (roster) for managing all MAC related 
tasks,
        needed for operating the wireless connections properly.
 
+       \sa IEEE Standard 802.11-2007, section 10.3 "MLME SAP interface"
        \sa IEEE Standard 802.11-2007, section 11 "MLME"
  */
 
@@ -24,11 +25,26 @@
 using namespace MacManagement;
 
 
+/*!    Handling over a new authenticate request to the MAC Layer Management 
Entity
+       (MLME).
+       Successful completion of this method does only mean that the MLME will 
try
+       to fulfill the request, not that it was performed already.
+       Note: It is expected that the authenticate request contains all 
necessary
+       data, otherwise it will fail during processing later on .
+       
+ */
+status_t
+Roster::AddAuthenticateRequest(AuthenticateRequest *request)
+{
+       return B_OK;
+}
+
+
 /*!    Handling over a new join request to the MAC Layer Management Entity 
(MLME). 
        Successful completion of this method does only mean that the MLME will 
try
        to fulfill the request, not that it was performed already.
        Note: It is expected that the join request contains all necessary data,
-       otherwise the request will fail later on during processing, but not now.
+       otherwise it will fail during processing later on .
 
        \param request to be performed by the MLME.
        \return B_OK MLME will try to perform the request.

Modified: 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/Roster.h
===================================================================
--- 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/Roster.h
  2010-01-22 20:01:26 UTC (rev 35242)
+++ 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/mac_management/Roster.h
  2010-01-22 20:54:33 UTC (rev 35243)
@@ -14,6 +14,7 @@
 
 class Roster {
 public:
+       status_t        AddAuthenticateRequest(AuthenticateRequest*);
        status_t        AddJoinRequest(JoinRequest*);
 };
 

Modified: 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/station_management/Roster.cpp
===================================================================
--- 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/station_management/Roster.cpp
    2010-01-22 20:01:26 UTC (rev 35242)
+++ 
haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack/station_management/Roster.cpp
    2010-01-22 20:54:33 UTC (rev 35243)
@@ -54,11 +54,18 @@
        status = fMacRoster.AddJoinRequest(&joinRequest);
        if (status != B_OK)
                return status;
-
        status = joinRequest.WaitForConfirm();
        if (status != B_OK)
                return status;
 
+       MacManagement::AuthenticateRequest authenticationRequest(request);
+       status = fMacRoster.AddAuthenticateRequest(&authenticationRequest);
+       if (status != B_OK)
+               return status;
+       status = authenticationRequest.WaitForConfirm();
+       if (status != B_OK)
+               return status;
+
        return B_OK;
 }
 


Other related posts:

  • » [haiku-commits] r35243 - in haiku/branches/developer/colin/wireless/src/add-ons/kernel/network/devices/ieee80211/stack: mac_management station_management - coling