On Tue, Oct 24, 2017 at 02:52:39PM +0200, Alexander Bluhm wrote:
> On Tue, Oct 24, 2017 at 07:44:02PM +0800, Nan Xiao wrote:
> > Use BUFSIZE instead of hard-code in netcat.c, FYI. Thanks!
> 
> As this buffer is used with MSG_PEEK and its content is discarded,
> the size does not really matter.  The complicated logic seems to
> be a leftover from the -j jumbo option.
> 
> I think this is simpler.
> 
> bluhm
> 
> Index: usr.bin/nc/netcat.c
> ===================================================================
> RCS file: /data/mirror/openbsd/cvs/src/usr.bin/nc/netcat.c,v
> retrieving revision 1.187
> diff -u -p -r1.187 netcat.c
> --- usr.bin/nc/netcat.c       15 Jul 2017 17:27:39 -0000      1.187
> +++ usr.bin/nc/netcat.c       24 Oct 2017 12:41:38 -0000
> @@ -563,13 +563,12 @@ main(int argc, char *argv[])
>                                * initially to wait for a caller, then use
>                                * the regular functions to talk to the caller.
>                                */
> -                             int rv, plen;
> -                             char buf[16384];
> +                             int rv;
> +                             char buf[2048];
>                               struct sockaddr_storage z;
>  
>                               len = sizeof(z);
> -                             plen = 2048;
> -                             rv = recvfrom(s, buf, plen, MSG_PEEK,
> +                             rv = recvfrom(s, buf, sizeof(buf), MSG_PEEK,
>                                   (struct sockaddr *)&z, &len);
>                               if (rv < 0)
>                                       err(1, "recvfrom");
> 

Doesn't this have a performance impact? A bigger buffer like the original
seems better to me.

-- 
Kind regards,
Hiltjo

Reply via email to