• Jeff Layton's avatar
    nfs/nfsd/sunrpc: enforce transport requirements for NFSv4 · 5283b03e
    Jeff Layton authored
    NFSv4 requires a transport "that is specified to avoid network
    congestion" (RFC 7530, section 3.1, paragraph 2).  In practical terms,
    that means that you should not run NFSv4 over UDP. The server has never
    enforced that requirement, however.
    
    This patchset fixes this by adding a new flag to the svc_version that
    states that it has these transport requirements. With that, we can check
    that the transport has XPT_CONG_CTRL set before processing an RPC. If it
    doesn't we reject it with RPC_PROG_MISMATCH.
    Signed-off-by: default avatarJeff Layton <jlayton@redhat.com>
    Signed-off-by: default avatarJ. Bruce Fields <bfields@redhat.com>
    5283b03e
nfs4proc.c 71.5 KB