Fix: Samba MacOS toggle deaktivieren löscht fruit: Keys via delparm
net conf setparm kann Keys nicht entfernen. Beim Deaktivieren blieben fruit:* Keys in der Registry erhalten. Jetzt werden Keys die im neuen Dict fehlen via net conf delparm gelöscht. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -251,8 +251,20 @@ class SharesManager:
|
||||
return {"parameters": []}
|
||||
|
||||
def set_samba_global_config(self, parameters: Dict[str, str]) -> bool:
|
||||
"""Update Samba global configuration parameters using 'net conf setparm'"""
|
||||
"""Update Samba global configuration parameters using 'net conf setparm/delparm'"""
|
||||
try:
|
||||
current = self.get_samba_global_config()
|
||||
current_keys = {p["key"] for p in current.get("parameters", [])}
|
||||
new_keys = set(parameters.keys())
|
||||
|
||||
# Delete keys that were removed
|
||||
for key in current_keys - new_keys:
|
||||
subprocess.run(
|
||||
['/usr/bin/net', 'conf', 'delparm', 'global', key],
|
||||
capture_output=True, text=True, timeout=10
|
||||
)
|
||||
|
||||
# Set/update remaining keys
|
||||
for key, value in parameters.items():
|
||||
result = subprocess.run(
|
||||
['/usr/bin/net', 'conf', 'setparm', 'global', key, '--', value],
|
||||
|
||||
Reference in New Issue
Block a user