connect()

Хай

Проблема: пытаюсь подсоединиться к ОТКРЫТОМУ на удаленном компе порту функцией connect(). Несмотря на то, что порт открыт, функция возвращает 111 (connection refused) или 106 (порт сейчас в работе). И так - на всех открытых портах. В чем тут проблема, мож кто-нить знет?

Regards.

прикольно если б еше.

там кусочек кода с конектом увидеть.

int sd;

int i;

struct sockaddr_in addr;

char *host = ‘127.0.0.1’;

sd = socket(PF_INET,SOCK_STREAM,IPPROTO_TCP);

addr.sin_family = AF_INET;

inet_aton(host, &addr.sin_addr.s_addr);

for (i = 1; i <= 256; i++) {

addr.sin_port = htons(i);

connect(sd, (struct sockaddr *) &addr, sizeof(sockaddr_in));

perror(“”);

}

Сроки пишутся не в одинарных, а в двойных кавычках в C.

Кроме того, sizeof(struct sockaddr_in), поскольку sockaddr_in - это таг, а не тип. Ну и наконец, если хочешь это делать в цикле, то удачно подцепившийся socket нужно закрывать прежде чем делать новый connect.