Skip to content

Commit 01a0e44

Browse files
committed
Fix Privileged flag being inverted by interface generator
By default libsystemd makes all methods privileged unless the `org.freedesktop.systemd1.Privileged` is set. The code generator only set the unprivileged flag only if introspection flag was set which is completely inverted logic. This change means there will be a lot of `DbusUnprivilegedFlag` used in the generated code but this is a correct way.
1 parent 1ebb8c2 commit 01a0e44

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

src/sdbus/interface_generator.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -273,15 +273,15 @@ def __init__(self, element: Element):
273273
self.python_name = camel_case_to_snake_case(self.method_name)
274274

275275
self.is_deprecated = False
276-
self.is_unpriveledged = False
276+
self.is_priveledged = False
277277

278278
self.iter_sub_elements(element)
279279

280280
def _flags_iter(self) -> Iterator[str]:
281281
if self.is_deprecated:
282282
yield 'DbusDeprecatedFlag'
283283

284-
if self.is_unpriveledged:
284+
if not self.is_priveledged:
285285
yield 'DbusUnprivilegedFlag'
286286

287287
@property
@@ -298,7 +298,7 @@ def _parse_annotation_data(self,
298298
if annotation_name == 'org.freedesktop.DBus.Deprecated':
299299
self.is_deprecated = parse_str_bool(annotation_value)
300300
elif annotation_name == 'org.freedesktop.systemd1.Privileged':
301-
self.is_unpriveledged = parse_str_bool(annotation_value)
301+
self.is_priveledged = parse_str_bool(annotation_value)
302302
else:
303303
...
304304

0 commit comments

Comments
 (0)