INNER CODE UNIT · Python
unexpected
WMAL/kodachios · Kodachi-OS-10-stable/open/dock/lib/kodachi_direct.py:541
unexpected = sorted(set(values) - allowed)
if unexpected:
raise DirectContractError(
"unexpected typed parameter(s): " + ", ".join(unexpected))
commands = []
for binding in bindings:
names = {item["name"] for item in binding["parameters"]}
selected = {name: values[name] for name in names if name in values}
if names and not selected:
argv = [binding["executable"], *binding["argv"]]
if binding.get("needsSudo") or binding.get("runAsUser"):
prefix = [SUDO, "-n"]
if binding.get("runAsUser"):
prefix.extend(["-u", binding["runAsUser"]])
argv = [*prefix, *argv]
else:
argv = self.argv_for(binding, selected)
commands.append(shlex.join(argv))