summaryrefslogtreecommitdiff
path: root/usr/src/cmd/sh/expand.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/cmd/sh/expand.c')
-rw-r--r--usr/src/cmd/sh/expand.c35
1 files changed, 19 insertions, 16 deletions
diff --git a/usr/src/cmd/sh/expand.c b/usr/src/cmd/sh/expand.c
index f5bfea5bd1..d976fb3b4a 100644
--- a/usr/src/cmd/sh/expand.c
+++ b/usr/src/cmd/sh/expand.c
@@ -49,17 +49,19 @@
* "[...a-z...]" in params matches a through z.
*
*/
-static int addg();
+static void addg(unsigned char *, unsigned char *, unsigned char *,
+ unsigned char *);
+void makearg(struct argnod *);
-expand(as, rcnt)
- unsigned char *as;
+int
+expand(unsigned char *as, int rcnt)
{
int count;
DIR *dirf;
BOOL dir = 0;
unsigned char *rescan = 0;
unsigned char *slashsav = 0;
- register unsigned char *s, *cs;
+ unsigned char *s, *cs;
unsigned char *s2 = 0;
struct argnod *schain = gchain;
BOOL slash;
@@ -73,7 +75,7 @@ expand(as, rcnt)
* check for meta chars
*/
{
- register BOOL open;
+ BOOL open;
slash = 0;
open = 0;
@@ -159,7 +161,7 @@ expand(as, rcnt)
/* check for rescan */
if (dir)
{
- register unsigned char *rs;
+ unsigned char *rs;
struct dirent *e;
rs = cs;
@@ -180,7 +182,8 @@ expand(as, rcnt)
if (gmatch(e->d_name, cs))
{
- addg(s, e->d_name, rescan, slashsav);
+ addg(s, (unsigned char *)e->d_name, rescan,
+ slashsav);
count++;
}
}
@@ -188,7 +191,7 @@ expand(as, rcnt)
if (rescan)
{
- register struct argnod *rchain;
+ struct argnod *rchain;
rchain = gchain;
gchain = schain;
@@ -211,12 +214,12 @@ expand(as, rcnt)
return (count);
}
-static int
-addg(as1, as2, as3, as4)
-unsigned char *as1, *as2, *as3, *as4;
+static void
+addg(unsigned char *as1, unsigned char *as2, unsigned char *as3,
+ unsigned char *as4)
{
- register unsigned char *s1, *s2;
- register int c;
+ unsigned char *s1, *s2;
+ int c;
int len;
wchar_t wc;
@@ -281,11 +284,11 @@ unsigned char *as1, *as2, *as3, *as4;
}
while (*s2++ = *++s1);
}
- makearg(endstak(s2));
+ makearg((struct argnod *)endstak(s2));
}
-makearg(args)
- register struct argnod *args;
+void
+makearg(struct argnod *args)
{
args->argnxt = gchain;
gchain = args;