All pastes #744959 Raw Edit

Mine

public text v1 · immutable
·published 2007-10-21 22:36 UTC
rendered paste body
....
char **Genvp=0;
....
void restart_self(int something){
        char*args[6];
        char arga[512],argb[512];
        int ret;
        args[0]="/usr/bin/valgrind";
        args[1]="./feedmain";
        args[2]="-restart";
        args[3]=arga;
        args[4]=argb;
        args[5]=0;
        printf("'restarting' program\n");
        for(int x=0;x<200;x++){
                if (clients[x]>=0) {
                        close(clients[x]);
                        clients[x]=-1;
                }
        }
        snprintf(arga,500,"%d",feedoutfd);
        snprintf(argb,500,"%d",feedinfd);
        system("make");
        ret=execve("/usr/bin/valgrind",args,Genvp);
        if (ret){
                printf("ERROR %d on execve in feedmain\n",ret);
        }

}
...
int main(int argc,char *argv[],char* envp[]){
        fd_set reads,write,error;
        int run=1,clientc=0,startup=-1;
        char buff[1024];
        struct timeval tv;
        Genvp=envp;
        signal(SIGHUP,restart_self);
...