Author: mav
Date: Sun Apr 23 07:35:51 2017
New Revision: 317320
URL: https://svnweb.freebsd.org/changeset/base/317320

Log:
  MFC r316653: Fix few minor issues found by Clang Analyzer.

Modified:
  stable/10/sys/cam/ctl/ctl.c
  stable/10/sys/cam/ctl/ctl_frontend_iscsi.c
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/sys/cam/ctl/ctl.c
==============================================================================
--- stable/10/sys/cam/ctl/ctl.c Sun Apr 23 07:35:10 2017        (r317319)
+++ stable/10/sys/cam/ctl/ctl.c Sun Apr 23 07:35:51 2017        (r317320)
@@ -7038,7 +7038,7 @@ ctl_get_lba_status(struct ctl_scsiio *ct
        lbalen->len = total_len;
        lbalen->flags = 0;
        retval = lun->backend->config_read((union ctl_io *)ctsio);
-       return (CTL_RETVAL_COMPLETE);
+       return (retval);
 }
 
 int

Modified: stable/10/sys/cam/ctl/ctl_frontend_iscsi.c
==============================================================================
--- stable/10/sys/cam/ctl/ctl_frontend_iscsi.c  Sun Apr 23 07:35:10 2017        
(r317319)
+++ stable/10/sys/cam/ctl/ctl_frontend_iscsi.c  Sun Apr 23 07:35:51 2017        
(r317320)
@@ -318,11 +318,10 @@ cfiscsi_pdu_handle(struct icl_pdu *reque
 static void
 cfiscsi_receive_callback(struct icl_pdu *request)
 {
+#ifdef ICL_KERNEL_PROXY
        struct cfiscsi_session *cs;
 
        cs = PDU_SESSION(request);
-
-#ifdef ICL_KERNEL_PROXY
        if (cs->cs_waiting_for_ctld || cs->cs_login_phase) {
                if (cs->cs_login_pdu == NULL)
                        cs->cs_login_pdu = request;
@@ -1652,6 +1651,13 @@ cfiscsi_ioctl_list(struct ctl_iscsi *ci)
        sbuf_finish(sb);
 
        error = copyout(sbuf_data(sb), cilp->conn_xml, sbuf_len(sb) + 1);
+       if (error != 0) {
+               sbuf_delete(sb);
+               snprintf(ci->error_str, sizeof(ci->error_str),
+                   "copyout failed with error %d", error);
+               ci->status = CTL_ISCSI_ERROR;
+               return;
+       }
        cilp->fill_len = sbuf_len(sb) + 1;
        ci->status = CTL_ISCSI_OK;
        sbuf_delete(sb);
@@ -2082,9 +2088,9 @@ cfiscsi_ioctl_port_create(struct ctl_req
        retval = ctl_port_register(port);
        if (retval != 0) {
                ctl_free_opts(&port->options);
-               cfiscsi_target_release(ct);
                free(port->port_devid, M_CFISCSI);
                free(port->target_devid, M_CFISCSI);
+               cfiscsi_target_release(ct);
                req->status = CTL_LUN_ERROR;
                snprintf(req->error_str, sizeof(req->error_str),
                    "ctl_port_register() failed with error %d", retval);
_______________________________________________
svn-src-stable-10@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-stable-10
To unsubscribe, send any mail to "svn-src-stable-10-unsubscr...@freebsd.org"

Reply via email to