소스 검색

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
 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
 exit 0