Passing Arguments to execlp()
Posted on
16th Feb 2014 07:03 pm by
admin
I'm writing a program that mimics a unix shell. It's supposed to take commands with arguments and execute them. I'm having trouble passing in the arguments into the execlp call to correctly execute the program. Here's the code I have:
Code:
// Construct the command argument array
char* args[argsEndIndex]; // Array to hold command arguments
int i = 0; // Loop counter to loop through command
int j = 0; // Loop counter for argument array
while (i <= argsEndIndex)
{
if (i != 0)
{
args[j] = cmdParts[i];
j++;
}
i++;
}
execlp("/bin/ls", "ls", args, NULL);
cmdParts is a char* array that contains the formatted command inputted. I parsed through the command above this code to insert characters so the pointers point to null terminated strings. That's also how I got argsEndIndex. For example I input this command:
Code:
ls -a -l
argsEndIndex gets correctly set to 2 because that's the index of the last argument in the command. 0 is obviously the command itself. Now when I make the execlp call I get:
Code:
ls: cannot access sH*?vH*?y: No such file or directory
Which I'm assuming it's accessing garbage data somewhere through the args array but I can't figure out why it's doing it because I'm correctly setting each element of the array.
I can post the whole code if you need it but it's long so I tried to keep this short. Any help is appreciated. Thanks!
No comments posted yet
Your Answer:
Login to answer
265
5
Other forums
PHP and SMS
Hi all forum members. I am new here and am unsure what category shoild I post this in.
Moderator
remove a ; from emails in textarea
Code: <?php
session_start();
$database_host = "localhost&qu
How to give the privillege for triggers?
Hi,
How to give the privillage for triggers to particular user?
Please let me
Weekly Calendar
Hi, I am looking at creating a weekly calendar. The calendar will read from Monday - Sunday. Does an
SCO Unix
I know this might not be the place to ask, but, can anyone tell me if SCO Unix comes with PHP built
Remove letter from numeric textbox
I have a textbox that will search the employee database by entering in the employee ID and it will r
Need help/w Page: 1,2,3,4 function!
So I have this code im working on where it's ment to display seperate pages having 20 logs each
I
mysql VARCHAR acting like INT
Hi, All.
I have a table that contains a varchar(10) column named weird_field. In this column
Uploading Filetypes and placing them in seperate folders.
Hello,
first post , and asking for help im afraid. Very new to PHP, was making good progress
str_replace help
Hey there,
I'm a PHP newb, I'm having troubles with the str_replace function. I want to clean