Update copyright notices to include the new year
[mech_eap.git] / wpa_supplicant / wpa_gui-qt4 / wpagui.cpp
index c3d24cf..97bf5ac 100644 (file)
@@ -1,6 +1,6 @@
 /*
  * wpa_gui - WpaGui class
- * Copyright (c) 2005-2008, Jouni Malinen <j@w1.fi>
+ * Copyright (c) 2005-2011, Jouni Malinen <j@w1.fi>
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License version 2 as
@@ -659,6 +659,13 @@ void WpaGui::updateNetworks()
                        break;
                *flags++ = '\0';
 
+               if (strstr(flags, "[DISABLED][P2P-PERSISTENT]")) {
+                       if (last)
+                               break;
+                       start = end + 1;
+                       continue;
+               }
+
                QString network(id);
                network.append(": ");
                network.append(ssid);
@@ -712,7 +719,7 @@ void WpaGui::helpContents()
 void WpaGui::helpAbout()
 {
        QMessageBox::about(this, "wpa_gui for wpa_supplicant",
-                          "Copyright (c) 2003-2008,\n"
+                          "Copyright (c) 2003-2011,\n"
                           "Jouni Malinen <j@w1.fi>\n"
                           "and contributors.\n"
                           "\n"
@@ -899,6 +906,15 @@ void WpaGui::processMsg(char *msg)
                if (textStatus->text() == "INACTIVE" ||
                    textStatus->text() == "DISCONNECTED")
                        wpaguiTab->setCurrentWidget(wpsTab);
+       } else if (str_match(pos, WPS_EVENT_AP_AVAILABLE_AUTH)) {
+               showTrayMessage(QSystemTrayIcon::Information, 3,
+                               "Wi-Fi Protected Setup (WPS) AP\n"
+                               "indicating this client is authorized.");
+               wpsStatusText->setText("WPS AP indicating this client is "
+                                      "authorized");
+               if (textStatus->text() == "INACTIVE" ||
+                   textStatus->text() == "DISCONNECTED")
+                       wpaguiTab->setCurrentWidget(wpsTab);
        } else if (str_match(pos, WPS_EVENT_AP_AVAILABLE)) {
                wpsStatusText->setText(tr("WPS AP detected"));
        } else if (str_match(pos, WPS_EVENT_OVERLAP)) {
@@ -971,17 +987,10 @@ void WpaGui::selectNetwork( const QString &sel )
        char reply[10];
        size_t reply_len = sizeof(reply);
 
-       if (cmd.compare(tr("Select any network"))) {
+       if (cmd.contains(QRegExp("^\\d+:")))
+               cmd.truncate(cmd.indexOf(':'));
+       else
                cmd = "any";
-       } else {
-               int pos = cmd.indexOf(':');
-               if (pos < 0) {
-                       printf("Invalid selectNetwork '%s'\n",
-                              cmd.toAscii().constData());
-                       return;
-               }
-               cmd.truncate(pos);
-       }
        cmd.prepend("SELECT_NETWORK ");
        ctrlRequest(cmd.toAscii().constData(), reply, &reply_len);
        triggerUpdate();
@@ -995,14 +1004,12 @@ void WpaGui::enableNetwork(const QString &sel)
        char reply[10];
        size_t reply_len = sizeof(reply);
 
-       if (!cmd.startsWith("all")) {
-               int pos = cmd.indexOf(':');
-               if (pos < 0) {
-                       printf("Invalid enableNetwork '%s'\n",
-                              cmd.toAscii().constData());
-                       return;
-               }
-               cmd.truncate(pos);
+       if (cmd.contains(QRegExp("^\\d+:")))
+               cmd.truncate(cmd.indexOf(':'));
+       else if (!cmd.startsWith("all")) {
+               printf("Invalid editNetwork '%s'\n",
+                      cmd.toAscii().constData());
+               return;
        }
        cmd.prepend("ENABLE_NETWORK ");
        ctrlRequest(cmd.toAscii().constData(), reply, &reply_len);
@@ -1016,14 +1023,12 @@ void WpaGui::disableNetwork(const QString &sel)
        char reply[10];
        size_t reply_len = sizeof(reply);
 
-       if (!cmd.startsWith("all")) {
-               int pos = cmd.indexOf(':');
-               if (pos < 0) {
-                       printf("Invalid disableNetwork '%s'\n",
-                              cmd.toAscii().constData());
-                       return;
-               }
-               cmd.truncate(pos);
+       if (cmd.contains(QRegExp("^\\d+:")))
+               cmd.truncate(cmd.indexOf(':'));
+       else if (!cmd.startsWith("all")) {
+               printf("Invalid editNetwork '%s'\n",
+                      cmd.toAscii().constData());
+               return;
        }
        cmd.prepend("DISABLE_NETWORK ");
        ctrlRequest(cmd.toAscii().constData(), reply, &reply_len);
@@ -1036,14 +1041,8 @@ void WpaGui::editNetwork(const QString &sel)
        QString cmd(sel);
        int id = -1;
 
-       if (!cmd.compare(tr("Select any network"))) {
-               int pos = sel.indexOf(':');
-               if (pos < 0) {
-                       printf("Invalid editNetwork '%s'\n",
-                              cmd.toAscii().constData());
-                       return;
-               }
-               cmd.truncate(pos);
+       if (cmd.contains(QRegExp("^\\d+:"))) {
+               cmd.truncate(cmd.indexOf(':'));
                id = cmd.toInt();
        }
 
@@ -1114,17 +1113,12 @@ void WpaGui::removeNetwork(const QString &sel)
        char reply[10];
        size_t reply_len = sizeof(reply);
 
-       if (cmd.compare(tr("Select any network")))
+       if (cmd.contains(QRegExp("^\\d+:")))
+               cmd.truncate(cmd.indexOf(':'));
+       else if (!cmd.startsWith("all")) {
+               printf("Invalid editNetwork '%s'\n",
+                      cmd.toAscii().constData());
                return;
-
-       if (!cmd.startsWith("all")) {
-               int pos = cmd.indexOf(':');
-               if (pos < 0) {
-                       printf("Invalid removeNetwork '%s'\n",
-                              cmd.toAscii().constData());
-                       return;
-               }
-               cmd.truncate(pos);
        }
        cmd.prepend("REMOVE_NETWORK ");
        ctrlRequest(cmd.toAscii().constData(), reply, &reply_len);
@@ -1705,13 +1699,13 @@ bool WpaGui::serviceRunning()
 
        scm = OpenSCManager(0, 0, SC_MANAGER_CONNECT);
        if (!scm) {
-               printf(tr("OpenSCManager failed: %d\n"), (int) GetLastError());
+               printf("OpenSCManager failed: %d\n", (int) GetLastError());
                return false;
        }
 
        svc = OpenService(scm, WPASVC_NAME, SERVICE_QUERY_STATUS);
        if (!svc) {
-               printf(tr("OpenService failed: %d\n\n"), (int) GetLastError());
+               printf("OpenService failed: %d\n\n", (int) GetLastError());
                CloseServiceHandle(scm);
                return false;
        }