День добрый всем
как в KDevelop приаттачить отладчик во время отладки родителя к форку??
или какий нить др отладчик так может?
форк начинает выполняться и вываливается по ошибке - поэтому я не успеваю к нему с снаружи приатачитьсяпроблема:
софтина в один прекрасный момент делает форк а из него execl`ом пытается запустить др программу с аргументами
проблема в том что execl выдаёт ошибку
error: execl(): Bad address
если вместо своей программы я подставлю "/bin/sh" - запускается и не ругается =( т. е. косяк судя по всему с аргументами
код:{
forkpid = fork();switch (forkpid)
{
case FAILURE:
perror("error: fork()");
exit(1);
}case SUCCESS:
{
tmp1.sin_addr.s_addr =param[ii].ext_ip;
tmp2.sin_addr.s_addr =param[ii].int_ip;
tmp3.sin_addr.s_addr =param[ii].server.ip;
strcpy(ip1, inet_ntoa(tmp1.sin_addr));
strcpy(ip2, inet_ntoa(tmp2.sin_addr));
strcpy(ip3, inet_ntoa(tmp3.sin_addr));
//параметры у софтины: softina ip ip ip port port protocolswitch(execl("/usr/sbin/pcktfwdr",
"pcktfwdr",
ip1,
ip2,
ip3,
(char)ntohs(param[ii].server.p),
(char)ntohs(param[ii].ext_p),
param[ii].protocol,
NULL))
{
case FAILURE:
perror("error: execl()"); //вот тут мы по сути и валимся
exit(1);default:
ret = SUCCESS;
}default:
{
param[ii].DaemonPid = forkpid;
ret = SUCCESS; //forkpid;
}}
заранее благодарен за ответы и тем кто прочёл до конца
---cut---
как в KDevelop приаттачить отладчик во время отладки родителя к форку??
или какий нить др отладчик так может?
форк начинает выполняться и вываливается по ошибке - поэтому я не успеваю к нему с снаружи приатачиться
---cut---man gdb
http://sources.redhat.com/gdb/current/onlinedocs/gdb_5.html#...ps: нужно стремиться быть чуть более любознательным и обуздывать собственную лень.. это ж 1й класс начальной школы.
pss: как это все прикрутить к kdevelop думайте сами.
// wbr