<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>59836</bug_id>
          
          <creation_ts>2026-07-15 01:55:31 +0300</creation_ts>
          <short_desc>NetworkManager ошибочно удаляет AGENT_OWNED секреты</short_desc>
          <delta_ts>2026-07-23 16:39:59 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>NetworkManager</component>
          <version>unstable</version>
          <rep_platform>x86_64</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P5</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Жора Змейкин">me</reporter>
          <assigned_to name="Mikhail Efremov">sem</assigned_to>
          <cc>golubevan</cc>
    
    <cc>sem</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>291122</commentid>
    <comment_count>0</comment_count>
      <attachid>21859</attachid>
    <who name="Жора Змейкин">me</who>
    <bug_when>2026-07-15 01:55:31 +0300</bug_when>
    <thetext>Created attachment 21859
Исправляющий патч

В KDE Plasma компонент plasma-nm при предоставлении доступа к подключённой Wi-Fi сети не отображает пароль и формирует QR-код без поля P, если пароль хранится агентом секретов, например KWallet.

Шаги воспроизведения:
1. В ALT Regular KDE подключиться к защищённой Wi-Fi сети с сохранением пароля в KWallet.
2. Открыть апплет сетей Plasma.
3. Нажать «Поделиться» у Wi-Fi сети в апплете.

Фактический результат:
QR код генерируется без пароля

Ожидаемый результат:
Генерация QR кода с паролем

Заметил, что в NetworkManager есть два коммита, из-за которых подобное и происходит:
https://git.altlinux.org/gears/N/NetworkManager.gitp=NetworkManager.git;a=commit;h=0cbb3befd133adaf9fc3dfefadee6dde09b31668
https://git.altlinux.org/gears/N/NetworkManager.git?p=NetworkManager.git;a=commit;h=6e5cc4d24fe4e3dee1187d1ccea9ddb2c34fcc99

Второй должен был удалять из settings-connection секреты с флагами NOT_SAVED и NOT_REQUIRED. Однако добавленная в этом коммите функция перед обновлением  settings-connection проверяет каждый полученный секрет и удаляет его, если он не считается системным. После предыдущего коммита системными считаются только секреты без флагов. Поэтому пароль с флагом AGENT_OWNED, полученный от KWallet, тоже ошибочно удаляется.

В результате пароль удаляется из нового NMConnection до обновления settings-connection, и последующий авторизованный вызов GetSecrets() уже не может вернуть его plasma-nm.


Решить это довольно легко, можно удалять только секреты с явно установленными флагами и сохранять AGENT_OWNED в памяти settings-connection. Прикладываю патч.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>291124</commentid>
    <comment_count>1</comment_count>
    <who name="Mikhail Efremov">sem</who>
    <bug_when>2026-07-15 10:21:14 +0300</bug_when>
    <thetext>Добавил golubevan@.
Антон, как автор патчей, посмотрите пожалуйста.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>291125</commentid>
    <comment_count>2</comment_count>
    <who name="Anton Golubev">golubevan</who>
    <bug_when>2026-07-15 10:35:09 +0300</bug_when>
    <thetext>Ок, займусь этим.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>291246</commentid>
    <comment_count>3</comment_count>
    <who name="Anton Golubev">golubevan</who>
    <bug_when>2026-07-17 16:42:14 +0300</bug_when>
    <thetext>Собрал с приложенным патчем, проблема исправляется, регресса со стороны секретов openvpn подключений, из за которых были изначальные патчи, не наблюдается. Agent-owned секреты, несмотря на то, что после патча не очищаются в этом месте, не записываются в connection.

Посмотрел в отладчике, в данном случае (с qr кодом) поток вообще не заходит в ветку if (applied_connection):

https://git.altlinux.org/gears/N/NetworkManager.git?p=NetworkManager.git;a=blob;f=NetworkManager/src/core/settings/nm-settings-connection.c;h=76428827befd22046a8719f48ef837a644129c0a;hb=4f2fecc3811502a9bcde9d9e0af3f28586708928#l1069

поскольку applied_connection null, Это даже задокументировано:

https://git.altlinux.org/gears/N/NetworkManager.git?p=NetworkManager.git;a=blob;f=NetworkManager/src/core/settings/nm-settings-connection.c;h=76428827befd22046a8719f48ef837a644129c0a;hb=4f2fecc3811502a9bcde9d9e0af3f28586708928#l1121

но даже если applied_connection будет задано, agent-owned секреты отфильтровываются чуть дальше:

https://git.altlinux.org/gears/N/NetworkManager.git?p=NetworkManager.git;a=blob;f=NetworkManager/src/core/settings/nm-settings-connection.c;h=76428827befd22046a8719f48ef837a644129c0a;hb=4f2fecc3811502a9bcde9d9e0af3f28586708928#l1083

Таким образом, патч годный, считаю его стоит применить.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>291509</commentid>
    <comment_count>4</comment_count>
    <who name="Mikhail Efremov">sem</who>
    <bug_when>2026-07-23 11:02:15 +0300</bug_when>
    <thetext>Спасибо, приложил.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>291540</commentid>
    <comment_count>5</comment_count>
    <who name="Repository Robot">repository-robot</who>
    <bug_when>2026-07-23 16:39:59 +0300</bug_when>
    <thetext>NetworkManager-1.58.0-alt2 -&gt; sisyphus:

Thu Jul 23 2026 Mikhail Efremov &lt;sem@altlinux&gt; 1.58.0-alt2
- settings-connection: keep agent-owned secrets for GetSecrets
  (by me at katze-942.ru) (closes: #59836).</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>21859</attachid>
            <date>2026-07-15 01:55:31 +0300</date>
            <delta_ts>2026-07-15 01:55:31 +0300</delta_ts>
            <desc>Исправляющий патч</desc>
            <filename>NetworkManager-fix-agent-owned-secrets.patch</filename>
            <type>text/plain</type>
            <size>2635</size>
            <attacher name="Жора Змейкин">me</attacher>
            
              <data encoding="base64">RnJvbSA1MWMyMzQ1ODMwYzZlMDdhMTQ1Y2IxZjgwMWYzMTRhYzVlZmNiNTRhIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/PUQwPTk2PUQwPUJFPUQxPTgwPUQwPUIwPTIw
PUQwPTk3PUQwPUJDPUQwPUI1PUQwPUI5PUQwPUJBPz0KID0/VVRGLTg/cT89RDA9Qjg9RDA9QkQ/
PSA8bWVAa2F0emUtOTQyLnJ1PgpEYXRlOiBNb24sIDEzIEp1bCAyMDI2IDIxOjMyOjMxICswMzAw
ClN1YmplY3Q6IFtQQVRDSF0gc2V0dGluZ3MtY29ubmVjdGlvbjoga2VlcCBhZ2VudC1vd25lZCBz
ZWNyZXRzIGZvciBHZXRTZWNyZXRzCgpBTFQgY29tbWl0IDZlNWNjNGQyNGZlNCBjbGVhcnMgQUdF
TlRfT1dORUQgc2VjcmV0cyByZWNlaXZlZCBmcm9tIGEgc2VjcmV0CmFnZW50LCBwcmV2ZW50aW5n
IGEgbGF0ZXIgR2V0U2VjcmV0cygpIGNhbGwgZnJvbSByZXR1cm5pbmcgdGhlIFdpLUZpIFBTSy4K
CkNsZWFyIG9ubHkgTk9UX1NBVkVEIGFuZCBOT1RfUkVRVUlSRUQgc2VjcmV0cy4gIFBFUlNJU1Rf
TU9ERV9OT19QRVJTSVNUCmtlZXBzIHRoZSBhZ2VudC1vd25lZCBzZWNyZXQgb3V0IG9mIHBlcnNp
c3RlbnQgc3RvcmFnZS4KCkZpeGVzOiA2ZTVjYzRkMjRmZTQgKCJzZXR0aW5ncy1jb25uZWN0aW9u
OiBkb24ndCBzdG9yZSBub24tc3lzdGVtIHNlY3JldHMgZnJvbSBhZ2VudCIpCgotLS0KIC4uLi9j
b3JlL3NldHRpbmdzL25tLXNldHRpbmdzLWNvbm5lY3Rpb24uYyAgICB8IDIwICsrKysrKysrKyst
LS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25z
KC0pCgpkaWZmIC0tZ2l0IGEvTmV0d29ya01hbmFnZXIvc3JjL2NvcmUvc2V0dGluZ3Mvbm0tc2V0
dGluZ3MtY29ubmVjdGlvbi5jIGIvTmV0d29ya01hbmFnZXIvc3JjL2NvcmUvc2V0dGluZ3Mvbm0t
c2V0dGluZ3MtY29ubmVjdGlvbi5jCmluZGV4IDc2NDI4ODI3YmUuLjBjY2Q5ZWU5OTYgMTAwNjQ0
Ci0tLSBhL05ldHdvcmtNYW5hZ2VyL3NyYy9jb3JlL3NldHRpbmdzL25tLXNldHRpbmdzLWNvbm5l
Y3Rpb24uYworKysgYi9OZXR3b3JrTWFuYWdlci9zcmMvY29yZS9zZXR0aW5ncy9ubS1zZXR0aW5n
cy1jb25uZWN0aW9uLmMKQEAgLTkxNiwxMiArOTE2LDE0IEBAIG1hdGNoX3NlY3JldF9ieV9zZXR0
aW5nX25hbWVfYW5kX2ZsYWdzX2NiKE5NU2V0dGluZyAgICAgICAgICAgKnNldHRpbmcsCiB9CiAK
IHN0YXRpYyBnYm9vbGVhbgotbWF0Y2hfc2VjcmV0X2lzX3N5c3RlbV9vd25lZChOTVNldHRpbmcg
ICAgICAgICAgICpzZXR0aW5nLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBj
aGFyICAgICAgICAgICpzZWNyZXQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5NU2V0
dGluZ1NlY3JldEZsYWdzIGZsYWdzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBncG9p
bnRlciAgICAgICAgICAgICB1c2VyX2RhdGEpCittYXRjaF9zZWNyZXRfaXNfbm90X3NhdmVkX29y
X25vdF9yZXF1aXJlZChOTVNldHRpbmcgICAgICAgICAgICpzZXR0aW5nLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAgICAgICAgICAqc2VjcmV0
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTk1TZXR0aW5nU2Vj
cmV0RmxhZ3MgZmxhZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBncG9pbnRlciAgICAgICAgICAgICB1c2VyX2RhdGEpCiB7Ci0gICAgcmV0dXJuICFzZWNyZXRf
aXNfc3lzdGVtX293bmVkKGZsYWdzLCB1c2VyX2RhdGEpOworICAgIHJldHVybiBOTV9GTEFHU19B
TlkoZmxhZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICBOTV9TRVRUSU5HX1NFQ1JFVF9GTEFH
X05PVF9TQVZFRAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgTk1fU0VUVElOR19TRUNS
RVRfRkxBR19OT1RfUkVRVUlSRUQpOwogfQogCiBzdGF0aWMgdm9pZApAQCAtMTA0MywxMSArMTA0
NSw5IEBAIGdldF9zZWNyZXRzX2RvbmVfY2IoTk1BZ2VudE1hbmFnZXIgICAgICAgICAgICAgICpt
YW5hZ2VyLAogICAgICAgICBfTE9HRCgiKCVzOiVwKSBuZXcgYWdlbnQgc2VjcmV0cyBwcm9jZXNz
ZWQiLCBzZXR0aW5nX25hbWUsIGNhbGxfaWQpOwogICAgIH0KIAotICAgIC8qCi0gICAgICogV2Ug
ZG9uJ3Qgd2FudCB0byBzdG9yZSBzZWNyZXRzIHRvIHNldHRpbmdzLWNvbm5lY3Rpb24sIHRoYXQg
ZG9uJ3QgYmVsb25nCi0gICAgICogdG8gdGhlIHN5c3RlbQotICAgICAqLwotICAgIG5tX2Nvbm5l
Y3Rpb25fY2xlYXJfc2VjcmV0c193aXRoX2ZsYWdzKG5ld19jb25uZWN0aW9uLCBtYXRjaF9zZWNy
ZXRfaXNfc3lzdGVtX293bmVkLCBOVUxMKTsKKyAgICBubV9jb25uZWN0aW9uX2NsZWFyX3NlY3Jl
dHNfd2l0aF9mbGFncyhuZXdfY29ubmVjdGlvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBtYXRjaF9zZWNyZXRfaXNfbm90X3NhdmVkX29yX25vdF9yZXF1aXJl
ZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKIAog
ICAgIGlmICghbm1fc2V0dGluZ3NfY29ubmVjdGlvbl91cGRhdGUoCiAgICAgICAgICAgICBzZWxm
LAotLSAKMi41MC4xCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>