Date: Mon, 27 Oct 2014 11:21:48 +0000 (UTC) From: Hans Petter Selasky <hselasky@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r273733 - head/sys/netinet/cc Message-ID: <201410271121.s9RBLmOv095539@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: hselasky Date: Mon Oct 27 11:21:47 2014 New Revision: 273733 URL: https://svnweb.freebsd.org/changeset/base/273733 Log: Make assignments to "net.inet.tcp.cc.algorithm" work by fixing a bad string comparison. MFC after: 3 days Reported by: Jukka Ukkonen <jau789@gmail.com> Sponsored by: Mellanox Technologies Modified: head/sys/netinet/cc/cc.c Modified: head/sys/netinet/cc/cc.c ============================================================================== --- head/sys/netinet/cc/cc.c Mon Oct 27 10:34:09 2014 (r273732) +++ head/sys/netinet/cc/cc.c Mon Oct 27 11:21:47 2014 (r273733) @@ -106,11 +106,13 @@ cc_default_algo(SYSCTL_HANDLER_ARGS) /* Find algo with specified name and set it to default. */ CC_LIST_RLOCK(); STAILQ_FOREACH(funcs, &cc_list, entries) { - if (strncmp((char *)req->newptr, funcs->name, - TCP_CA_NAME_MAX) == 0) { - found = 1; - V_default_cc_ptr = funcs; - } + /* NOTE: "newptr" is not zero terminated */ + if (req->newlen != strlen(funcs->name)) + continue; + if (bcmp(req->newptr, funcs->name, req->newlen)) + continue; + found = 1; + V_default_cc_ptr = funcs; } CC_LIST_RUNLOCK();
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201410271121.s9RBLmOv095539>