Ticket #8850: haiku-wapenter.diff

File haiku-wapenter.diff, 2.5 KB (added by kallisti5, 11 years ago)

net server changes v1

  • src/servers/net/NetServer.cpp

    diff --git a/src/servers/net/NetServer.cpp b/src/servers/net/NetServer.cpp
    index e97f316..ea83d84 100644
    a b NetServer::_JoinNetwork(const BMessage& message, const char* name)  
    10711071        }
    10721072    }
    10731073
     1074    const char* username;
     1075    if (message.FindString("username", &username) != B_OK && found)
     1076        username = networkMessage.FindString("username");
     1077
    10741078    const char* password;
    10751079    if (message.FindString("password", &password) != B_OK && found)
    10761080        password = networkMessage.FindString("password");
    NetServer::_JoinNetwork(const BMessage& message, const char* name)  
    11031107            network.authentication_mode = B_NETWORK_AUTHENTICATION_WPA2;
    11041108            network.key_mode = B_KEY_MODE_IEEE802_1X;
    11051109            network.cipher = network.group_cipher = B_NETWORK_CIPHER_CCMP;
     1110        } else if (!strcasecmp(string, "wpa2-eap")) {
     1111            network.authentication_mode = B_NETWORK_AUTHENTICATION_EAP;
     1112            network.key_mode = B_KEY_MODE_IEEE802_1X;
     1113            network.cipher = network.group_cipher = B_NETWORK_CIPHER_CCMP;
    11061114        } else if (!strcasecmp(string, "wpa")) {
    11071115            network.authentication_mode = B_NETWORK_AUTHENTICATION_WPA;
    11081116            network.key_mode = B_KEY_MODE_IEEE802_1X;
    NetServer::_JoinNetwork(const BMessage& message, const char* name)  
    11561164        status = join.AddFlat("address", &network.address);
    11571165    if (status == B_OK && !askForConfig)
    11581166        status = join.AddUInt32("authentication", network.authentication_mode);
     1167    if (status == B_OK
     1168        && network.authentication_mode == B_NETWORK_AUTHENTICATION_EAP) {
     1169        if (username != NULL)
     1170            status = join.AddString("username", username);
     1171    }
    11591172    if (status == B_OK && password != NULL)
    11601173        status = join.AddString("password", password);
    11611174    if (status != B_OK)
    NetServer::_ConvertNetworkToSettings(BMessage& message)  
    12671280            case B_NETWORK_AUTHENTICATION_WPA2:
    12681281                authenticationString = "wpa2";
    12691282                break;
     1283            case B_NETWORK_AUTHENTICATION_EAP:
     1284                authenticationString = "wpa2-eap";
     1285                break;
    12701286        }
    12711287
    12721288        if (result == B_OK && authenticationString != NULL)
  • src/servers/net/Settings.cpp

    diff --git a/src/servers/net/Settings.cpp b/src/servers/net/Settings.cpp
    index a52c2b1..a9beb03 100644
    a b const static settings_template kInterfacesTemplate[] = {  
    6363const static settings_template kNetworkTemplate[] = {
    6464    {B_STRING_TYPE, "name", NULL, true},
    6565    {B_STRING_TYPE, "mac", NULL},
     66    {B_STRING_TYPE, "username", NULL},
    6667    {B_STRING_TYPE, "password", NULL},
    6768    {B_STRING_TYPE, "authentication", NULL},
    6869    {B_STRING_TYPE, "cipher", NULL},