Linux 4.3-rc4 Kernel Released: Adds A New & Better String Copy Function

Written by Michael Larabel in Linux Kernel on 4 October 2015 at 12:46 PM EDT. 8 Comments
LINUX KERNEL
Linus Torvalds has tagged the Linux 4.3-rc4 kernel a few minutes ago in Git. Besides bug-fixing, this new kernel update adds a post-merge-window feature of a new and more secure string copy function for developers to utilize in the future.

In the 4.3-rc4 release announcement, Torvalds noted, "Things look fairly normal. We have noticeably fewer commits than rc3 (which was fairly big), and I don't see anything unusually alarming. The statistics look pretty normal too: just under half of the patch is drivers (drm continues to be noticeable, but there's infiniband, mmc, input layer etc). About a quarter is arch updates (m68k, MIPS, x86) and the final quarter is solidly "misc" (doc updates, tools, scripts, scheduler, mm..)."

Not mentioned in the release announcement was the honoring of a pull request sent back in during the Linux 4.3 merge window. The new functionality is the strscpy() string copy function. This strscpy() function is designed to be easier and more secure than the kernel's existing strncpy() and strlcpy() functions. Linus considers the current string copy functions to be "horrible nasty interfaces that have serious and irredeemable problems" relating to useless return values, not ensuring NUL termination, etc.

While Linus likes this new strscpy() function for the kernel, he held off on pulling the code to think about it and forewarning he doesn't want developers going around now and making use of this new function for currently-working code when it could lead to problems if ill-tested. Basically, if it isn't broke, don't fix it. He commented, "Every time we introduce a new-and-improved interface, people start doing these interminable series of trivial conversion patches. And every time that happens, somebody does some silly mistake, and the conversion patch to the improved interface actually makes things worse. Because the patch is mindnumbing and trivial, nobody has the attention span to look at it carefully, and it's usually done over large swatches of source code which means that not every conversion gets tested." More comments on the strscpy() kernel function via this Git pull. With Linux 4.3-rc4 the interface is there, but isn't used yet.

In case you missed it, there is the Linux 4.3 feature overview that outlines all of the new/changed functionality that gets me excited. The kernel daily Git code continues to be benchmarked on many Ubuntu and Fedora boxes automatically over at LinuxBenchmarking.com.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week