From: Steve Dickson <SteveD@redhat.com>
To: Linux NFS Mailing list <linux-nfs@vger.kernel.org>
Cc: Linux NFSv4 mailing list <nfsv4@linux-nfs.org>
Subject: [Patch 2/9] Ignore blanks in section definitions and before assignment statements
Date: Mon, 09 Mar 2009 16:50:08 -0400 [thread overview]
Message-ID: <49B58100.8030906@RedHat.com> (raw)
In-Reply-To: <49B57FB2.9020000@RedHat.com>
commit 5974cd0fdc295fed36f6bc092d9569b41808d19e
Author: Steve Dickson <steved@redhat.com>
Date: Mon Mar 9 13:55:25 2009 -0400
Taught conf_parse_line() to ignore spaces in the
'[section]' parsing and before the assignment statements
Signed-off-by: Steve Dickson <steved@redhat.com>
diff --git a/support/nfs/conffile.c b/support/nfs/conffile.c
index 754bed9..1b8d098 100644
--- a/support/nfs/conffile.c
+++ b/support/nfs/conffile.c
@@ -50,11 +50,6 @@
#include "xlog.h"
static void conf_load_defaults (int);
-#if 0
-static int conf_find_trans_xf (int, char *);
-#endif
-
-size_t strlcpy(char *, const char *, size_t);
struct conf_trans {
TAILQ_ENTRY (conf_trans) link;
@@ -219,26 +214,48 @@ conf_parse_line(int trans, char *line, size_t sz)
if (*line == '#' || *line == ';')
return;
+ /* Ignore blank lines */
+ if (*line == '\0')
+ return;
+
+ /* Strip off any leading blanks */
+ while (isblank(*line))
+ line++;
+
/* '[section]' parsing... */
if (*line == '[') {
- for (i = 1; i < sz; i++)
- if (line[i] == ']')
+ line++;
+ /* Strip off any blanks after '[' */
+ while (isblank(*line))
+ line++;
+
+ for (i = 0; i < sz; i++) {
+ if (line[i] == ']') {
break;
+ }
+ }
if (section)
- free (section);
+ free(section);
if (i == sz) {
xlog_warn("conf_parse_line: %d:"
"non-matched ']', ignoring until next section", ln);
section = 0;
return;
}
+ /* Strip off any blanks before ']' */
+ val = line;
+ while (*val && !isblank(*val))
+ val++, j++;
+ if (*val)
+ i = j;
+
section = malloc(i);
if (!section) {
xlog_warn("conf_parse_line: %d: malloc (%lu) failed", ln,
(unsigned long)i);
return;
}
- strlcpy(section, line + 1, i);
+ strncpy(section, line, i);
return;
}
next prev parent reply other threads:[~2009-03-09 20:50 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-03-09 20:44 [Patch 0/9] NFS Mount Configuration File Steve Dickson
2009-03-09 20:47 ` [Patch 1/9] Make idmapd's Configuration Parsing Code Available Steve Dickson
2009-03-09 20:50 ` Steve Dickson [this message]
2009-03-09 20:52 ` [Patch 3/9] Ensure configuration values are stored in lower case Steve Dickson
2009-03-09 20:58 ` [Patch 4/9] Mount support routines used to convert mount options Steve Dickson
2009-03-09 21:03 ` [Patch 5/9] Hooks needs incorporate file configuration code Steve Dickson
2009-03-09 21:04 ` [Patch 6/9] An example of an nfsmount.conf file Steve Dickson
2009-03-09 21:06 ` [Patch 7/9] New nfsmount.conf(5) man page Steve Dickson
2009-03-09 21:08 ` [Patch 8/9] Another way to define the configuration file Steve Dickson
2009-03-09 21:10 ` [Patch 9/9] Fixed a couple nits Steve Dickson
2009-03-09 21:49 ` [Patch 0/9] NFS Mount Configuration File Chuck Lever
2009-03-17 19:44 ` Steve Dickson
2009-03-17 20:17 ` Chuck Lever
2009-03-17 20:25 ` J. Bruce Fields
2009-03-17 20:36 ` Chuck Lever
2009-03-18 13:07 ` Steve Dickson
2009-03-18 16:31 ` Chuck Lever
2009-03-18 18:10 ` Steve Dickson
[not found] ` <49C13928.8040806-AfCzQyP5zfLQT0dZR+AlfA@public.gmane.org>
2009-03-19 11:13 ` Steve Dickson
[not found] ` <49C228D3.4070005-AfCzQyP5zfLQT0dZR+AlfA@public.gmane.org>
2009-03-19 15:45 ` J. Bruce Fields
2009-03-19 16:37 ` Chuck Lever
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=49B58100.8030906@RedHat.com \
--to=steved@redhat.com \
--cc=linux-nfs@vger.kernel.org \
--cc=nfsv4@linux-nfs.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox