Fix NULL dereferencing 94/317094/1
authorJaehyun Kim <jeik01.kim@samsung.com>
Mon, 11 Mar 2024 06:03:54 +0000 (15:03 +0900)
committerJaehyun Kim <jeik01.kim@samsung.com>
Wed, 4 Sep 2024 02:52:05 +0000 (11:52 +0900)
Change-Id: I6f261d230e823b086b02fe39c45f2ba957bbdb08
Signed-off-by: Jaehyun Kim <jeik01.kim@samsung.com>
src/vpnsvc.c

index 922502a125d68df5821b6568a0eacd0dc0d7c0bb..b17e7a2fcec4e1c1e31c21cec033f22b8484e4e2 100755 (executable)
@@ -56,6 +56,12 @@ gboolean handle_vpn_init(Vpnsvc *object,
        if (fd_list_length <= 0)
                DBG("D-Bus Message doesn't contain any fd!");
 
+       if (!fds) {
+               DBG("fd:NULL\n");
+               vpnsvc_complete_vpn_init(object, invocation, VPNSVC_ERROR_IO_ERROR, 0, "");
+               return TRUE;
+       }
+
        DBG("fd:%d\n", *fds);
 
        result = vpn_service_init(arg_iface_name, arg_iface_name_len, *fds, &handle_s);
@@ -105,6 +111,12 @@ gboolean handle_vpn_protect(Vpnsvc *object,
        if (fd_list_length <= 0)
                DBG("D-Bus Message doesn't contain any fd!");
 
+       if (!fds) {
+               DBG("fd:NULL\n");
+               vpnsvc_complete_vpn_protect(object, invocation, VPNSVC_ERROR_IO_ERROR);
+               return TRUE;
+       }
+
        socket = *fds;
        DBG("vpn_protect, %d, %s\n", socket, arg_dev_name);