Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Сети > послать команду |
Автор: Alexey68 19.7.2015, 01:54 | ||||
Здравствуйте All! Прошу помощи. Необходимо сделать запрос whois (telnet whois.ripe.net 43), пробую так:
но соединения не происходит. Также при приёме функцией recv, программа перестаёт отвечать... Подключаюсь к своему роутеру на порт 23:
Что у меня неправильно? С уважением Алексей. |
Автор: tzirechnoy 19.7.2015, 15:17 | ||
Коды возврата функцый не проверяешь. |
Автор: Alexey68 20.7.2015, 13:24 | ||
после вызова: error = (connect(s,(sockaddr*)&a,sizeof(a))); error возвращает 0, сейчас пробую так:
сейчас выводит: D-LINK Login: Size = 115 и также (наверное) ждёт ответа. >>Ну потому что нужно и что-то посылать роутеру (тот же логин) >>, а не только ждать от него приёма. Как мне послать логин? Также интересует как принудительно разорвать содинение после приглашения на ввод логина? |
Автор: feodorv 20.7.2015, 23:17 | ||
115 байт - это много. А "D-LINK Login:" - это всего 13 байт, остальные байты в норме? Через send:
где "login" - имя на вход. Может быть, понадобится "\r\n" на конце послания вместо просто "\n", но я не уверен. |
Автор: Alexey68 27.7.2015, 05:17 | ||||||
Благодарю за помощь, "\r\n" всё принимает, пробую разорвать содинение, но никак не выходит. >> А "D-LINK Login:" - это всего 13 байт, остальные байты в норме? всё нормально. Посылаю:
но соединение не обрывается (telnet). В остальном всё как положено. p.s. извиняюсь за отнятое время. |
Автор: feodorv 30.7.2015, 14:10 |
Так либо тупо closesocket(), либо послать команду "exit". |