Actually, I think "plen = sizeof(buf);" may be better.
Best Regards
Nan Xiao


On Tue, Oct 24, 2017 at 8:52 PM, Alexander Bluhm
<alexander.bl...@gmx.net> 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");

Reply via email to