get rid of strncpy()
commitc7c857b94e4c935fc6f113a272c964b1521066b6
authorrofl0r <retnyg@gmx.net>
Thu, 19 Jan 2017 00:57:19 +0000 (19 00:57 +0000)
committerrofl0r <retnyg@gmx.net>
Thu, 19 Jan 2017 00:57:22 +0000 (19 00:57 +0000)
treef1b92eeaa8dc923ca34f659d88c6b7b8615502bd
parent11764c5dbb9a118d5f94eaa99d69d1cec2550130
get rid of strncpy()

apparently when i wrote this code many years ago, i believed into
the "strncpy is the safe strcpy" myth, as so many developers still
do to this day. but in fact it's not, and it zeroes the entire
rest of the buffer when there's enough space, making it inefficient,
while when there isn't enough space, it doesn't even zero-terminate.
anyway, the reason i replace it is also that this is the only usage
of strncpy, so that pulls in an additional function from libc into
our static linked apps, while memcpy is heavily used everywhere
already. the output buffer passed to this function is 768 bytes,
so there's no need to check at all, since we're writing at most
255 bytes for the hostname plus another 9 bytes for the socks4a
header. thus we remove the bufsize argument altogether from the
function.
rocksock.c