From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Date: Tue, 26 Nov 2019 08:27:15 +0100 From: Michael Olbrich Message-ID: <20191126072715.u6ag2je7d5hxchtm@pengutronix.de> References: <20191126021955.21475-1-alex.aring@gmail.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20191126021955.21475-1-alex.aring@gmail.com> Subject: Re: [ptxdist] [PATCHv2] config: boardsetup: add nfs client specifications List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: ptxdist@pengutronix.de Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ptxdist-bounces@pengutronix.de Sender: "ptxdist" To: ptxdist@pengutronix.de Cc: Alexander Aring On Mon, Nov 25, 2019 at 09:19:55PM -0500, Alexander Aring wrote: > This patch adds additional client specifications for the nfsroot mount. > The default value is the same as it was hardcoded before. This offers to > change this line without maintaining the whole file in a separate BSP. > > The client specifications is part of the official export format which is > set right after the directory which is exported, for more information > lookup: > > https://linux.die.net/man/8/unfsd > > Signed-off-by: Alexander Aring > --- > changes since v2: > s/client_specficiations/client_specificiations/ I already pushed the first version to master when Roland noticed the typo. I have a fix for it in my queue. Michael > config/boardsetup/Kconfig | 17 +++++++++++++++++ > scripts/lib/ptxd_make_nfsd.sh | 7 ++++++- > 2 files changed, 23 insertions(+), 1 deletion(-) > > diff --git a/config/boardsetup/Kconfig b/config/boardsetup/Kconfig > index 8ffa27224..2d3791807 100644 > --- a/config/boardsetup/Kconfig > +++ b/config/boardsetup/Kconfig > @@ -39,6 +39,23 @@ config BOARDSETUP_NFSROOT_PATH > above given path is exported by nfs server. This field will be ignored > if you don't use nfsroot. > > +config BOARDSETUP_NFSROOT_CLIENT_SPECIFICATIONS > + string > + prompt "nfsroot client specifications" > + default "(rw,no_root_squash)" > + help > + Specify the list of client specifications for the nfsroot export. > + Example: "1.2.3.4(rw) 192.168.2.0/24(ro,all_squash)" > + > + Clients can be specified using either a hostname, an IP address, or an IP > + network. Networks can be given by specifying the number of leading 1 bits > + in the netmask or by giving the full netmask. If the hostname is empty, the > + directory is exported to everyone. > + > + Options can follow a client specification and have to be enclosed in > + parenthesis, with the opening paren directly following the client name or > + address. If no options are given, ro and root_squash are enabled by default. > + > config BOARDSETUP_TFTP_PATH > string > prompt "tftp path" > diff --git a/scripts/lib/ptxd_make_nfsd.sh b/scripts/lib/ptxd_make_nfsd.sh > index 0bc9c906b..c3e75edf7 100644 > --- a/scripts/lib/ptxd_make_nfsd.sh > +++ b/scripts/lib/ptxd_make_nfsd.sh > @@ -8,6 +8,7 @@ > > ptxd_make_nfsd_exec() { > local port > + local client_specificiations > local root="/$(basename "${ptx_nfsroot}")" > local base="$(dirname "${ptx_nfsroot}")" > > @@ -15,11 +16,15 @@ ptxd_make_nfsd_exec() { > port=2049 > fi > > + if ! client_specificiations="$(ptxd_get_kconfig "${PTXDIST_BOARDSETUP}" "PTXCONF_BOARDSETUP_NFSROOT_CLIENT_SPECIFICATIONS")"; then > + client_specificiations="(rw,no_root_squash)" > + fi > + > echo > echo "Mount rootfs with nfsroot=${root},v3,tcp,port=${port},mountport=${port}" > echo > > - echo "/ (rw,no_root_squash)" > "${PTXDIST_TEMPDIR}/exports" && > + echo "/ ${client_specificiations}" > "${PTXDIST_TEMPDIR}/exports" && > UNFS_BASE="${base}" unfsd -e "${PTXDIST_TEMPDIR}/exports" -n ${port} -m ${port} -p -d > } > export -f ptxd_make_nfsd_exec > -- > 2.20.1 > > > _______________________________________________ > ptxdist mailing list > ptxdist@pengutronix.de > -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | _______________________________________________ ptxdist mailing list ptxdist@pengutronix.de