diff mbox series

[nfs-utils,RFC,6/7] nfsdcld: add /etc/nfs.conf support

Message ID 20181106183620.18609-7-smayhew@redhat.com (mailing list archive)
State New, archived
Headers show
Series restore nfsdcld | expand

Commit Message

Scott Mayhew Nov. 6, 2018, 6:36 p.m. UTC
Signed-off-by: Scott Mayhew <smayhew@redhat.com>
---
 nfs.conf                  |  4 ++++
 utils/nfsdcld/nfsdcld.c   | 13 +++++++++++++
 utils/nfsdcld/nfsdcld.man | 15 +++++++++++++++
 3 files changed, 32 insertions(+)

Comments

Steve Dickson Nov. 8, 2018, noon UTC | #1
On 11/6/18 1:36 PM, Scott Mayhew wrote:
> Signed-off-by: Scott Mayhew <smayhew@redhat.com>
> ---
>  nfs.conf                  |  4 ++++
>  utils/nfsdcld/nfsdcld.c   | 13 +++++++++++++
>  utils/nfsdcld/nfsdcld.man | 15 +++++++++++++++
>  3 files changed, 32 insertions(+)
> 
> diff --git a/nfs.conf b/nfs.conf
> index 0d0ec9b..2157b9c 100644
> --- a/nfs.conf
> +++ b/nfs.conf
> @@ -33,6 +33,10 @@
>  # state-directory-path=/var/lib/nfs
>  # ha-callout=
>  #
> +#[nfsdcld]
Staring very recently, all sections are now un-commented
 
> +# debug=0
> +# storagedir=/var/lib/nfs/nfsdcld
Does this also need a  
   # pipefsdir=/var/lib/nfs/rpc_pipefs

Or are you grabbing that from the [general] section?

steved.
> +#
>  #[nfsdcltrack]
>  # debug=0
>  # storagedir=/var/lib/nfs/nfsdcltrack
> diff --git a/utils/nfsdcld/nfsdcld.c b/utils/nfsdcld/nfsdcld.c
> index 272c7c5..313c68f 100644
> --- a/utils/nfsdcld/nfsdcld.c
> +++ b/utils/nfsdcld/nfsdcld.c
> @@ -45,6 +45,7 @@
>  #include "cld-internal.h"
>  #include "sqlite.h"
>  #include "../mount/version.h"
> +#include "conffile.h"
>  
>  #ifndef DEFAULT_PIPEFS_DIR
>  #define DEFAULT_PIPEFS_DIR NFS_STATEDIR "/rpc_pipefs"
> @@ -640,6 +641,7 @@ main(int argc, char **argv)
>  	char *progname;
>  	char *storagedir = CLD_DEFAULT_STORAGEDIR;
>  	struct cld_client clnt;
> +	char *s;
>  
>  	memset(&clnt, 0, sizeof(clnt));
>  
> @@ -653,6 +655,17 @@ main(int argc, char **argv)
>  	xlog_syslog(0);
>  	xlog_stderr(1);
>  
> +	conf_init_file(NFS_CONFFILE);
> +	s = conf_get_str("general", "pipefs-directory");
> +	if (s)
> +		strlcpy(pipefs_dir, s, sizeof(pipefs_dir));
> +	s = conf_get_str("nfsdcld", "storagedir");
> +	if (s)
> +		storagedir = s;
> +	rc = conf_get_num("nfsdcld", "debug", 0);
> +	if (rc > 0)
> +		xlog_config(D_ALL, 1);
> +
>  	/* process command-line options */
>  	while ((arg = getopt_long(argc, argv, "hdFp:s:", longopts,
>  				  NULL)) != EOF) {
> diff --git a/utils/nfsdcld/nfsdcld.man b/utils/nfsdcld/nfsdcld.man
> index b607ba6..c271d14 100644
> --- a/utils/nfsdcld/nfsdcld.man
> +++ b/utils/nfsdcld/nfsdcld.man
> @@ -163,6 +163,21 @@ Location of the rpc_pipefs filesystem. The default value is
>  .IX Item "-s storagedir, --storagedir=storage_dir"
>  Directory where stable storage information should be kept. The default
>  value is \fI/var/lib/nfs/nfsdcld\fR.
> +.SH "CONFIGURATION FILE"
> +.IX Header "CONFIGURATION FILE"
> +The following values are recognized in the \fB[nfsdcld]\fR section
> +of the \fI/etc/nfs.conf\fR configuration file:
> +.IP "\fBstoragedir\fR" 4
> +.IX Item "storagedir"
> +Equivalent to \fB\-s\fR/\fB\-\-storagedir\fR.
> +.IP "\fBdebug\fR" 4
> +.IX Item "debug"
> +Setting "debug = 1" is equivalent to \fB\-d\fR/\fB\-\-debug\fR.
> +.LP
> +In addition, the following value is recognized from the \fB[general]\fR section:
> +.IP "\fBpipefs\-directory\fR" 4
> +.IX Item "pipefs-directory"
> +Equivalent to \fB\-p\fR/\fB\-\-pipefsdir\fR.
>  .SH "NOTES"
>  .IX Header "NOTES"
>  The Linux kernel NFSv4 server has historically tracked this information
>
Scott Mayhew Nov. 8, 2018, 1:09 p.m. UTC | #2
On Thu, 08 Nov 2018, Steve Dickson wrote:

> 
> 
> On 11/6/18 1:36 PM, Scott Mayhew wrote:
> > Signed-off-by: Scott Mayhew <smayhew@redhat.com>
> > ---
> >  nfs.conf                  |  4 ++++
> >  utils/nfsdcld/nfsdcld.c   | 13 +++++++++++++
> >  utils/nfsdcld/nfsdcld.man | 15 +++++++++++++++
> >  3 files changed, 32 insertions(+)
> > 
> > diff --git a/nfs.conf b/nfs.conf
> > index 0d0ec9b..2157b9c 100644
> > --- a/nfs.conf
> > +++ b/nfs.conf
> > @@ -33,6 +33,10 @@
> >  # state-directory-path=/var/lib/nfs
> >  # ha-callout=
> >  #
> > +#[nfsdcld]
> Staring very recently, all sections are now un-commented

Okay, I see that now.

>  
> > +# debug=0
> > +# storagedir=/var/lib/nfs/nfsdcld
> Does this also need a  
>    # pipefsdir=/var/lib/nfs/rpc_pipefs
> 
> Or are you grabbing that from the [general] section?

Yep, that comes from the general section, just like the other pipefs
users.

-Scott

> 
> steved.
> > +#
> >  #[nfsdcltrack]
> >  # debug=0
> >  # storagedir=/var/lib/nfs/nfsdcltrack
> > diff --git a/utils/nfsdcld/nfsdcld.c b/utils/nfsdcld/nfsdcld.c
> > index 272c7c5..313c68f 100644
> > --- a/utils/nfsdcld/nfsdcld.c
> > +++ b/utils/nfsdcld/nfsdcld.c
> > @@ -45,6 +45,7 @@
> >  #include "cld-internal.h"
> >  #include "sqlite.h"
> >  #include "../mount/version.h"
> > +#include "conffile.h"
> >  
> >  #ifndef DEFAULT_PIPEFS_DIR
> >  #define DEFAULT_PIPEFS_DIR NFS_STATEDIR "/rpc_pipefs"
> > @@ -640,6 +641,7 @@ main(int argc, char **argv)
> >  	char *progname;
> >  	char *storagedir = CLD_DEFAULT_STORAGEDIR;
> >  	struct cld_client clnt;
> > +	char *s;
> >  
> >  	memset(&clnt, 0, sizeof(clnt));
> >  
> > @@ -653,6 +655,17 @@ main(int argc, char **argv)
> >  	xlog_syslog(0);
> >  	xlog_stderr(1);
> >  
> > +	conf_init_file(NFS_CONFFILE);
> > +	s = conf_get_str("general", "pipefs-directory");
> > +	if (s)
> > +		strlcpy(pipefs_dir, s, sizeof(pipefs_dir));
> > +	s = conf_get_str("nfsdcld", "storagedir");
> > +	if (s)
> > +		storagedir = s;
> > +	rc = conf_get_num("nfsdcld", "debug", 0);
> > +	if (rc > 0)
> > +		xlog_config(D_ALL, 1);
> > +
> >  	/* process command-line options */
> >  	while ((arg = getopt_long(argc, argv, "hdFp:s:", longopts,
> >  				  NULL)) != EOF) {
> > diff --git a/utils/nfsdcld/nfsdcld.man b/utils/nfsdcld/nfsdcld.man
> > index b607ba6..c271d14 100644
> > --- a/utils/nfsdcld/nfsdcld.man
> > +++ b/utils/nfsdcld/nfsdcld.man
> > @@ -163,6 +163,21 @@ Location of the rpc_pipefs filesystem. The default value is
> >  .IX Item "-s storagedir, --storagedir=storage_dir"
> >  Directory where stable storage information should be kept. The default
> >  value is \fI/var/lib/nfs/nfsdcld\fR.
> > +.SH "CONFIGURATION FILE"
> > +.IX Header "CONFIGURATION FILE"
> > +The following values are recognized in the \fB[nfsdcld]\fR section
> > +of the \fI/etc/nfs.conf\fR configuration file:
> > +.IP "\fBstoragedir\fR" 4
> > +.IX Item "storagedir"
> > +Equivalent to \fB\-s\fR/\fB\-\-storagedir\fR.
> > +.IP "\fBdebug\fR" 4
> > +.IX Item "debug"
> > +Setting "debug = 1" is equivalent to \fB\-d\fR/\fB\-\-debug\fR.
> > +.LP
> > +In addition, the following value is recognized from the \fB[general]\fR section:
> > +.IP "\fBpipefs\-directory\fR" 4
> > +.IX Item "pipefs-directory"
> > +Equivalent to \fB\-p\fR/\fB\-\-pipefsdir\fR.
> >  .SH "NOTES"
> >  .IX Header "NOTES"
> >  The Linux kernel NFSv4 server has historically tracked this information
> >
diff mbox series

Patch

diff --git a/nfs.conf b/nfs.conf
index 0d0ec9b..2157b9c 100644
--- a/nfs.conf
+++ b/nfs.conf
@@ -33,6 +33,10 @@ 
 # state-directory-path=/var/lib/nfs
 # ha-callout=
 #
+#[nfsdcld]
+# debug=0
+# storagedir=/var/lib/nfs/nfsdcld
+#
 #[nfsdcltrack]
 # debug=0
 # storagedir=/var/lib/nfs/nfsdcltrack
diff --git a/utils/nfsdcld/nfsdcld.c b/utils/nfsdcld/nfsdcld.c
index 272c7c5..313c68f 100644
--- a/utils/nfsdcld/nfsdcld.c
+++ b/utils/nfsdcld/nfsdcld.c
@@ -45,6 +45,7 @@ 
 #include "cld-internal.h"
 #include "sqlite.h"
 #include "../mount/version.h"
+#include "conffile.h"
 
 #ifndef DEFAULT_PIPEFS_DIR
 #define DEFAULT_PIPEFS_DIR NFS_STATEDIR "/rpc_pipefs"
@@ -640,6 +641,7 @@  main(int argc, char **argv)
 	char *progname;
 	char *storagedir = CLD_DEFAULT_STORAGEDIR;
 	struct cld_client clnt;
+	char *s;
 
 	memset(&clnt, 0, sizeof(clnt));
 
@@ -653,6 +655,17 @@  main(int argc, char **argv)
 	xlog_syslog(0);
 	xlog_stderr(1);
 
+	conf_init_file(NFS_CONFFILE);
+	s = conf_get_str("general", "pipefs-directory");
+	if (s)
+		strlcpy(pipefs_dir, s, sizeof(pipefs_dir));
+	s = conf_get_str("nfsdcld", "storagedir");
+	if (s)
+		storagedir = s;
+	rc = conf_get_num("nfsdcld", "debug", 0);
+	if (rc > 0)
+		xlog_config(D_ALL, 1);
+
 	/* process command-line options */
 	while ((arg = getopt_long(argc, argv, "hdFp:s:", longopts,
 				  NULL)) != EOF) {
diff --git a/utils/nfsdcld/nfsdcld.man b/utils/nfsdcld/nfsdcld.man
index b607ba6..c271d14 100644
--- a/utils/nfsdcld/nfsdcld.man
+++ b/utils/nfsdcld/nfsdcld.man
@@ -163,6 +163,21 @@  Location of the rpc_pipefs filesystem. The default value is
 .IX Item "-s storagedir, --storagedir=storage_dir"
 Directory where stable storage information should be kept. The default
 value is \fI/var/lib/nfs/nfsdcld\fR.
+.SH "CONFIGURATION FILE"
+.IX Header "CONFIGURATION FILE"
+The following values are recognized in the \fB[nfsdcld]\fR section
+of the \fI/etc/nfs.conf\fR configuration file:
+.IP "\fBstoragedir\fR" 4
+.IX Item "storagedir"
+Equivalent to \fB\-s\fR/\fB\-\-storagedir\fR.
+.IP "\fBdebug\fR" 4
+.IX Item "debug"
+Setting "debug = 1" is equivalent to \fB\-d\fR/\fB\-\-debug\fR.
+.LP
+In addition, the following value is recognized from the \fB[general]\fR section:
+.IP "\fBpipefs\-directory\fR" 4
+.IX Item "pipefs-directory"
+Equivalent to \fB\-p\fR/\fB\-\-pipefsdir\fR.
 .SH "NOTES"
 .IX Header "NOTES"
 The Linux kernel NFSv4 server has historically tracked this information