pass: Fix to return proper value for dbus signal handler 95/281895/1
authorSeung-Woo Kim <sw0312.kim@samsung.com>
Fri, 23 Sep 2022 02:03:57 +0000 (11:03 +0900)
committerSeung-Woo Kim <sw0312.kim@samsung.com>
Fri, 23 Sep 2022 04:47:20 +0000 (13:47 +0900)
From the dbus-stub generated code, signal handler should return
TRUE if it handles invocation. Even ret value is error, fix to
return TRUE after handling invocation.

Below is dbus-stub comment about signal handler:
  If a signal handler returns %TRUE, it means the signal handler
  will handle the invocation and no other signal handlers will
  run. If no signal handler handles the invocation, the
  %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
  Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the
           invocation was handled,
           %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let
           other signal handlers run.

NOTE: GLIB related asan heap-buffer-overflow issue is from the
wrong return.

Change-Id: I11e684101efb68e625a742b4d0655056299fd106
Suggested-by: Sangjung Woo <sangjung.woo@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
src/pass/pass.c

index 112fa81..295e23f 100644 (file)
@@ -148,7 +148,7 @@ static gboolean dbus_cb_core_start(SystemPassCore *obj,
 
        _E("failed to initialize PASS Core of the daemon "
                        "in dbus callback for a start message\n");
-       return FALSE;
+       return TRUE;
 }
 
 /**