Subject: lib/11464: libc won't do RPC packets for UDP larger than 8k total
To: None <firstname.lastname@example.org>
From: None <email@example.com>
Date: 11/10/2000 09:47:21
>Synopsis: libc won't do RPC packets for UDP larger than 8k total
>Arrival-Date: Fri Nov 10 09:47:00 PST 2000
>Originator: Matthew Fredette
>Release: NetBSD/i386 1.5_ALPHA
NetBSD sofa.home 1.5_ALPHA NetBSD 1.5_ALPHA (SOFA) #16: Thu Aug 31 17:59:32 EDT 2000
You cannot write an RPC server that will receive or send RPC UDP
packets larger than 8192 bytes when fully assembled. The function
__rpc_get_t_size (in lib/libc/rpc/rpc_generic.c) enforces this.
For example, this prevents writing a userspace NFS server that can
handle 8k data blocks in reads or writes.
Inspection. __rpc_get_t_size clips any requested buffer size
for UDP to 8192.
Increase this value. I'm not sure to what; I'm not familiar
enough with how RPCs get encoded. Maybe an additional 256 or
512 bytes would do it?