NULL terminate the argv array.
return -1;
}
-
+#define MAX_ARGV (256)
/*
* Execute a program on successful authentication.
* Return 0 if exec_wait == 0.
char mycmd[1024];
char answer[4096];
char argv_buf[4096];
- char *argv[256];
+ char *argv[MAX_ARGV];
const char *from;
char *p, *to;
int pd[2];
argv[argc] = to;
argc++;
+
+ if (argc >= (MAX_ARGV - 1)) break;
/*
* Copy the argv over to our buffer.
return -1;
}
}
+ argv[argc] = NULL;
/*
* Open a pipe for child/parent communication, if