summaryrefslogtreecommitdiffstats
path: root/usr.sbin/ppp/defs.c
diff options
context:
space:
mode:
authorbrian <brian@FreeBSD.org>1999-12-22 21:48:12 +0000
committerbrian <brian@FreeBSD.org>1999-12-22 21:48:12 +0000
commitbaf28880b36151165091a7ac625d48a22daaf1fc (patch)
treed166f00f9abad88e11532235307232197541793c /usr.sbin/ppp/defs.c
parent58518e59bd5ba53d638362dcfdbbd87ac09bf4ba (diff)
downloadFreeBSD-src-baf28880b36151165091a7ac625d48a22daaf1fc.zip
FreeBSD-src-baf28880b36151165091a7ac625d48a22daaf1fc.tar.gz
Don't munge ``set dial|login|logout|hangup'' arguments before
ExpandString() has a chance to do its own substitutions.
Diffstat (limited to 'usr.sbin/ppp/defs.c')
-rw-r--r--usr.sbin/ppp/defs.c15
1 files changed, 9 insertions, 6 deletions
diff --git a/usr.sbin/ppp/defs.c b/usr.sbin/ppp/defs.c
index b7ee588..67472c4 100644
--- a/usr.sbin/ppp/defs.c
+++ b/usr.sbin/ppp/defs.c
@@ -264,13 +264,16 @@ IntToSpeed(int nspeed)
}
char *
-findblank(char *p, int instring)
+findblank(char *p, int instring, int reduce)
{
while (*p) {
if (*p == '\\') {
- memmove(p, p + 1, strlen(p));
- if (!*p)
- break;
+ if (reduce) {
+ memmove(p, p + 1, strlen(p));
+ if (!*p)
+ break;
+ } else
+ p++;
} else if ((instring && *p == '"') ||
(!instring && (issep(*p) || *p == '#')))
return p;
@@ -281,7 +284,7 @@ findblank(char *p, int instring)
}
int
-MakeArgs(char *script, char **pvect, int maxargs)
+MakeArgs(char *script, char **pvect, int maxargs, int reduce)
{
int nargs, nb;
int instring;
@@ -303,7 +306,7 @@ MakeArgs(char *script, char **pvect, int maxargs)
break;
*pvect++ = script;
nargs++;
- script = findblank(script, instring);
+ script = findblank(script, instring, reduce);
if (script == NULL)
return -1;
else if (*script == '#')
OpenPOWER on IntegriCloud