Unix マシンのソケットを介して最小限の端末シェル プログラムを実行しようとしています。使っsystem("cd directory")
たらダメ。chdir()
それで私は少し調査をして、それがうまくいくように見えた に出くわしました。しかし、試してみると、毎回エラーが発生しました。これが私のコードです:
if (chdir(argument) < 0) {
send(sock, "[*] Directory does not exits!\n", strlen("[*] Directory does not exits!\n"), 0);
}
else {
string argumentString(argument);
string entireMessage = "[*] New working directory: " + argumentString;
char entireMessageChar[64];
int i;
for (i = 0; entireMessage[i] != '\0'; i++) {
entireMessageChar[i] = entireMessage[i];
}
send(sock, &entireMessage, strlen(entireMessageChar), 0);
}
chdir()
ディレクトリを変更しない理由を誰か教えてください。ありがとう。