svn commit: r307956 - stable/11/sys/cam/scsi

Alexander Motin mav at FreeBSD.org
Wed Oct 26 07:45:16 UTC 2016


Author: mav
Date: Wed Oct 26 07:45:15 2016
New Revision: 307956
URL: https://svnweb.freebsd.org/changeset/base/307956

Log:
  MFC r307132: Use copyout() instead of pointing sbuf to user-space buffer.

Modified:
  stable/11/sys/cam/scsi/scsi_enc_ses.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/cam/scsi/scsi_enc_ses.c
==============================================================================
--- stable/11/sys/cam/scsi/scsi_enc_ses.c	Wed Oct 26 05:26:59 2016	(r307955)
+++ stable/11/sys/cam/scsi/scsi_enc_ses.c	Wed Oct 26 07:45:15 2016	(r307956)
@@ -2672,13 +2672,13 @@ ses_get_elm_devnames(enc_softc_t *enc, e
 	if (len < 0)
 		return (EINVAL);
 
-	sbuf_new(&sb, elmdn->elm_devnames, len, 0);
-
 	cam_periph_unlock(enc->periph);
+	sbuf_new(&sb, NULL, len, SBUF_FIXEDLEN);
 	ses_paths_iter(enc, &enc->enc_cache.elm_map[elmdn->elm_idx],
 		       ses_elmdevname_callback, &sb);
 	sbuf_finish(&sb);
 	elmdn->elm_names_len = sbuf_len(&sb);
+	copyout(sbuf_data(&sb), elmdn->elm_devnames, elmdn->elm_names_len + 1);
 	cam_periph_lock(enc->periph);
 	return (elmdn->elm_names_len > 0 ? 0 : ENODEV);
 }


More information about the svn-src-all mailing list