执行两个字节
execl off by two bytes
我有这个代码:
execl("/bin/ip", "address", "add",
"dev", ob->tun_name,
"local", ob->local_ip,
"peer", ob->remote_ip,
NULL
);
但我收到错误:
Object "dress" is unknown, try "ip help".
如果我使用这个:
execl("/bin/ip", " address", "add",
"dev", ob->tun_name,
"local", ob->local_ip,
"peer", ob->remote_ip,
NULL
);
有效。
我已经试过了execlp("ip", ...
,但它有同样的问题。
我哪里做错了 - 为什么我需要去掉 "address" 前面的两个字符?
这行得通,我需要重新添加可执行文件的名称。
execl("/bin/ip", "/bin/ip", "address", "add",
"dev", ob->tun_name,
"local", ob->local_ip,
"peer", ob->remote_ip,
NULL
);
我有这个代码:
execl("/bin/ip", "address", "add",
"dev", ob->tun_name,
"local", ob->local_ip,
"peer", ob->remote_ip,
NULL
);
但我收到错误:
Object "dress" is unknown, try "ip help".
如果我使用这个:
execl("/bin/ip", " address", "add",
"dev", ob->tun_name,
"local", ob->local_ip,
"peer", ob->remote_ip,
NULL
);
有效。
我已经试过了execlp("ip", ...
,但它有同样的问题。
我哪里做错了 - 为什么我需要去掉 "address" 前面的两个字符?
这行得通,我需要重新添加可执行文件的名称。
execl("/bin/ip", "/bin/ip", "address", "add",
"dev", ob->tun_name,
"local", ob->local_ip,
"peer", ob->remote_ip,
NULL
);