• Chuck Lever's avatar
    SUNRPC: Load GSS kernel module by OID · f783288f
    Chuck Lever authored
    The current GSS mech switch can find and load GSS pseudoflavor
    modules by name ("krb5") or pseudoflavor number ("390003"), but
    cannot find GSS modules by GSS tuple:
    
      [ "1.2.840.113554.1.2.2", GSS_C_QOP_DEFAULT, RPC_GSS_SVC_NONE ]
    
    This is important when dealing with a SECINFO request.  A SECINFO
    reply contains a list of flavors the server supports for the
    requested export, but GSS flavors also have a GSS tuple that maps
    to a pseudoflavor (like 390003 for krb5).
    
    If the GSS module that supports the OID in the tuple is not loaded,
    our client is not able to load that module dynamically to support
    that pseudoflavor.
    
    Add a way for the GSS mech switch to load GSS pseudoflavor support
    by OID before searching for the pseudoflavor that matches the OID
    and service.
    Signed-off-by: default avatarChuck Lever <chuck.lever@oracle.com>
    Cc: David Howells <dhowells@redhat.com>
    Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
    f783288f
gss_krb5_mech.c 19.9 KB