return ret;
 
        req.enable = enable;
-       strcpy(req.service_path, pds->service_path);
+       strscpy(req.service_path, pds->service_path, sizeof(req.service_path));
 
        ret = qmi_send_request(&pdr->notifier_hdl, &pds->addr,
                               &txn, SERVREG_REGISTER_LISTENER_REQ,
                return ret;
 
        req.transaction_id = tid;
-       strcpy(req.service_path, pds->service_path);
+       strscpy(req.service_path, pds->service_path, sizeof(req.service_path));
 
        ret = qmi_send_request(&pdr->notifier_hdl, &pds->addr,
                               &txn, SERVREG_SET_ACK_REQ,
                return -ENOMEM;
 
        /* Prepare req message */
-       strcpy(req.service_name, pds->service_name);
+       strscpy(req.service_name, pds->service_name, sizeof(req.service_name));
        req.domain_offset_valid = true;
        req.domain_offset = 0;
 
                return ERR_PTR(-ENOMEM);
 
        pds->service = SERVREG_NOTIFIER_SERVICE;
-       strcpy(pds->service_name, service_name);
-       strcpy(pds->service_path, service_path);
+       strscpy(pds->service_name, service_name, sizeof(pds->service_name));
+       strscpy(pds->service_path, service_path, sizeof(pds->service_path));
        pds->need_locator_lookup = true;
 
        mutex_lock(&pdr->list_lock);
                        break;
 
                /* Prepare req message */
-               strcpy(req.service_path, pds->service_path);
+               strscpy(req.service_path, pds->service_path, sizeof(req.service_path));
                addr = pds->addr;
                break;
        }