Есть подпрограмма которая должна копировать данные из одного дескриптора на другой
если ей передать дескрипторы 0 и 1 то почему-то печатается всякая муть, помогите разобраться
int cpFromTo(int from, int to, int timeout, int limit){
char buffer[256];
int max,rc,r;
struct timeval tv;
fd_set rfd;
fd_set wfd;
FD_ZERO(&rfd);
FD_ZERO(&wfd);
FD_SET(from,&rfd);
FD_SET(to,&wfd);
tv.tv_sec=5;
tv.tv_usec=0;
if(from>to)
max=from;
else
max=to;
rc=select(max+1,&rfd,&wfd,NULL,&tv);
if(rc){
if(FD_ISSET(from,&rfd)){
r=read(from,buffer,sizeof(buffer)-1);
buffer[r]='\0';
if(r==0 || r==-1)
return 0;
}
if(FD_ISSET(to,&wfd)){
r=write(to,buffer,strlen(buffer));
if(r==0 || r==-1)
return 0;
}
}
else
}