Преглед на файлове

Don't use 'su' in qubes.WaitForSession if not needed

Marek Marczykowski-Górecki преди 7 години
родител
ревизия
80d41cd10a
променени са 1 файла, в които са добавени 6 реда и са изтрити 1 реда
  1. 6 1
      qubes-rpc/qubes.WaitForSession

+ 6 - 1
qubes-rpc/qubes.WaitForSession

@@ -1,5 +1,10 @@
 #!/bin/sh
 #!/bin/sh
 read USERNAME
 read USERNAME
-su -c 'echo $$ >> /tmp/qubes-session-waiter; [ ! -f /tmp/qubes-session-env ] && exec sleep inf' - "$USERNAME" 2> /dev/null
+cmd='echo $$ >> /tmp/qubes-session-waiter; [ ! -f /tmp/qubes-session-env ] && exec sleep inf'
+if [ "$(id -un)" = "$USERNAME" ]; then
+    sh -c "$cmd" 2>/dev/null
+else
+    su -c "$cmd" - "$USERNAME" 2> /dev/null
+fi
 # the above line is _expected_ to be terminated by a signal, don't treat this as a failure
 # the above line is _expected_ to be terminated by a signal, don't treat this as a failure
 exit 0
 exit 0