Author: ian
Date: Sat Mar 14 18:42:30 2015
New Revision: 279999
URL: https://svnweb.freebsd.org/changeset/base/279999

Log:
  Use sbuf_new_for_sysctl() instead of plain sbuf_new() to ensure sysctl
  string returned to userland is nulterminated.
  
  PR:           195668

Modified:
  head/sys/kern/sched_ule.c

Modified: head/sys/kern/sched_ule.c
==============================================================================
--- head/sys/kern/sched_ule.c   Sat Mar 14 18:38:07 2015        (r279998)
+++ head/sys/kern/sched_ule.c   Sat Mar 14 18:42:30 2015        (r279999)
@@ -2830,7 +2830,7 @@ sysctl_kern_sched_topology_spec(SYSCTL_H
 
        KASSERT(cpu_top != NULL, ("cpu_top isn't initialized"));
 
-       topo = sbuf_new(NULL, NULL, 500, SBUF_AUTOEXTEND);
+       topo = sbuf_new_for_sysctl(NULL, NULL, 512, req);
        if (topo == NULL)
                return (ENOMEM);
 
@@ -2839,8 +2839,7 @@ sysctl_kern_sched_topology_spec(SYSCTL_H
        sbuf_printf(topo, "</groups>\n");
 
        if (err == 0) {
-               sbuf_finish(topo);
-               err = SYSCTL_OUT(req, sbuf_data(topo), sbuf_len(topo));
+               err = sbuf_finish(topo);
        }
        sbuf_delete(topo);
        return (err);
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to