commit:     adcb1914cfa56d4d0490cbbce0fadb8c5172c447
Author:     orbea <orbea <AT> riseup <DOT> net>
AuthorDate: Wed Feb 26 02:00:44 2025 +0000
Commit:     orbea <orbea <AT> riseup <DOT> net>
CommitDate: Wed Feb 26 02:01:54 2025 +0000
URL:        https://gitweb.gentoo.org/repo/proj/libressl.git/commit/?id=adcb1914

net-wireless/wpa_supplicant: add/drop versions

Signed-off-by: orbea <orbea <AT> riseup.net>

 net-wireless/wpa_supplicant/Manifest               |   1 +
 .../files/wpa_supplicant-2.10-use-qt6.patch        | 311 +++++++++++++++++++++
 ...-authorization-completed-on-driver-indica.patch |  53 ++++
 .../files/wpa_supplicant-2.11-libressl.patch       |  24 ++
 ....10-r5.ebuild => wpa_supplicant-2.10-r6.ebuild} |  23 +-
 ....10-r5.ebuild => wpa_supplicant-2.11-r1.ebuild} |  63 ++---
 ...t-2.10-r5.ebuild => wpa_supplicant-2.11.ebuild} |  31 +-
 7 files changed, 434 insertions(+), 72 deletions(-)

diff --git a/net-wireless/wpa_supplicant/Manifest 
b/net-wireless/wpa_supplicant/Manifest
index 0e445ba..eb1993d 100644
--- a/net-wireless/wpa_supplicant/Manifest
+++ b/net-wireless/wpa_supplicant/Manifest
@@ -1 +1,2 @@
 DIST wpa_supplicant-2.10.tar.gz 3511622 BLAKE2B 
7f6045e5dcf24f7ccf1ea75c99541f9d68fadaea858a6ca11a95c997de14e33b3aa89138e748664579b5a4ea493d247cf6613da3c5fae49a4dbb5cd58dace752
 SHA512 
021c2a48f45d39c1dc6557730be5debaee071bc0ff82a271638beee6e32314e353e49d39e2f0dc8dff6e094dcc7008cfe1c32d0c7a34a1a345a12a3f1c1e11a1
+DIST wpa_supplicant-2.11.tar.gz 3841433 BLAKE2B 
71bd0d11cd31eb5bc6beb51caf0f1399856ea188f316d2330053a2d8c81869057811e9f500828e8981eabd0af38f30a18a3ae584d744005c78681c82fa910abf
 SHA512 
9a0a3a9d6fa2235903c40aa57b5955f0c9dd1dccfd0e3825a3b6f92b3e32db8d464b3ea0aef3285ba3ee109e7b190560cedd744902e954f0003cdba543e277b2

diff --git 
a/net-wireless/wpa_supplicant/files/wpa_supplicant-2.10-use-qt6.patch 
b/net-wireless/wpa_supplicant/files/wpa_supplicant-2.10-use-qt6.patch
new file mode 100644
index 0000000..2dd2b75
--- /dev/null
+++ b/net-wireless/wpa_supplicant/files/wpa_supplicant-2.10-use-qt6.patch
@@ -0,0 +1,311 @@
+From 0ead8bb4889977af735f4d0b578497830ee6d6f7 Mon Sep 17 00:00:00 2001
+From: "Jason A. Donenfeld" <ja...@zx2c4.com>
+Date: Fri, 10 Jan 2025 03:43:23 +0100
+Subject: [PATCH] wpa_gui: Port to Qt6
+
+This appears to be working. Fairly straight forward. Lightly tested.
+Distros are getting ready to remove Qt5, so this is somewhat important
+to do.
+
+Signed-off-by: Jason A. Donenfeld <ja...@zx2c4.com>
+---
+ wpa_supplicant/wpa_gui-qt4/eventhistory.h    |  2 +-
+ wpa_supplicant/wpa_gui-qt4/main.cpp          |  8 ++++----
+ wpa_supplicant/wpa_gui-qt4/networkconfig.cpp |  8 ++++----
+ wpa_supplicant/wpa_gui-qt4/networkconfig.h   |  2 +-
+ wpa_supplicant/wpa_gui-qt4/peers.cpp         | 10 +++++-----
+ wpa_supplicant/wpa_gui-qt4/peers.h           |  2 +-
+ wpa_supplicant/wpa_gui-qt4/scanresults.cpp   |  2 +-
+ wpa_supplicant/wpa_gui-qt4/scanresults.h     |  2 +-
+ wpa_supplicant/wpa_gui-qt4/userdatarequest.h |  2 +-
+ wpa_supplicant/wpa_gui-qt4/wpagui.cpp        | 16 ++++++++--------
+ wpa_supplicant/wpa_gui-qt4/wpagui.h          |  2 +-
+ wpa_supplicant/wpa_gui-qt4/wpamsg.h          |  4 ++--
+ 12 files changed, 30 insertions(+), 30 deletions(-)
+
+diff --git a/wpa_supplicant/wpa_gui-qt4/eventhistory.h 
b/wpa_supplicant/wpa_gui-qt4/eventhistory.h
+index afd7b6346..2122ab45a 100644
+--- a/wpa_supplicant/wpa_gui-qt4/eventhistory.h
++++ b/wpa_supplicant/wpa_gui-qt4/eventhistory.h
+@@ -40,7 +40,7 @@ class EventHistory : public QDialog, public Ui::EventHistory
+ 
+ public:
+       EventHistory(QWidget *parent = 0, const char *name = 0,
+-                   bool modal = false, Qt::WindowFlags fl = 0);
++                   bool modal = false, Qt::WindowFlags fl = Qt::Widget);
+       ~EventHistory();
+ 
+ public slots:
+diff --git a/wpa_supplicant/wpa_gui-qt4/main.cpp 
b/wpa_supplicant/wpa_gui-qt4/main.cpp
+index bbd45c6e1..d395aa135 100644
+--- a/wpa_supplicant/wpa_gui-qt4/main.cpp
++++ b/wpa_supplicant/wpa_gui-qt4/main.cpp
+@@ -40,10 +40,10 @@ int main(int argc, char *argv[])
+       int ret;
+ 
+       locale = QLocale::system().name();
+-      resourceDir = QLibraryInfo::location(QLibraryInfo::TranslationsPath);
+-      if (!translator.load("wpa_gui_" + locale, resourceDir))
+-              translator.load("wpa_gui_" + locale, "lang");
+-      app.installTranslator(&translator);
++      resourceDir = QLibraryInfo::path(QLibraryInfo::TranslationsPath);
++      if (translator.load("wpa_gui_" + locale, resourceDir) ||
++          translator.load("wpa_gui_" + locale, "lang"))
++              app.installTranslator(&translator);
+ 
+       WpaGui w(&app);
+ 
+diff --git a/wpa_supplicant/wpa_gui-qt4/networkconfig.cpp 
b/wpa_supplicant/wpa_gui-qt4/networkconfig.cpp
+index 2727318bc..59af84504 100644
+--- a/wpa_supplicant/wpa_gui-qt4/networkconfig.cpp
++++ b/wpa_supplicant/wpa_gui-qt4/networkconfig.cpp
+@@ -37,7 +37,7 @@ NetworkConfig::NetworkConfig(QWidget *parent, const char *, 
bool,
+               SLOT(authChanged(int)));
+       connect(cancelButton, SIGNAL(clicked()), this, SLOT(close()));
+       connect(addButton, SIGNAL(clicked()), this, SLOT(addNetwork()));
+-      connect(encrSelect, SIGNAL(activated(const QString &)), this,
++      connect(encrSelect, SIGNAL(textActivated(const QString &)), this,
+               SLOT(encrChanged(const QString &)));
+       connect(removeButton, SIGNAL(clicked()), this, SLOT(removeNetwork()));
+       connect(eapSelect, SIGNAL(activated(int)), this,
+@@ -204,8 +204,8 @@ void NetworkConfig::addNetwork()
+       }
+ 
+       if (idstrEdit->isEnabled() && !idstrEdit->text().isEmpty()) {
+-              QRegExp rx("^(\\w|-)+$");
+-              if (rx.indexIn(idstrEdit->text()) < 0) {
++              QRegularExpression rx("^(\\w|-)+$");
++              if (!rx.match(idstrEdit->text()).hasMatch()) {
+                       QMessageBox::warning(
+                               this, tr("Network ID Error"),
+                               tr("Network ID String contains non-word "
+@@ -797,7 +797,7 @@ void NetworkConfig::removeNetwork()
+                   tr("This will permanently remove the network\n"
+                      "from the configuration. Do you really want\n"
+                      "to remove this network?"),
+-                  tr("Yes"), tr("No")) != 0)
++                  QMessageBox::Yes, QMessageBox::No) != 0)
+               return;
+ 
+       snprintf(cmd, sizeof(cmd), "REMOVE_NETWORK %d", edit_network_id);
+diff --git a/wpa_supplicant/wpa_gui-qt4/networkconfig.h 
b/wpa_supplicant/wpa_gui-qt4/networkconfig.h
+index fd09dec54..a3a7d9792 100644
+--- a/wpa_supplicant/wpa_gui-qt4/networkconfig.h
++++ b/wpa_supplicant/wpa_gui-qt4/networkconfig.h
+@@ -20,7 +20,7 @@ class NetworkConfig : public QDialog, public 
Ui::NetworkConfig
+ 
+ public:
+       NetworkConfig(QWidget *parent = 0, const char *name = 0,
+-                    bool modal = false, Qt::WindowFlags fl = 0);
++                    bool modal = false, Qt::WindowFlags fl = Qt::Widget);
+       ~NetworkConfig();
+ 
+       virtual void paramsFromScanResults(QTreeWidgetItem *sel);
+diff --git a/wpa_supplicant/wpa_gui-qt4/peers.cpp 
b/wpa_supplicant/wpa_gui-qt4/peers.cpp
+index 0a0b3ffcb..268aba8b3 100644
+--- a/wpa_supplicant/wpa_gui-qt4/peers.cpp
++++ b/wpa_supplicant/wpa_gui-qt4/peers.cpp
+@@ -403,7 +403,7 @@ void Peers::ctx_p2p_start_group()
+ 
+ void Peers::add_station(QString info)
+ {
+-      QStringList lines = info.split(QRegExp("\\n"));
++      QStringList lines = info.split(QRegularExpression("\\n"));
+       QString name;
+ 
+       for (QStringList::Iterator it = lines.begin();
+@@ -518,7 +518,7 @@ void Peers::add_p2p_group_client(QStandardItem * 
/*parent*/, QString params)
+        */
+ 
+       QStringList items =
+-              params.split(QRegExp(" (?=[^']*('[^']*'[^']*)*$)"));
++              params.split(QRegularExpression(" (?=[^']*('[^']*'[^']*)*$)"));
+       QString addr = "";
+       QString name = "";
+       int config_methods = 0;
+@@ -591,7 +591,7 @@ bool Peers::add_bss(const char *cmd)
+       QString ssid, bssid, flags, wps_name, pri_dev_type;
+       int id = -1;
+ 
+-      QStringList lines = bss.split(QRegExp("\\n"));
++      QStringList lines = bss.split(QRegularExpression("\\n"));
+       for (QStringList::Iterator it = lines.begin();
+            it != lines.end(); it++) {
+               int pos = (*it).indexOf('=') + 1;
+@@ -643,7 +643,7 @@ bool Peers::add_bss(const char *cmd)
+                       item->setData(ssid, peer_role_ssid);
+               model.appendRow(item);
+ 
+-              lines = bss.split(QRegExp("\\n"));
++              lines = bss.split(QRegularExpression("\\n"));
+               for (QStringList::Iterator it = lines.begin();
+                    it != lines.end(); it++) {
+                       if ((*it).startsWith("p2p_group_client:"))
+@@ -903,7 +903,7 @@ void Peers::event_notify(WpaMsg msg)
+                * group_capab=0x0
+                */
+               QStringList items =
+-                      text.split(QRegExp(" (?=[^']*('[^']*'[^']*)*$)"));
++                      text.split(QRegularExpression(" 
(?=[^']*('[^']*'[^']*)*$)"));
+               QString addr = items[1];
+               QString name = "";
+               QString pri_dev_type;
+diff --git a/wpa_supplicant/wpa_gui-qt4/peers.h 
b/wpa_supplicant/wpa_gui-qt4/peers.h
+index bb7373749..c44bba99a 100644
+--- a/wpa_supplicant/wpa_gui-qt4/peers.h
++++ b/wpa_supplicant/wpa_gui-qt4/peers.h
+@@ -22,7 +22,7 @@ class Peers : public QDialog, public Ui::Peers
+ 
+ public:
+       Peers(QWidget *parent = 0, const char *name = 0,
+-                  bool modal = false, Qt::WindowFlags fl = 0);
++                  bool modal = false, Qt::WindowFlags fl = Qt::Widget);
+       ~Peers();
+       void setWpaGui(WpaGui *_wpagui);
+       void event_notify(WpaMsg msg);
+diff --git a/wpa_supplicant/wpa_gui-qt4/scanresults.cpp 
b/wpa_supplicant/wpa_gui-qt4/scanresults.cpp
+index a2e3072fb..ba04b4f38 100644
+--- a/wpa_supplicant/wpa_gui-qt4/scanresults.cpp
++++ b/wpa_supplicant/wpa_gui-qt4/scanresults.cpp
+@@ -77,7 +77,7 @@ void ScanResults::updateResults()
+ 
+               QString ssid, bssid, freq, signal, flags;
+ 
+-              QStringList lines = bss.split(QRegExp("\\n"));
++              QStringList lines = bss.split(QRegularExpression("\\n"));
+               for (QStringList::Iterator it = lines.begin();
+                    it != lines.end(); it++) {
+                       int pos = (*it).indexOf('=') + 1;
+diff --git a/wpa_supplicant/wpa_gui-qt4/scanresults.h 
b/wpa_supplicant/wpa_gui-qt4/scanresults.h
+index 2cddd133f..39bba90ce 100644
+--- a/wpa_supplicant/wpa_gui-qt4/scanresults.h
++++ b/wpa_supplicant/wpa_gui-qt4/scanresults.h
+@@ -20,7 +20,7 @@ class ScanResults : public QDialog, public Ui::ScanResults
+ 
+ public:
+       ScanResults(QWidget *parent = 0, const char *name = 0,
+-                  bool modal = false, Qt::WindowFlags fl = 0);
++                  bool modal = false, Qt::WindowFlags fl = Qt::Widget);
+       ~ScanResults();
+ 
+ public slots:
+diff --git a/wpa_supplicant/wpa_gui-qt4/userdatarequest.h 
b/wpa_supplicant/wpa_gui-qt4/userdatarequest.h
+index b6d1ad2f4..3f7dccb28 100644
+--- a/wpa_supplicant/wpa_gui-qt4/userdatarequest.h
++++ b/wpa_supplicant/wpa_gui-qt4/userdatarequest.h
+@@ -20,7 +20,7 @@ class UserDataRequest : public QDialog, public 
Ui::UserDataRequest
+ 
+ public:
+       UserDataRequest(QWidget *parent = 0, const char *name = 0,
+-                      bool modal = false, Qt::WindowFlags fl = 0);
++                      bool modal = false, Qt::WindowFlags fl = Qt::Widget);
+       ~UserDataRequest();
+ 
+       int setParams(WpaGui *_wpagui, const char *reqMsg);
+diff --git a/wpa_supplicant/wpa_gui-qt4/wpagui.cpp 
b/wpa_supplicant/wpa_gui-qt4/wpagui.cpp
+index 9404ab424..0c125d90f 100644
+--- a/wpa_supplicant/wpa_gui-qt4/wpagui.cpp
++++ b/wpa_supplicant/wpa_gui-qt4/wpagui.cpp
+@@ -99,9 +99,9 @@ WpaGui::WpaGui(QApplication *_app, QWidget *parent, const 
char *,
+       connect(disconnectButton, SIGNAL(clicked()), this, SLOT(disconnect()));
+       connect(scanButton, SIGNAL(clicked()), this, SLOT(scan()));
+       connect(connectButton, SIGNAL(clicked()), this, SLOT(connectB()));
+-      connect(adapterSelect, SIGNAL(activated(const QString&)), this,
++      connect(adapterSelect, SIGNAL(textActivated(const QString&)), this,
+               SLOT(selectAdapter(const QString&)));
+-      connect(networkSelect, SIGNAL(activated(const QString&)), this,
++      connect(networkSelect, SIGNAL(textActivated(const QString&)), this,
+               SLOT(selectNetwork(const QString&)));
+       connect(addNetworkButton, SIGNAL(clicked()), this, SLOT(addNetwork()));
+       connect(editNetworkButton, SIGNAL(clicked()), this,
+@@ -1078,7 +1078,7 @@ void WpaGui::selectNetwork( const QString &sel )
+       char reply[10];
+       size_t reply_len = sizeof(reply);
+ 
+-      if (cmd.contains(QRegExp("^\\d+:")))
++      if (cmd.contains(QRegularExpression("^\\d+:")))
+               cmd.truncate(cmd.indexOf(':'));
+       else
+               cmd = "any";
+@@ -1095,7 +1095,7 @@ void WpaGui::enableNetwork(const QString &sel)
+       char reply[10];
+       size_t reply_len = sizeof(reply);
+ 
+-      if (cmd.contains(QRegExp("^\\d+:")))
++      if (cmd.contains(QRegularExpression("^\\d+:")))
+               cmd.truncate(cmd.indexOf(':'));
+       else if (!cmd.startsWith("all")) {
+               debug("Invalid editNetwork '%s'",
+@@ -1114,7 +1114,7 @@ void WpaGui::disableNetwork(const QString &sel)
+       char reply[10];
+       size_t reply_len = sizeof(reply);
+ 
+-      if (cmd.contains(QRegExp("^\\d+:")))
++      if (cmd.contains(QRegularExpression("^\\d+:")))
+               cmd.truncate(cmd.indexOf(':'));
+       else if (!cmd.startsWith("all")) {
+               debug("Invalid editNetwork '%s'",
+@@ -1132,7 +1132,7 @@ void WpaGui::editNetwork(const QString &sel)
+       QString cmd(sel);
+       int id = -1;
+ 
+-      if (cmd.contains(QRegExp("^\\d+:"))) {
++      if (cmd.contains(QRegularExpression("^\\d+:"))) {
+               cmd.truncate(cmd.indexOf(':'));
+               id = cmd.toInt();
+       }
+@@ -1204,7 +1204,7 @@ void WpaGui::removeNetwork(const QString &sel)
+       char reply[10];
+       size_t reply_len = sizeof(reply);
+ 
+-      if (cmd.contains(QRegExp("^\\d+:")))
++      if (cmd.contains(QRegularExpression("^\\d+:")))
+               cmd.truncate(cmd.indexOf(':'));
+       else if (!cmd.startsWith("all")) {
+               debug("Invalid editNetwork '%s'",
+@@ -1476,7 +1476,7 @@ void WpaGui::showTrayStatus()
+ 
+       QString msg, status(buf);
+ 
+-      QStringList lines = status.split(QRegExp("\\n"));
++      QStringList lines = status.split(QRegularExpression("\\n"));
+       for (QStringList::Iterator it = lines.begin();
+            it != lines.end(); it++) {
+               int pos = (*it).indexOf('=') + 1;
+diff --git a/wpa_supplicant/wpa_gui-qt4/wpagui.h 
b/wpa_supplicant/wpa_gui-qt4/wpagui.h
+index f0a34c97e..898722bd9 100644
+--- a/wpa_supplicant/wpa_gui-qt4/wpagui.h
++++ b/wpa_supplicant/wpa_gui-qt4/wpagui.h
+@@ -49,7 +49,7 @@ public:
+       };
+ 
+       WpaGui(QApplication *app, QWidget *parent = 0, const char *name = 0,
+-             Qt::WindowFlags fl = 0);
++             Qt::WindowFlags fl = Qt::Widget);
+       ~WpaGui();
+ 
+       virtual int ctrlRequest(const char *cmd, char *buf, size_t *buflen);
+diff --git a/wpa_supplicant/wpa_gui-qt4/wpamsg.h 
b/wpa_supplicant/wpa_gui-qt4/wpamsg.h
+index 8f2fcdc41..fe36e2044 100644
+--- a/wpa_supplicant/wpa_gui-qt4/wpamsg.h
++++ b/wpa_supplicant/wpa_gui-qt4/wpamsg.h
+@@ -10,7 +10,7 @@
+ #define WPAMSG_H
+ 
+ #include <QDateTime>
+-#include <QLinkedList>
++#include <QList>
+ 
+ class WpaMsg {
+ public:
+@@ -30,6 +30,6 @@ private:
+       QDateTime timestamp;
+ };
+ 
+-typedef QLinkedList<WpaMsg> WpaMsgList;
++typedef QList<WpaMsg> WpaMsgList;
+ 
+ #endif /* WPAMSG_H */
+-- 
+2.48.0
+

diff --git 
a/net-wireless/wpa_supplicant/files/wpa_supplicant-2.11-Revert-Mark-authorization-completed-on-driver-indica.patch
 
b/net-wireless/wpa_supplicant/files/wpa_supplicant-2.11-Revert-Mark-authorization-completed-on-driver-indica.patch
new file mode 100644
index 0000000..6d28eea
--- /dev/null
+++ 
b/net-wireless/wpa_supplicant/files/wpa_supplicant-2.11-Revert-Mark-authorization-completed-on-driver-indica.patch
@@ -0,0 +1,53 @@
+Bug: https://bugs.gentoo.org/937452
+Bug: https://bugzilla.redhat.com/show_bug.cgi?id=2302577
+
+From 071336247683d82a74f3567abf67a0b37db856ae Mon Sep 17 00:00:00 2001
+From: Christopher Byrne <salah.coro...@gmail.com>
+Date: Fri, 21 Feb 2025 18:58:19 -0600
+Subject: [PATCH] Revert "Mark authorization completed on driver indication
+ during 4-way HS offload"
+
+This reverts commit 41638606054a09867fe3f9a2b5523aa4678cbfa5.
+---
+ wpa_supplicant/events.c | 25 ++++++++-----------------
+ 1 file changed, 8 insertions(+), 17 deletions(-)
+
+diff --git a/wpa_supplicant/events.c b/wpa_supplicant/events.c
+index 49917f7aa..bbb3a3eda 100644
+--- a/wpa_supplicant/events.c
++++ b/wpa_supplicant/events.c
+@@ -4327,23 +4327,14 @@ static void wpa_supplicant_event_assoc(struct 
wpa_supplicant *wpa_s,
+               eapol_sm_notify_eap_success(wpa_s->eapol, true);
+       } else if ((wpa_s->drv_flags & WPA_DRIVER_FLAGS_4WAY_HANDSHAKE_PSK) &&
+                  wpa_key_mgmt_wpa_psk(wpa_s->key_mgmt)) {
+-              if (already_authorized) {
+-                      /*
+-                       * We are done; the driver will take care of RSN 4-way
+-                       * handshake.
+-                       */
+-                      wpa_supplicant_cancel_auth_timeout(wpa_s);
+-                      wpa_supplicant_set_state(wpa_s, WPA_COMPLETED);
+-                      eapol_sm_notify_portValid(wpa_s->eapol, true);
+-                      eapol_sm_notify_eap_success(wpa_s->eapol, true);
+-              } else {
+-                      /* Update port, WPA_COMPLETED state from the
+-                       * EVENT_PORT_AUTHORIZED handler when the driver is done
+-                       * with the 4-way handshake.
+-                       */
+-                      wpa_msg(wpa_s, MSG_DEBUG,
+-                              "ASSOC INFO: wait for driver port authorized 
indication");
+-              }
++              /*
++               * We are done; the driver will take care of RSN 4-way
++               * handshake.
++               */
++              wpa_supplicant_cancel_auth_timeout(wpa_s);
++              wpa_supplicant_set_state(wpa_s, WPA_COMPLETED);
++              eapol_sm_notify_portValid(wpa_s->eapol, true);
++              eapol_sm_notify_eap_success(wpa_s->eapol, true);
+       } else if ((wpa_s->drv_flags & WPA_DRIVER_FLAGS_4WAY_HANDSHAKE_8021X) &&
+                  wpa_key_mgmt_wpa_ieee8021x(wpa_s->key_mgmt)) {
+               /*
+-- 
+2.45.3
+

diff --git 
a/net-wireless/wpa_supplicant/files/wpa_supplicant-2.11-libressl.patch 
b/net-wireless/wpa_supplicant/files/wpa_supplicant-2.11-libressl.patch
new file mode 100644
index 0000000..450946c
--- /dev/null
+++ b/net-wireless/wpa_supplicant/files/wpa_supplicant-2.11-libressl.patch
@@ -0,0 +1,24 @@
+--- a/src/crypto/tls_openssl.c
++++ b/src/crypto/tls_openssl.c
+@@ -3203,6 +3203,7 @@ static int tls_set_conn_flags(struct tls_connection 
*conn, unsigned int flags,
+       /* Start with defaults from BoringSSL */
+       SSL_CTX_set_verify_algorithm_prefs(conn->ssl_ctx, NULL, 0);
+ #endif /* OPENSSL_IS_BORINGSSL */
++#ifndef LIBRESSL_VERSION_NUMBER
+       if (flags & TLS_CONN_SUITEB_NO_ECDH) {
+               const char *ciphers = "DHE-RSA-AES256-GCM-SHA384";
+ 
+@@ -3298,6 +3299,13 @@ static int tls_set_conn_flags(struct tls_connection 
*conn, unsigned int flags,
+               SSL_set_options(ssl, SSL_OP_NO_TLSv1_1);
+               SSL_set_cert_cb(ssl, suiteb_cert_cb, conn);
+       }
++#else /* LIBRESSL_VERSION_NUMBER */
++      if (flags & (TLS_CONN_SUITEB | TLS_CONN_SUITEB_NO_ECDH)) {
++              wpa_printf(MSG_ERROR,
++                      "OpenSSL: Suite B RSA case not supported with this 
OpenSSL version");
++              return -1;
++      }
++#endif /* LIBRESSL_VERSION_NUMBER */
+ 
+ #ifdef OPENSSL_IS_BORINGSSL
+       if (openssl_ciphers && os_strcmp(openssl_ciphers, "SUITEB192") == 0) {

diff --git a/net-wireless/wpa_supplicant/wpa_supplicant-2.10-r5.ebuild 
b/net-wireless/wpa_supplicant/wpa_supplicant-2.10-r6.ebuild
similarity index 97%
copy from net-wireless/wpa_supplicant/wpa_supplicant-2.10-r5.ebuild
copy to net-wireless/wpa_supplicant/wpa_supplicant-2.10-r6.ebuild
index 88e469c..907f381 100644
--- a/net-wireless/wpa_supplicant/wpa_supplicant-2.10-r5.ebuild
+++ b/net-wireless/wpa_supplicant/wpa_supplicant-2.10-r6.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
@@ -18,7 +18,7 @@ else
 fi
 
 SLOT="0"
-IUSE="ap broadcom-sta dbus eap-sim eapol-test fasteap +fils +hs2-0 macsec +mbo 
+mesh p2p privsep ps3 qt5 readline selinux smartcard tdls tkip 
uncommon-eap-types wep wimax wps"
+IUSE="ap broadcom-sta dbus eap-sim eapol-test fasteap +fils +hs2-0 macsec +mbo 
+mesh p2p privsep ps3 qt6 readline selinux smartcard tdls tkip 
uncommon-eap-types wep wimax wps"
 
 # CONFIG_PRIVSEP=y does not have sufficient support for the new driver
 # interface functions used for MACsec, so this combination cannot be used
@@ -37,11 +37,9 @@ DEPEND="
                eap-sim? ( sys-apps/pcsc-lite )
        )
        !kernel_linux? ( net-libs/libpcap )
-       qt5? (
-               dev-qt/qtcore:5
-               dev-qt/qtgui:5
-               dev-qt/qtsvg:5
-               dev-qt/qtwidgets:5
+       qt6? (
+               dev-qt/qtbase:6[gui,widgets]
+               dev-qt/qtsvg:6
        )
        readline? (
                sys-libs/ncurses:0=
@@ -126,6 +124,9 @@ src_prepare() {
        eapply "${FILESDIR}/${PN}-2.10-allow-legacy-renegotiation.patch"
        eapply 
"${FILESDIR}/${PN}-2.10-Drop-security-level-to-0-with-OpenSSL-3.0-wh.patch"
 
+       # bug (948052)
+       eapply "${FILESDIR}/${PN}-2.10-use-qt6.patch"
+
        # bug (640492)
        sed -i 's#-Werror ##' wpa_supplicant/Makefile || die
 
@@ -361,9 +362,9 @@ src_configure() {
                Kconfig_style_config LIBNL32
        fi
 
-       if use qt5 ; then
+       if use qt6 ; then
                pushd "${S}"/wpa_gui-qt4 > /dev/null || die
-               eqmake5 wpa_gui.pro
+               eqmake6 wpa_gui.pro
                popd > /dev/null || die
        fi
 }
@@ -377,7 +378,7 @@ src_compile() {
                emake -C ../src/eap_peer
        fi
 
-       if use qt5; then
+       if use qt6; then
                einfo "Building wpa_gui"
                emake -C "${S}"/wpa_gui-qt4
        fi
@@ -408,7 +409,7 @@ src_install() {
                doman doc/docbook/*.{5,8}
        fi
 
-       if use qt5 ; then
+       if use qt6 ; then
                into /usr
                dobin wpa_gui-qt4/wpa_gui
                doicon wpa_gui-qt4/icons/wpa_gui.svg

diff --git a/net-wireless/wpa_supplicant/wpa_supplicant-2.10-r5.ebuild 
b/net-wireless/wpa_supplicant/wpa_supplicant-2.11-r1.ebuild
similarity index 89%
copy from net-wireless/wpa_supplicant/wpa_supplicant-2.10-r5.ebuild
copy to net-wireless/wpa_supplicant/wpa_supplicant-2.11-r1.ebuild
index 88e469c..05a8be7 100644
--- a/net-wireless/wpa_supplicant/wpa_supplicant-2.10-r5.ebuild
+++ b/net-wireless/wpa_supplicant/wpa_supplicant-2.11-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
@@ -13,18 +13,20 @@ if [ "${PV}" = "9999" ]; then
        inherit git-r3
        EGIT_REPO_URI="https://w1.fi/hostap.git";
 else
-       KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv 
~sparc x86"
+       KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 
~riscv ~sparc ~x86"
        SRC_URI="https://w1.fi/releases/${P}.tar.gz";
 fi
 
 SLOT="0"
-IUSE="ap broadcom-sta dbus eap-sim eapol-test fasteap +fils +hs2-0 macsec +mbo 
+mesh p2p privsep ps3 qt5 readline selinux smartcard tdls tkip 
uncommon-eap-types wep wimax wps"
+IUSE="+ap broadcom-sta dbus eap-sim eapol-test +fils macsec +mbo +mesh p2p 
privsep qt6 readline selinux smartcard tkip uncommon-eap-types wep wps"
 
 # CONFIG_PRIVSEP=y does not have sufficient support for the new driver
 # interface functions used for MACsec, so this combination cannot be used
 # at least for now. bug #684442
 REQUIRED_USE="
        macsec? ( !privsep )
+       mesh? ( ap )
+       p2p? ( ap wps )
        privsep? ( !macsec )
        broadcom-sta? ( !fils !mesh !mbo )
 "
@@ -37,11 +39,9 @@ DEPEND="
                eap-sim? ( sys-apps/pcsc-lite )
        )
        !kernel_linux? ( net-libs/libpcap )
-       qt5? (
-               dev-qt/qtcore:5
-               dev-qt/qtgui:5
-               dev-qt/qtsvg:5
-               dev-qt/qtwidgets:5
+       qt6? (
+               dev-qt/qtbase:6[gui,widgets]
+               dev-qt/qtsvg:6
        )
        readline? (
                sys-libs/ncurses:0=
@@ -110,27 +110,20 @@ src_prepare() {
 
        cd "${WORKDIR}/${P}" || die
 
-       if use wimax; then
-               # generate-libeap-peer.patch comes before
-               # fix-undefined-reference-to-random_get_bytes.patch
-               eapply "${FILESDIR}/${P}-generate-libeap-peer.patch"
-
-               # multilib-strict fix (bug #373685)
-               sed -e "s/\/usr\/lib/\/usr\/$(get_libdir)/" -i 
src/eap_peer/Makefile || die
-       fi
-
        # bug (320097)
        eapply 
"${FILESDIR}/${PN}-2.6-do-not-call-dbus-functions-with-NULL-path.patch"
 
        # bug (912315)
        eapply "${FILESDIR}/${PN}-2.10-allow-legacy-renegotiation.patch"
-       eapply 
"${FILESDIR}/${PN}-2.10-Drop-security-level-to-0-with-OpenSSL-3.0-wh.patch"
+
+       # bug (948052)
+       eapply "${FILESDIR}/${PN}-2.10-use-qt6.patch"
 
        # bug (640492)
        sed -i 's#-Werror ##' wpa_supplicant/Makefile || die
 
        # LibreSSL patch (https://github.com/gentoo/libressl/issues/336)
-       eapply "${FILESDIR}/${PN}-2.9-libressl.patch"
+       eapply "${FILESDIR}/${PN}-2.11-libressl.patch"
 }
 
 src_configure() {
@@ -195,11 +188,6 @@ src_configure() {
        Kconfig_style_config DEBUG_FILE
        Kconfig_style_config DEBUG_SYSLOG
 
-       if use hs2-0 ; then
-               Kconfig_style_config INTERWORKING
-               Kconfig_style_config HS20
-       fi
-
        if use mbo ; then
                Kconfig_style_config MBO
        else
@@ -222,10 +210,6 @@ src_configure() {
                Kconfig_style_config PCSC
        fi
 
-       if use fasteap ; then
-               Kconfig_style_config EAP_FAST
-       fi
-
        if use readline ; then
                # readline/history support for wpa_cli
                Kconfig_style_config READLINE
@@ -274,10 +258,6 @@ src_configure() {
                Kconfig_style_config SMARTCARD n
        fi
 
-       if use tdls ; then
-               Kconfig_style_config TDLS
-       fi
-
        if use kernel_linux ; then
                # Linux specific drivers
                Kconfig_style_config DRIVER_ATMEL
@@ -298,10 +278,6 @@ src_configure() {
                        Kconfig_style_config DRIVER_MACSEC_LINUX n
                        Kconfig_style_config MACSEC n
                fi
-
-               if use ps3 ; then
-                       Kconfig_style_config DRIVER_PS3
-               fi
        fi
 
        # Wi-Fi Protected Setup (WPS)
@@ -361,9 +337,9 @@ src_configure() {
                Kconfig_style_config LIBNL32
        fi
 
-       if use qt5 ; then
+       if use qt6 ; then
                pushd "${S}"/wpa_gui-qt4 > /dev/null || die
-               eqmake5 wpa_gui.pro
+               eqmake6 wpa_gui.pro
                popd > /dev/null || die
        fi
 }
@@ -372,12 +348,7 @@ src_compile() {
        einfo "Building wpa_supplicant"
        emake V=1 BINDIR=/usr/sbin
 
-       if use wimax; then
-               emake -C ../src/eap_peer clean
-               emake -C ../src/eap_peer
-       fi
-
-       if use qt5; then
+       if use qt6; then
                einfo "Building wpa_gui"
                emake -C "${S}"/wpa_gui-qt4
        fi
@@ -408,7 +379,7 @@ src_install() {
                doman doc/docbook/*.{5,8}
        fi
 
-       if use qt5 ; then
+       if use qt6 ; then
                into /usr
                dobin wpa_gui-qt4/wpa_gui
                doicon wpa_gui-qt4/icons/wpa_gui.svg
@@ -417,8 +388,6 @@ src_install() {
                rm "${ED}"/usr/share/man/man8/wpa_gui.8
        fi
 
-       use wimax && emake DESTDIR="${D}" -C ../src/eap_peer install
-
        if use dbus ; then
                pushd "${S}"/dbus > /dev/null || die
                insinto /etc/dbus-1/system.d

diff --git a/net-wireless/wpa_supplicant/wpa_supplicant-2.10-r5.ebuild 
b/net-wireless/wpa_supplicant/wpa_supplicant-2.11.ebuild
similarity index 95%
rename from net-wireless/wpa_supplicant/wpa_supplicant-2.10-r5.ebuild
rename to net-wireless/wpa_supplicant/wpa_supplicant-2.11.ebuild
index 88e469c..817087f 100644
--- a/net-wireless/wpa_supplicant/wpa_supplicant-2.10-r5.ebuild
+++ b/net-wireless/wpa_supplicant/wpa_supplicant-2.11.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
@@ -13,12 +13,12 @@ if [ "${PV}" = "9999" ]; then
        inherit git-r3
        EGIT_REPO_URI="https://w1.fi/hostap.git";
 else
-       KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv 
~sparc x86"
+       KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 
~riscv ~sparc ~x86"
        SRC_URI="https://w1.fi/releases/${P}.tar.gz";
 fi
 
 SLOT="0"
-IUSE="ap broadcom-sta dbus eap-sim eapol-test fasteap +fils +hs2-0 macsec +mbo 
+mesh p2p privsep ps3 qt5 readline selinux smartcard tdls tkip 
uncommon-eap-types wep wimax wps"
+IUSE="ap broadcom-sta dbus eap-sim eapol-test fasteap +fils +hs2-0 macsec +mbo 
+mesh p2p privsep ps3 qt6 readline selinux smartcard tdls tkip 
uncommon-eap-types wep wimax wps"
 
 # CONFIG_PRIVSEP=y does not have sufficient support for the new driver
 # interface functions used for MACsec, so this combination cannot be used
@@ -37,11 +37,9 @@ DEPEND="
                eap-sim? ( sys-apps/pcsc-lite )
        )
        !kernel_linux? ( net-libs/libpcap )
-       qt5? (
-               dev-qt/qtcore:5
-               dev-qt/qtgui:5
-               dev-qt/qtsvg:5
-               dev-qt/qtwidgets:5
+       qt6? (
+               dev-qt/qtbase:6[gui,widgets]
+               dev-qt/qtsvg:6
        )
        readline? (
                sys-libs/ncurses:0=
@@ -124,13 +122,18 @@ src_prepare() {
 
        # bug (912315)
        eapply "${FILESDIR}/${PN}-2.10-allow-legacy-renegotiation.patch"
-       eapply 
"${FILESDIR}/${PN}-2.10-Drop-security-level-to-0-with-OpenSSL-3.0-wh.patch"
+
+       # bug (948052)
+       eapply "${FILESDIR}/${PN}-2.10-use-qt6.patch"
+
+       # bug (937452)
+       eapply 
"${FILESDIR}/${PN}-2.11-Revert-Mark-authorization-completed-on-driver-indica.patch"
 
        # bug (640492)
        sed -i 's#-Werror ##' wpa_supplicant/Makefile || die
 
        # LibreSSL patch (https://github.com/gentoo/libressl/issues/336)
-       eapply "${FILESDIR}/${PN}-2.9-libressl.patch"
+       eapply "${FILESDIR}/${PN}-2.11-libressl.patch"
 }
 
 src_configure() {
@@ -361,9 +364,9 @@ src_configure() {
                Kconfig_style_config LIBNL32
        fi
 
-       if use qt5 ; then
+       if use qt6 ; then
                pushd "${S}"/wpa_gui-qt4 > /dev/null || die
-               eqmake5 wpa_gui.pro
+               eqmake6 wpa_gui.pro
                popd > /dev/null || die
        fi
 }
@@ -377,7 +380,7 @@ src_compile() {
                emake -C ../src/eap_peer
        fi
 
-       if use qt5; then
+       if use qt6; then
                einfo "Building wpa_gui"
                emake -C "${S}"/wpa_gui-qt4
        fi
@@ -408,7 +411,7 @@ src_install() {
                doman doc/docbook/*.{5,8}
        fi
 
-       if use qt5 ; then
+       if use qt6 ; then
                into /usr
                dobin wpa_gui-qt4/wpa_gui
                doicon wpa_gui-qt4/icons/wpa_gui.svg

Reply via email to