afm-user-session: Start target from user session
[src/app-framework-main.git] / src / afm-user-session.c
index 51acafe..445db91 100644 (file)
  limitations under the License.
 */
 
-#include <signal.h>
+#include <stdio.h>
+#include <unistd.h>
 #include <systemd/sd-daemon.h>
 
+extern char **environ;
+
 int main()
 {
-       sigset_t ass, bss;
-
-       sigemptyset(&ass);
-       sigaddset(&ass, SIGTERM);
-
-       sigfillset(&bss);
-       sigdelset(&bss, SIGTERM);
+       char buffer[100];
+       char *args[] = { "/bin/systemctl", "--wait", "start", buffer, 0 };
 
+       sprintf(buffer, "afm-user-session@%d.target", (int)getuid());
        sd_notify(0, "READY=1");
-       sigprocmask(SIG_SETMASK, &bss, 0);
-       sigwaitinfo(&ass, 0);
-
-       return 0;
+       execve(args[0], args, environ);
+       return 1;
 }