Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package seatd for openSUSE:Factory checked 
in at 2021-09-16 23:14:55
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/seatd (Old)
 and      /work/SRC/openSUSE:Factory/.seatd.new.1899 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "seatd"

Thu Sep 16 23:14:55 2021 rev:5 rq:919491 version:0.6.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/seatd/seatd.changes      2021-09-12 
20:09:34.920086587 +0200
+++ /work/SRC/openSUSE:Factory/.seatd.new.1899/seatd.changes    2021-09-16 
23:17:38.935983233 +0200
@@ -1,0 +2,18 @@
+Thu Sep 16 07:40:50 UTC 2021 - Michael Vetter <[email protected]>
+
+- Update to 0.6.2:
+  * seatd-launch: Specify exact environment to seatd
+  * seatd-launch: Use absolute path for seatd
+
+-------------------------------------------------------------------
+Wed Sep 15 07:35:12 UTC 2021 - Michael Vetter <[email protected]>
+
+- Update to 0.6.1:
+  * seatd-launch: print unlink/kill errors
+  * seatd-launch: exit with status >128 if child is signalled
+  * man/seatd-launch: Make mssage about root clearer
+  * seatd-launch: Use optind to find the command
+  * seatd-launch: respect PATH when looking for command
+  * man: Add seatd-launch(1) to SEE ALSO of seatd(1)
+
+-------------------------------------------------------------------

Old:
----
  seatd-0.6.0.obscpio

New:
----
  seatd-0.6.2.obscpio

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ seatd.spec ++++++
--- /var/tmp/diff_new_pack.JHEcS3/_old  2021-09-16 23:17:39.411983725 +0200
+++ /var/tmp/diff_new_pack.JHEcS3/_new  2021-09-16 23:17:39.415983730 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           seatd
-Version:        0.6.0
+Version:        0.6.2
 Release:        0
 Summary:        Seat management daemon
 License:        MIT

++++++ _service ++++++
--- /var/tmp/diff_new_pack.JHEcS3/_old  2021-09-16 23:17:39.443983759 +0200
+++ /var/tmp/diff_new_pack.JHEcS3/_new  2021-09-16 23:17:39.443983759 +0200
@@ -3,7 +3,7 @@
   <service name="obs_scm" mode="disabled">
     <param name="url">https://git.sr.ht/~kennylevinsen/seatd</param>
     <param name="scm">git</param>
-    <param name="revision">0.6.0</param>
+    <param name="revision">0.6.2</param>
     <param name="versionformat">@PARENT_TAG@+@TAG_OFFSET@</param>
     <param name="versionrewrite-pattern">(.*)\+0</param>
     <param name="versionrewrite-replacement">\1</param>

++++++ seatd-0.6.0.obscpio -> seatd-0.6.2.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seatd-0.6.0/.builds/alpine.yml 
new/seatd-0.6.2/.builds/alpine.yml
--- old/seatd-0.6.0/.builds/alpine.yml  2021-09-11 14:02:44.000000000 +0200
+++ new/seatd-0.6.2/.builds/alpine.yml  2021-09-16 01:07:42.000000000 +0200
@@ -13,6 +13,7 @@
       meson -Dlibseat-seatd=enabled -Dlibseat-builtin=enabled 
-Dlibseat-logind=disabled -Dexamples=enabled build seatd
    - build: |
       ninja -C build
+      sudo ninja -C build install
    - unittest: |
       ninja -C build test
    - scan-build: |
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seatd-0.6.0/.builds/archlinux.yml 
new/seatd-0.6.2/.builds/archlinux.yml
--- old/seatd-0.6.0/.builds/archlinux.yml       2021-09-11 14:02:44.000000000 
+0200
+++ new/seatd-0.6.2/.builds/archlinux.yml       2021-09-16 01:07:42.000000000 
+0200
@@ -12,6 +12,7 @@
       meson -Db_sanitize=address -Dlibseat-logind=auto -Dlibseat-seatd=enabled 
-Dlibseat-builtin=enabled -Dexamples=enabled build seatd
    - build: |
       ninja -C build
+      sudo ninja -C build install
    - unittest: |
       ninja -C build test
    - scan-build: |
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seatd-0.6.0/.builds/freebsd.yml 
new/seatd-0.6.2/.builds/freebsd.yml
--- old/seatd-0.6.0/.builds/freebsd.yml 2021-09-11 14:02:44.000000000 +0200
+++ new/seatd-0.6.2/.builds/freebsd.yml 2021-09-16 01:07:42.000000000 +0200
@@ -14,6 +14,7 @@
       rm -rf build
       meson -Db_lundef=false -Db_sanitize=address -Dlibseat-seatd=enabled 
-Dlibseat-builtin=enabled -Dexamples=enabled -Dlibseat-logind=disabled build 
seatd
       ninja -C build
+      sudo ninja -C build install
       timeout -s KILL 30s ./seatd/.builds/smoketest-seatd.sh
    - smoketest-builtin: |
       timeout -s KILL 30s ./seatd/.builds/smoketest-builtin.sh
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seatd-0.6.0/.builds/smoketest-seatd.sh 
new/seatd-0.6.2/.builds/smoketest-seatd.sh
--- old/seatd-0.6.0/.builds/smoketest-seatd.sh  2021-09-11 14:02:44.000000000 
+0200
+++ new/seatd-0.6.2/.builds/smoketest-seatd.sh  2021-09-16 01:07:42.000000000 
+0200
@@ -13,7 +13,6 @@
 fi
 
 export SEATD_LOGLEVEL=debug
-export PATH=$(pwd)/build:$PATH
 #
 # Run simpletest a few times
 #
@@ -21,7 +20,7 @@
 while [ "$cnt" -lt 2 ]
 do
    echo "Simpletest run $((cnt+1))"
-   if ! sudo -E seatd-launch ./build/simpletest $file
+   if ! sudo -E ./build/seatd-launch ./build/simpletest $file
    then
       echo "Simpletest failed"
       exit 1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seatd-0.6.0/man/seatd-launch.1.scd 
new/seatd-0.6.2/man/seatd-launch.1.scd
--- old/seatd-0.6.0/man/seatd-launch.1.scd      2021-09-11 14:02:44.000000000 
+0200
+++ new/seatd-0.6.2/man/seatd-launch.1.scd      2021-09-16 01:07:42.000000000 
+0200
@@ -27,20 +27,28 @@
 also terminated.
 
 seatd requires root privileges to perform its tasks. This can be achieved
-through SUID of seatd-launch, *sudo(8)*/*doas(1)*, or by running seatd-launch
-as root. seatd-launch will drop privileges from the effective user to the real
-user before running the specified command. If the real user is root, this is
-simply a noop - only run directly as root if you intend for the specified
-command to run as root as well.
+through SUID of seatd-launch or by running seatd-launch as root. seatd-launch
+will drop privileges from the effective user to the real user before running
+the specified command. If the real user is root, this is simply a noop. You
+should only run seatd-launch as root if you intend for the specified command to
+run as root as well.
 
 seatd-launch serves a similar purpose to the libseat "builtin" backend, but is
 superior to it for two reasons:
 . The specified command never runs as root
 . The standard seatd executable and libseat backend is used
 
+# EXIT STATUS
+
+seatd-launch exits with the status of its child. When the child terminates on
+a signal _N_, seatd-launch exits with the status 128 + _N_.
+
+If seatd-launch fails because of another error, it exits with a non-zero
+status.
+
 # SEE ALSO
 
-The libseat library, *<libseat.h>*, *seatd(1)*
+The libseat library, *<libseat.h>*, *seatd*(1)
 
 # AUTHORS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seatd-0.6.0/man/seatd.1.scd 
new/seatd-0.6.2/man/seatd.1.scd
--- old/seatd-0.6.0/man/seatd.1.scd     2021-09-11 14:02:44.000000000 +0200
+++ new/seatd-0.6.2/man/seatd.1.scd     2021-09-16 01:07:42.000000000 +0200
@@ -52,7 +52,7 @@
 
 # SEE ALSO
 
-The libseat library, *<libseat.h>*
+The libseat library, *<libseat.h>*, *seatd-launch*(1)
 
 # AUTHORS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seatd-0.6.0/meson.build new/seatd-0.6.2/meson.build
--- old/seatd-0.6.0/meson.build 2021-09-11 14:02:44.000000000 +0200
+++ new/seatd-0.6.2/meson.build 2021-09-16 01:07:42.000000000 +0200
@@ -1,7 +1,7 @@
 project(
        'seatd',
        'c',
-       version: '0.6.0',
+       version: '0.6.2',
        license: 'MIT',
        meson_version: '>=0.56.0',
        default_options: [
@@ -22,6 +22,8 @@
        endif
 endif
 
+seatdpath = '@0@/@1@/seatd'.format(get_option('prefix'), get_option('bindir'))
+
 cc = meson.get_compiler('c')
 add_project_arguments(cc.get_supported_arguments(
        [
@@ -41,7 +43,8 @@
                '-D_XOPEN_SOURCE=700',
                '-D__BSD_VISIBLE',
                '-DSEATD_VERSION="@0@"'.format(meson.project_version()),
-               '-DSEATD_DEFAULTPATH="@0@"'.format(defaultpath)
+               '-DSEATD_DEFAULTPATH="@0@"'.format(defaultpath),
+               '-DSEATD_INSTALLPATH="@0@"'.format(seatdpath),
        ]),
        language: 'c',
 )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/seatd-0.6.0/seatd-launch/seatd-launch.c 
new/seatd-0.6.2/seatd-launch/seatd-launch.c
--- old/seatd-0.6.0/seatd-launch/seatd-launch.c 2021-09-11 14:02:44.000000000 
+0200
+++ new/seatd-0.6.2/seatd-launch/seatd-launch.c 2021-09-16 01:07:42.000000000 
+0200
@@ -41,6 +41,12 @@
                }
        }
 
+       if (optind >= argc) {
+               fprintf(stderr, "A command must be specified\n\n%s", usage);
+               return 1;
+       }
+       char **command = &argv[optind];
+
        char sockbuf[256];
        if (sockpath == NULL) {
                sprintf(sockbuf, "/tmp/seatd.%d.sock", getpid());
@@ -62,10 +68,19 @@
        } else if (seatd_child == 0) {
                close(fds[0]);
 
-               char pipebuf[8];
-               sprintf(pipebuf, "%d", fds[1]);
+               char pipebuf[16] = {0};
+               snprintf(pipebuf, sizeof pipebuf, "%d", fds[1]);
+
+               char *env[2] = {NULL, NULL};
+               char loglevelbuf[32] = {0};
+               char *cur_loglevel = getenv("SEATD_LOGLEVEL");
+               if (cur_loglevel != NULL) {
+                       snprintf(loglevelbuf, sizeof loglevelbuf, 
"SEATD_LOGLEVEL=%s", cur_loglevel);
+                       env[0] = loglevelbuf;
+               }
 
-               execlp("seatd", "seatd", "-n", pipebuf, "-s", sockpath, NULL);
+               char *command[] = {"seatd", "-n", pipebuf, "-s", sockpath, 
NULL};
+               execve(SEATD_INSTALLPATH, command, env);
                perror("Could not start seatd");
                _exit(1);
        }
@@ -139,7 +154,7 @@
                goto error_seatd;
        } else if (child == 0) {
                setenv("SEATD_SOCK", sockpath, 1);
-               execv(argv[1], &argv[1]);
+               execvp(command[0], command);
                perror("Could not start target");
                _exit(1);
        }
@@ -155,13 +170,19 @@
                }
        }
 
-       unlink(sockpath);
-       kill(seatd_child, SIGTERM);
+       if (unlink(sockpath) != 0) {
+               perror("Could not unlink socket");
+       }
+       if (kill(seatd_child, SIGTERM) != 0) {
+               perror("Could not kill seatd");
+       }
 
        if (WIFEXITED(status)) {
                return WEXITSTATUS(status);
+       } else if (WIFSIGNALED(status)) {
+               return 128 + WTERMSIG(status);
        } else {
-               return 1;
+               abort(); // unreachable
        }
 
 error_seatd:

++++++ seatd.obsinfo ++++++
--- /var/tmp/diff_new_pack.JHEcS3/_old  2021-09-16 23:17:39.563983883 +0200
+++ /var/tmp/diff_new_pack.JHEcS3/_new  2021-09-16 23:17:39.563983883 +0200
@@ -1,5 +1,5 @@
 name: seatd
-version: 0.6.0
-mtime: 1631361764
-commit: 3ad9164a896eacffd27588f5b1fd6ea3e0bcd92d
+version: 0.6.2
+mtime: 1631747262
+commit: 0f20175752b7b11a5c66070b2dedc4cf8716d107
 

Reply via email to