This is the mail archive of the
cluster-cvs@sourceware.org
mailing list for the cluster.
fence-agents: master - fence-agents: Just print;no need for a buffer in fence_xvm
- From: Lon Hohberger <lon at fedoraproject dot org>
- To: cluster-cvs-relay at redhat dot com
- Date: Sun, 1 Mar 2009 01:19:53 +0000 (UTC)
- Subject: fence-agents: master - fence-agents: Just print;no need for a buffer in fence_xvm
Gitweb: http://git.fedorahosted.org/git/fence-agents.git?p=fence-agents.git;a=commitdiff;h=2cbb0da76c9126941d34a0cf8521bd07b206279e
Commit: 2cbb0da76c9126941d34a0cf8521bd07b206279e
Parent: 96e4fbd946abd70386266e7b4315a59a967ec5d5
Author: Lon Hohberger <lhh@redhat.com>
AuthorDate: Sat Feb 28 19:30:28 2009 -0500
Committer: Lon Hohberger <lhh@redhat.com>
CommitterDate: Sat Feb 28 20:15:28 2009 -0500
fence-agents: Just print; no need for a buffer in fence_xvm
---
fence/agents/xvm/options.c | 32 +++++++++-----------------------
1 files changed, 9 insertions(+), 23 deletions(-)
diff --git a/fence/agents/xvm/options.c b/fence/agents/xvm/options.c
index 4fa2eeb..1d04cb6 100644
--- a/fence/agents/xvm/options.c
+++ b/fence/agents/xvm/options.c
@@ -511,38 +511,23 @@ args_usage(char *progname, char *optstr, int print_stdin)
}
-static char *clean_tags(char *desc)
+static void
+print_desc_xml(char *desc)
{
- static char result[16384];
- char *r, *d;
+ char *d;
- if (strlen(desc) > sizeof(result))
- return "";
-
- /* XXX could overflow, but the data used in this
- function is statically defined at compile time, so
- there's no chance that external information is being
- parsed here -- for now. This will need to be changed
- if we parse data that isn't hardcoded. */
-
- memset(result,0,sizeof(result));
- r = result;
for (d = desc; *d; d++) {
switch (*d) {
case '<':
- memcpy(r, "<", 4);
- r+=4;
+ printf("<");
break;
case '>':
- memcpy(r, ">", 4);
- r+=4;
+ printf(">");
break;
default:
- *r++ = *d;
+ printf("%c", *d);
}
}
-
- return result;
}
@@ -562,8 +547,9 @@ args_metadata(char *progname, char *optstr)
continue;
printf("\t<parameter name=\"%s\">\n",arg->stdin_opt);
- printf("\t\t<shortdesc lang=\"C\">%s</shortdesc>\n",
- clean_tags(arg->desc));
+ printf("\t\t<shortdesc lang=\"C\">");
+ print_desc_xml(arg->desc);
+ printf("</shortdesc>\n");
printf("\t</parameter>\n");
}