version 1.21, 2019/05/16 12:44:17 |
version 1.22, 2019/11/18 04:37:35 |
|
|
} |
} |
cp2 = line; |
cp2 = line; |
while (*cp1 != '\0') { |
while (*cp1 != '\0') { |
switch(*cp1) { |
switch(*cp1) { |
case '\\': |
case '\\': |
*cp2++ = *++cp1; |
*cp2++ = *++cp1; |
break; |
break; |
case '$': |
case '$': |
if (isdigit((unsigned char)*(cp1 + 1))) { |
if (isdigit((unsigned char)*(cp1 + 1))) { |
j = 0; |
j = 0; |
while (isdigit((unsigned char)*++cp1)) { |
while (isdigit((unsigned char)*++cp1)) { |
j = 10*j + *cp1 - '0'; |
j = 10*j + *cp1 - '0'; |
} |
} |
cp1--; |
cp1--; |
if (argc - 2 >= j) { |
if (argc - 2 >= j) { |
(void)strlcpy(cp2, argv[j+1], |
(void)strlcpy(cp2, argv[j+1], |
sizeof(line) - (cp2 - line)); |
sizeof(line) - (cp2 - line)); |
cp2 += strlen(argv[j+1]); |
cp2 += strlen(argv[j+1]); |
} |
} |
break; |
break; |
} |
} |
if (*(cp1+1) == 'i') { |
if (*(cp1+1) == 'i') { |
loopflg = 1; |
loopflg = 1; |
cp1++; |
cp1++; |
if (count < argc) { |
if (count < argc) { |
(void)strlcpy(cp2, argv[count], |
(void)strlcpy(cp2, argv[count], |
sizeof(line) - (cp2 - line)); |
sizeof(line) - (cp2 - line)); |
cp2 += strlen(argv[count]); |
cp2 += strlen(argv[count]); |
} |
} |
break; |
break; |
} |
} |
/* FALLTHROUGH */ |
/* FALLTHROUGH */ |
default: |
default: |
*cp2++ = *cp1; |
*cp2++ = *cp1; |
break; |
break; |
} |
} |
if (*cp1 != '\0') { |
if (*cp1 != '\0') { |
cp1++; |
cp1++; |
} |
} |
} |
} |
*cp2 = '\0'; |
*cp2 = '\0'; |
makeargv(); |
makeargv(); |
|
|
if (c == (struct cmd *)-1) { |
if (c == (struct cmd *)-1) { |
fputs("?Ambiguous command.\n", ttyout); |
fputs("?Ambiguous command.\n", ttyout); |
code = -1; |
code = -1; |
} |
} else if (c == 0) { |
else if (c == 0) { |
|
fputs("?Invalid command.\n", ttyout); |
fputs("?Invalid command.\n", ttyout); |
code = -1; |
code = -1; |
} |
} else if (c->c_conn && !connected) { |
else if (c->c_conn && !connected) { |
|
fputs("Not connected.\n", ttyout); |
fputs("Not connected.\n", ttyout); |
code = -1; |
code = -1; |
} |
} else { |
else { |
|
if (verbose) { |
if (verbose) { |
fputs(line, ttyout); |
fputs(line, ttyout); |
fputc('\n', ttyout); |
fputc('\n', ttyout); |