• Chuck Lever's avatar
    NFS: Introduce new-style XDR encoding functions for NFSv2 · 25a0866c
    Chuck Lever authored
    We're interested in taking advantage of the safety benefits of
    xdr_streams.  These data structures allow more careful checking for
    buffer overflow while encoding.  More careful type checking is also
    introduced in the new functions.
    
    For efficiency, we also eventually want to be able to pass xdr_streams
    from call_encode() to all XDR encoding functions, rather than building
    an xdr_stream in every XDR encoding function in the kernel.  To do
    this means all encoders must be ready to handle a passed-in
    xdr_stream.
    
    The new encoders follow the modern paradigm for XDR encoders: BUG on
    any error, and always return a zero status code.
    
    Static helper functions are left without the "inline" directive.  This
    allows the compiler to choose automatically how to optimize these for
    size or speed.
    Signed-off-by: default avatarChuck Lever <chuck.lever@oracle.com>
    Tested-by: default avatarJ. Bruce Fields <bfields@redhat.com>
    Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
    25a0866c
nfs2xdr.c 27.1 KB