Board.KolibriOS.org

Official KolibriOS board
It is currently Fri Dec 13, 2019 11:54 am

All times are UTC+03:00




Post new topic  Reply to topic  [ 8 posts ] 
Author Message
PostPosted: Fri Nov 26, 2010 7:25 pm 
Offline

Joined: Thu Nov 25, 2010 8:26 pm
Posts: 41
Идея.
Программа, позволяющая без особых усилий ("нажатием одной кнопки") принимать и передавать множество файлов по протоколу TFTP.

Проблема.
При удаленной разработке (например в ос Линукс) возникает необходимость в частом обмене файлами между компьютером разработчика и компьютером (или виртуальной машиной) с Колибри. Если локальная сеть функционирует, то остается только написать небольшую программу, облегчающую этот процесс.

PS: Планирую писать на си.


Последняя версия от 30.12.2010:
-- поддерживает передачу файлов в обоих направлениях
-- обрабатывает параметры, переданные при запуске
-- может исполнять загрузочный скрипт; имя скрипта передается как параметр

Запуск с параметрами:
Code:
newtftpc -d tftp://192.168.0.1/file.txt /hd1/1/files/file.txt
-- загрузить файл с сервера

Code:
newtftpc -u background.png tftp://192.168.2.3/pict.png
-- передать файл на сервер

Code:
newtftpc -e download_script.txt
-- выполнить сценарий

Пример скрипта (секции download и upload в любом количестве и в любом порядке):
Code:
download
    from 10.1.2.2
    to "/hd2/1/trash/"
files
    "newtftpc",
    "git.png",
    "hello.txt";

upload
  from ""
  to 10.2.2.3
files
  "background.png";

download from 10.1.2.3 to "/rd1/1/" files "hello world.asm";


Синтаксическая ошибка прервет выполнение скрипта. Если возникнет проблема при передаче файла, то он будет пропущен и выполнение скрипта продолжится. Все сообщения выводятся на доску отладки.


Attachments:
newtftpc.kex [3.1 KiB]
Downloaded 189 times


Last edited by Foldl on Thu Dec 30, 2010 11:42 pm, edited 3 times in total.
Top
   
PostPosted: Fri Nov 26, 2010 8:03 pm 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
Есть многопоточная Newlibc. Но для Линукса нужен кросскомпилятор.


Top
   
PostPosted: Fri Nov 26, 2010 9:24 pm 
Offline

Joined: Thu Nov 25, 2010 8:26 pm
Posts: 41
Хорошо, буду смотреть. Тут ведь дело такое. Хотя пакет menuetlibs уже сейчас собирается в Linux и содержит дополнительно обертки для системных вызовов, имхо, повозиться все равно придется. Сейчас плохо представляю себе ситуацию с этими двумя библиотеками.


Top
   
PostPosted: Sun Dec 26, 2010 5:46 pm 
Offline

Joined: Thu Nov 25, 2010 8:26 pm
Posts: 41
Первая рабочая версия программы. Поддерживает только закачку. Запускается через RUN с параметрами, например
Code:
/hd2/1/newtftpc tftp://10.1.2.2/kolibri.img /hd2/1/kolibri_01.img
- загрузить образ Колибри или
Code:
/hd2/1/newtftpc tftp://10.1.2.2/newtftpc  /hd2/1/newtftpc
- загрузить самого себя ;)
Обработка параметров простейшая.
Программа пишет большое количество сообщений на доску отладки. Бинарник прикреплю к первому сообщению.


Top
   
PostPosted: Wed Dec 29, 2010 8:29 pm 
Offline

Joined: Thu Nov 25, 2010 8:26 pm
Posts: 41
Бинарник обновил.
Запускается через RUN с параметрами, сообщения выводит на доску отладки.


Top
   
PostPosted: Thu Dec 30, 2010 11:43 pm 
Offline

Joined: Thu Nov 25, 2010 8:26 pm
Posts: 41
Добавил возможность передачи файлов на сервер.


Top
   
PostPosted: Sat Jan 22, 2011 4:08 am 
Offline

Joined: Mon Sep 24, 2007 11:11 am
Posts: 2814
Планируется ли поддержка авторизации?
А когда можно будет работать с ftp-серверами интернета, или уже можно? (у меня не получилось соединиться почему-то)...


Top
   
PostPosted: Sat Jan 22, 2011 12:39 pm 
Offline

Joined: Thu Nov 25, 2010 8:26 pm
Posts: 41
Это не ftp, а tftp клиент. (http://ru.wikipedia.org/wiki/TFTP)

Данный клиент -- это утилита разработчика. Предназначен в основном для того, чтобы загрузить новую версию программы на хост с колибри для отладки, при том что средства разработки находятся в другой, более развитой ос. Лично мне было удобно писать его в линуксе: компилирую комбинацией клавиш в редакторе, дальше щелкаю в RUN (на компьютере с колибри) чтобы загрузить новую версию, и в другой RUN, чтобы ее запустить. Быстро и просто.


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 8 posts ] 

All times are UTC+03:00


Who is online

Users browsing this forum: No registered users and 3 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Limited