netop

Утилита быстрого копирования файлов по сети.

Краткое описание

netop позволяет скопировать большие объемы информации между двумя заранее не подготовленными узлами (компьютерами, смартфонами и т.п.) по сети. Не требует специальной настройки. Для работы необходима только возможность установить одно TCP подключение.

Не требователен к ресурсам. Не имеет внешних зависимостей. Может быть легко портирован на любую ОС, где есть стандартная библиотека си и bsd-сокеты (сборка и работа проверена на OS X, OpenBSD, Windows, Android).

Не является заменой scp, rsync, tar-стриму и другим, менее кросс-платформенным, но более серьёзным решениям.

В полном соответствии с принципами suckless.

Целостность передаваемой информации проверяется по кодам возврата ОС и простой контрольной сумме. Передача атрибутов файлов/каталогов не ведётся и на целевой системе отдаётся на усмотрение ОС (и это фича - принятые файлы легко и непринуждённо становятся собственностью принимающей стороны).

Руководство пользователя

Как запустить

Допустим, нам нужно скопировать развал фотографий с одной Windows-машины на другую.

Для этого, на машине, на которую копируем фотографии:

netop.exe 1313 receive

А на машине, с которой копируем фотографии:

netop.exe 192.168.0.1:1313 send “Photoz Folder”

Ясное дело, путь к программе, каталогам, адреса машин и порты надо бы подправить под вашу ситуацию.

Продвинутое использование

  1. Направление установки соединения не обязательно совпадает с направлением передачи файлов.

  2. В качестве аргументов для передачи может выступать множество файлов и каталогов, все они будут переданы за один сеанс связи.

  3. Слушающее соединение на серверной стороне закрывается сразу после получения входящего подключения. Следующий сеанс передачи с этого же порта можно и нужно начинать с нового запуска.

Что нужно иметь в виду

  1. Если в качестве аргумента для передачи указан абсолютный путь, то на целевой ОС файл/каталог будет создан по абсолютному пути.

  2. Принимающая сторона фактически выполяет команды передающей стороны с минимумом проверок. Злодейская передающая сторона может вам накомандовать какой-нибудь жути. Не принимайте файлы от тех, кому вы не доверяете.

  3. Передача файлов между платформами (с OS X на Windows, например). В теории должна работать. Но на самом деле никто не проверял. Может возникнуть засада с кодировками или ещё что.

Скачать

ОС Ссылка
Source Bazaar

Сборка из исходников производится с помощью make. Внутри Makefile перечислены все возможные варианты.

Архитектура

Смотрим main.c, там всё должно быть относительно понятно.

Обратная связь

netop@tycho.sytes.net

История версий

Дата Изменения
28.09.2023 Поднаделано тут и там
27.06.2022 Первая полностью законченная версия