Ввод из файла по запросу сервера
Когда TCP-соединение установлено с сервером, он запрашивает вопрос и ждет ответа в течение 3 секунд в цикле while, а затем завершает работу. Мне нужно отправить содержимое файла на сервер в ответ на приглашение - поэтому я бы хотел поместить их на стандартный ввод.
Я обязательно должен подождать, сначала сервер должен задать вопрос, а затем мне нужно отправить результат из файла обратно.
Есть ли способ выполнить эту задачу с помощью pipe и netcat или чего-то подобного? Или я должен настроить некоторые основные программы клиента TCP для моих нужд?
Изменить фон: для университетского задания мне нужно переполнить буфер, чтобы получить доступ к серверу. Я построил строку, которая делает это успешно для предварительно скомпилированного двоичного файла, теперь мне нужно отправить это на сервер. Простое копирование не будет работать, так как моя строка содержит непечатаемые символы или символы, которые при кодировании приводят к различным шестнадцатеричным значениям.
Редактировать файл журнала для файла cat | порт хоста nc
2 ответа
Вы не можете сделать это с простой трубой оболочки, поскольку поток через трубы однонаправлен. Вы можете создавать циклы с конвейерами, но не одной командой, и в этот момент я бы просто выбрал простое клиентское приложение TCP, написанное на языке программирования, который вам нравится.
Если я понимаю, вы хотите передать один файл с клиента на сервер, бросьте netcast.
Таким образом, на стороне сервера вы можете сделать: nc -l 3333 > myfile.txt
и на стороне клиента cat myfile.txt | nc localhost 3333
Но я не понимаю, когда вы говорите "Когда TCP-соединение установлено с сервером", на самом деле это ничего не значит.