Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Название темы: нестандартный output
Показать сообщение отдельно

Аватара для Guest

Guest


Профиль | Цитировать


Теперь у меня такая трабла:Я хочу ессно это с сетью связать,т.е типа telnet'a
сделать:
Сервак:
#define PORT1 1234
#define PORT2 4321
int main (void) {
int acc;
char buf[64];
int from_len;
FILE *fp;
fp=popen("/bin/sh","w";//открываем /bin/sh
      struct sockaddr_in serv,client;
int s;
s=socket(AF_INET,SOCK_STREAM,0);


serv.sin_family=AF_INET;
serv.sin_addr.s_addr=INADDR_ANY;
serv.sin_port=htons(PORT1);
bind(s,&serv,sizeof(serv));
int lis=listen(s,10);

while(1) {
       from_len=sizeof(client);
acc=accept(s,&client,sizeof(client));//принимаем коннект
dup2(acc,1);//перенаправляем i/o
dup2(acc,2);//
while(1) {
        from_len=read(acc,buf,64);//принимаем команды и записываем в buf
        if(buf=="killbill" {//если получаем команду "killbill" то выходим
                break;
        }
        fprintf(fp,"%s",buf);//записываем команду в /bin/sh
        perror("Status";
}
break;
exit(0);
}
"stream.c" 44L, 791C written

Клиент выглядит так же - цикл с посылкой и отправкой команды - но ничего не происходит!Как будто обе проги виснут!Иногда вылезает еррор Broken pipe

Отправлено: 16:46, 04-06-2004 | #7

Название темы: нестандартный output