Skip to content

Commit 4cd0cb1

Browse files
committed
Added secret_fields_names attribute to settings
It contains the names of the fields that are secret and must be fetched separately.
1 parent 6439b7d commit 4cd0cb1

File tree

15 files changed

+56
-20
lines changed

15 files changed

+56
-20
lines changed

sdbus_async/networkmanager/settings/adsl.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,14 @@
33
# if possible, please make changes by also updating the script.
44
from __future__ import annotations
55
from dataclasses import dataclass, field
6-
from typing import Optional
6+
from typing import ClassVar, List, Optional
77
from .base import NetworkManagerSettingsMixin
88

99

1010
@dataclass
1111
class AdslSettings(NetworkManagerSettingsMixin):
1212
"""ADSL Settings"""
13+
secret_fields_names: ClassVar[List[str]] = ['password']
1314

1415
encapsulation: Optional[str] = field(
1516
metadata={

sdbus_async/networkmanager/settings/base.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,16 @@
1+
# SPDX-License-Identifier: LGPL-2.1-or-later
12
from __future__ import annotations
3+
24
from dataclasses import fields
35
from functools import lru_cache
4-
from typing import Any, Dict, Type, cast
6+
from typing import Any, ClassVar, Dict, List, Type, cast
57

6-
from ..types import (
7-
NetworkManagerSettingsDomain,
8-
)
8+
from ..types import NetworkManagerSettingsDomain
99

1010

1111
class NetworkManagerSettingsMixin:
12+
secret_fields_names: ClassVar[List[str]] = []
13+
1214
def to_dbus(self) -> NetworkManagerSettingsDomain:
1315
"""Return a dbus dictionary for NetworkManager to add/update profiles
1416

sdbus_async/networkmanager/settings/cdma.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,14 @@
33
# if possible, please make changes by also updating the script.
44
from __future__ import annotations
55
from dataclasses import dataclass, field
6-
from typing import Optional
6+
from typing import ClassVar, List, Optional
77
from .base import NetworkManagerSettingsMixin
88

99

1010
@dataclass
1111
class CdmaSettings(NetworkManagerSettingsMixin):
1212
"""CDMA-based Mobile Broadband Settings"""
13+
secret_fields_names: ClassVar[List[str]] = ['password']
1314

1415
mtu: Optional[int] = field(
1516
metadata={

sdbus_async/networkmanager/settings/connection.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,14 @@
33
# if possible, please make changes by also updating the script.
44
from __future__ import annotations
55
from dataclasses import dataclass, field
6-
from typing import List, Optional
6+
from typing import ClassVar, List, Optional
77
from .base import NetworkManagerSettingsMixin
88

99

1010
@dataclass
1111
class ConnectionSettings(NetworkManagerSettingsMixin):
1212
"""General Connection Profile Settings"""
13+
secret_fields_names: ClassVar[List[str]] = ['mptcp']
1314

1415
auth_retries: Optional[int] = field(
1516
metadata={

sdbus_async/networkmanager/settings/dcb.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,14 @@
33
# if possible, please make changes by also updating the script.
44
from __future__ import annotations
55
from dataclasses import dataclass, field
6-
from typing import List, Optional
6+
from typing import ClassVar, List, Optional
77
from .base import NetworkManagerSettingsMixin
88

99

1010
@dataclass
1111
class DcbSettings(NetworkManagerSettingsMixin):
1212
"""Data Center Bridging Settings"""
13+
secret_fields_names: ClassVar[List[str]] = ['app_fcoe', 'app_fip', 'app_iscsi', 'priority_flow_control', 'priority_group']
1314

1415
app_fcoe_flags: Optional[int] = field(
1516
metadata={

sdbus_async/networkmanager/settings/eapol.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,14 @@
33
# if possible, please make changes by also updating the script.
44
from __future__ import annotations
55
from dataclasses import dataclass, field
6-
from typing import List, Optional
6+
from typing import ClassVar, List, Optional
77
from .base import NetworkManagerSettingsMixin
88

99

1010
@dataclass
1111
class EapolSettings(NetworkManagerSettingsMixin):
1212
"""IEEE 802.1x Authentication Settings"""
13+
secret_fields_names: ClassVar[List[str]] = ['ca_cert_password', 'client_cert_password', 'password', 'password_raw', 'phase1_auth', 'phase2_ca_cert_password', 'phase2_client_cert_password', 'phase2_private_key_password', 'pin', 'private_key_password']
1314

1415
altsubject_matches: Optional[List[str]] = field(
1516
metadata={

sdbus_async/networkmanager/settings/gsm.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,14 @@
33
# if possible, please make changes by also updating the script.
44
from __future__ import annotations
55
from dataclasses import dataclass, field
6-
from typing import Optional
6+
from typing import ClassVar, List, Optional
77
from .base import NetworkManagerSettingsMixin
88

99

1010
@dataclass
1111
class GsmSettings(NetworkManagerSettingsMixin):
1212
"""GSM-based Mobile Broadband Settings"""
13+
secret_fields_names: ClassVar[List[str]] = ['password', 'pin']
1314

1415
apn: Optional[str] = field(
1516
metadata={

sdbus_async/networkmanager/settings/ipv4.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,15 @@
33
# if possible, please make changes by also updating the script.
44
from __future__ import annotations
55
from dataclasses import dataclass, field
6-
from typing import Any, List, Optional, Tuple
6+
from typing import Any, ClassVar, List, Optional, Tuple
77
from .base import NetworkManagerSettingsMixin
88
from .datatypes import AddressData, RouteData, RoutingRules
99

1010

1111
@dataclass
1212
class Ipv4Settings(NetworkManagerSettingsMixin):
1313
"""IPv4 Settings"""
14+
secret_fields_names: ClassVar[List[str]] = ['dhcp_hostname']
1415

1516
address_data: Optional[List[AddressData]] = field(
1617
metadata={

sdbus_async/networkmanager/settings/ipv6.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,15 @@
33
# if possible, please make changes by also updating the script.
44
from __future__ import annotations
55
from dataclasses import dataclass, field
6-
from typing import Any, List, Optional, Tuple
6+
from typing import Any, ClassVar, List, Optional, Tuple
77
from .base import NetworkManagerSettingsMixin
88
from .datatypes import AddressData, RouteData, RoutingRules
99

1010

1111
@dataclass
1212
class Ipv6Settings(NetworkManagerSettingsMixin):
1313
"""IPv6 Settings"""
14+
secret_fields_names: ClassVar[List[str]] = ['dhcp_hostname']
1415

1516
addr_gen_mode: Optional[int] = field(
1617
metadata={

sdbus_async/networkmanager/settings/macsec.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,14 @@
33
# if possible, please make changes by also updating the script.
44
from __future__ import annotations
55
from dataclasses import dataclass, field
6-
from typing import Optional
6+
from typing import ClassVar, List, Optional
77
from .base import NetworkManagerSettingsMixin
88

99

1010
@dataclass
1111
class MacsecSettings(NetworkManagerSettingsMixin):
1212
"""MACSec Settings"""
13+
secret_fields_names: ClassVar[List[str]] = ['mka_cak']
1314

1415
encrypt: Optional[bool] = field(
1516
metadata={

0 commit comments

Comments
 (0)