kernel: add NFS4 client support

Adds NFS4 client support:
 1. Package kmod-fs-nfs is split into kmod-fs-nfs (nfs.ko) and
    kmod-fs-nfs-v3 (nfsv3.ko).
 2. A new package kmod-fs-nfs-v4 (nfsv4.ko) is created.
 3. Package kmod-fs-nfs-common-v4 is renamed to kmod-fs-nfs-rpcsec
    and includes additional module rpcsec_gss_krb5.ko.
    CONFIG_NFS_V4 goes into kmod-fs-nfs-v4, CONFIG_NFSD_V4 (NFS4
    server) is removed. Missing kernel module oid_registry.ko
    needed by auth_rpcgss.ko is added to the package.

A new package kmod-crypto-cts needed by rpcsec_gss_krb5.ko is
also created.

Signed-off-by: Marcin Jurkowski <marcin1j@gmail.com>
[add dependency to kmod-crypto-ecb in fs-nfs-common-rpcsec]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
This commit is contained in:
Marcin Jurkowski 2017-10-27 00:46:22 +02:00 committed by Hauke Mehrtens
parent 9f13f98c8c
commit 06e1b90404
2 changed files with 68 additions and 17 deletions

View file

@ -363,6 +363,17 @@ endef
$(eval $(call KernelPackage,crypto-ecb)) $(eval $(call KernelPackage,crypto-ecb))
define KernelPackage/crypto-cts
TITLE:=Cipher Text Stealing CryptoAPI module
DEPENDS:=+kmod-crypto-manager
KCONFIG:=CONFIG_CRYPTO_CTS
FILES:=$(LINUX_DIR)/crypto/cts.ko
AUTOLOAD:=$(call AutoLoad,09,cts)
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-cts))
define KernelPackage/crypto-hmac define KernelPackage/crypto-hmac
TITLE:=HMAC digest CryptoAPI module TITLE:=HMAC digest CryptoAPI module

View file

@ -317,24 +317,54 @@ $(eval $(call KernelPackage,fs-msdos))
define KernelPackage/fs-nfs define KernelPackage/fs-nfs
SUBMENU:=$(FS_MENU) SUBMENU:=$(FS_MENU)
TITLE:=NFS filesystem support TITLE:=NFS filesystem client support
DEPENDS:=+kmod-fs-nfs-common +kmod-dnsresolver DEPENDS:=+kmod-fs-nfs-common +kmod-dnsresolver
KCONFIG:= \ KCONFIG:= \
CONFIG_NFS_FS \ CONFIG_NFS_FS \
CONFIG_NFS_USE_LEGACY_DNS=n \ CONFIG_NFS_USE_LEGACY_DNS=n \
CONFIG_NFS_USE_NEW_IDMAPPER=n CONFIG_NFS_USE_NEW_IDMAPPER=n
FILES:= \ FILES:= \
$(LINUX_DIR)/fs/nfs/nfs.ko \ $(LINUX_DIR)/fs/nfs/nfs.ko
$(LINUX_DIR)/fs/nfs/nfsv3.ko AUTOLOAD:=$(call AutoLoad,40,nfs)
AUTOLOAD:=$(call AutoLoad,40,nfs nfsv3)
endef endef
define KernelPackage/fs-nfs/description define KernelPackage/fs-nfs/description
Kernel module for NFS support Kernel module for NFS client support
endef endef
$(eval $(call KernelPackage,fs-nfs)) $(eval $(call KernelPackage,fs-nfs))
define KernelPackage/fs-nfs-v3
SUBMENU:=$(FS_MENU)
TITLE:=NFS3 filesystem client support
DEPENDS:=+kmod-fs-nfs
FILES:= \
$(LINUX_DIR)/fs/nfs/nfsv3.ko
AUTOLOAD:=$(call AutoLoad,41,nfsv3)
endef
define KernelPackage/fs-nfs-v3/description
Kernel module for NFS v3 client support
endef
$(eval $(call KernelPackage,fs-nfs-v3))
define KernelPackage/fs-nfs-v4
SUBMENU:=$(FS_MENU)
TITLE:=NFS4 filesystem client support
DEPENDS:=+kmod-fs-nfs
KCONFIG:= \
CONFIG_NFS_V4=y
FILES:= \
$(LINUX_DIR)/fs/nfs/nfsv4.ko
AUTOLOAD:=$(call AutoLoad,41,nfsv4)
endef
define KernelPackage/fs-nfs-v4/description
Kernel module for NFS v4 support
endef
$(eval $(call KernelPackage,fs-nfs-v4))
define KernelPackage/fs-nfs-common define KernelPackage/fs-nfs-common
SUBMENU:=$(FS_MENU) SUBMENU:=$(FS_MENU)
@ -353,23 +383,33 @@ endef
$(eval $(call KernelPackage,fs-nfs-common)) $(eval $(call KernelPackage,fs-nfs-common))
define KernelPackage/fs-nfs-common-v4 define KernelPackage/fs-nfs-common-rpcsec
SUBMENU:=$(FS_MENU) SUBMENU:=$(FS_MENU)
TITLE:=Common NFS V4 filesystem modules TITLE:=NFS Secure RPC
KCONFIG+=\ DEPENDS:= \
CONFIG_SUNRPC_GSS\ +kmod-fs-nfs-common \
CONFIG_NFS_V4=y\ +kmod-crypto-des \
CONFIG_NFSD_V4=y +kmod-crypto-cbc \
DEPENDS:= @BROKEN +kmod-crypto-cts \
FILES+=$(LINUX_DIR)/net/sunrpc/auth_gss/auth_rpcgss.ko +kmod-crypto-md5 \
AUTOLOAD=$(call AutoLoad,30,auth_rpcgss) +kmod-crypto-sha1 \
+kmod-crypto-hmac \
+kmod-crypto-ecb
KCONFIG:= \
CONFIG_SUNRPC_GSS \
CONFIG_RPCSEC_GSS_KRB5
FILES:= \
$(LINUX_DIR)/lib/oid_registry.ko \
$(LINUX_DIR)/net/sunrpc/auth_gss/auth_rpcgss.ko \
$(LINUX_DIR)/net/sunrpc/auth_gss/rpcsec_gss_krb5.ko
AUTOLOAD:=$(call AutoLoad,31,oid_registry auth_rpcgss rpcsec_gss_krb5)
endef endef
define KernelPackage/fs-nfs-common-v4/description define KernelPackage/fs-nfs-common-rpcsec/description
Kernel modules for NFS V4 & NFSD V4 kernel support Kernel modules for NFS Secure RPC
endef endef
$(eval $(call KernelPackage,fs-nfs-common-v4)) $(eval $(call KernelPackage,fs-nfs-common-rpcsec))
define KernelPackage/fs-nfsd define KernelPackage/fs-nfsd