|
Работа с TFTP. |
|
|
|
Sep 19 2017, 09:41
|
Профессионал
    
Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075

|
Запускаю TFTP Server на стороне компьютера. На стороне прибора создаю TFTP Client и пытаюсь скопировать файл с сервера. Код STATUS TFTP_GetFile(char *host_adr, char *targ_file_name, char *dest_file_name) { FILE *file; int result; file = open (dest_file_name, O_RDWR | O_CREAT, 0644); result = tftpCopy (host_adr, 0, targ_file_name, "get", "ascii", file); if (result == OK) printf("TFTP DATA OK\n"); else printf("TFTP DATA TRANSFER FAIL\n"); return result; }
//в таске TFTP_GetFile(server_ip, "C:/Users/General/Desktop/TFTP_DIR/data.txt", "test.txt"); получаю сообщение от сервера Цитата Connection received from 10.0.0.10 on port 51398 [19/09 12:22:45.036] Read request for file <C:/Users/General/Desktop/TFTP_DIR/data.txt>. Mode netascii [19/09 12:22:45.036] File <C:\Users\General\Desktop\TFTP_DIR\data.txt> : error 123 in system call CreateFile The filename, directory name, or volume label syntax is incorrect. [19/09 12:22:45.036] В чем может быть проблема? Мне кажется что файл не создается по каким то причинам. file = open (dest_file_name, O_RDWR | O_CREAT, 0644);
|
|
|
|
|
 |
Ответов
|
Sep 19 2017, 20:24
|
Участник

Группа: Участник
Сообщений: 49
Регистрация: 7-03-11
Из: Владимир
Пользователь №: 63 445

|
Цитата(Jenya7 @ Sep 19 2017, 17:25)  такой файл существует C:\Users\General\Desktop\TFTP_DIR\data.txt и директория в сервере задана C:\Users\General\Desktop\TFTP_DIR Если у тебя у TFTP сервера корневая папка C:\Users\General\Desktop\TFTP_DIR\ То тебе в коде скорее всего надо написать просто TFTP_GetFile(server_ip, "data.txt", "test.txt"); То есть TFTP клиент по умолчанию попадает в папку C:\Users\General\Desktop\TFTP_DIR\ и из нее должен забрать файлик data.txt О структуре папок на твоём компе и тем более диске C: TFTP сервер клиенту не сообщает и по идее сам не должен лезть выше обозначенной папки.
|
|
|
|
|
Sep 20 2017, 06:46
|
Профессионал
    
Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075

|
Цитата(Barcooler @ Sep 20 2017, 02:24)  Если у тебя у TFTP сервера корневая папка C:\Users\General\Desktop\TFTP_DIR\ То тебе в коде скорее всего надо написать просто TFTP_GetFile(server_ip, "data.txt", "test.txt");
То есть TFTP клиент по умолчанию попадает в папку C:\Users\General\Desktop\TFTP_DIR\ и из нее должен забрать файлик data.txt О структуре папок на твоём компе и тем более диске C: TFTP сервер клиенту не сообщает и по идее сам не должен лезть выше обозначенной папки. спасибо! в этом была проблема. теперь я вижу сервер посылает файл. но я не могу прочесть содержимое. что то не так делаю Код STATUS TFTP_GetFile(char *host_adr, char *targ_file_name, char *dest_file_name) { FILE *file; int result; int len; file = open (dest_file_name, O_RDWR | O_CREAT, 0644); result = tftpCopy (host_adr, 69, targ_file_name, "get", "ascii", file); if (result == OK) { len = read(file, buff, size); printf("TFTP DATA = %s\n", buff); } else printf("TFTP DATA TRANSFER FAIL\n"); return result; }
//в таске char read_buf[1024]; TFTP_GetFile(server_ip, "data.txt", "test.txt", read_buff, 20);
|
|
|
|
Сообщений в этой теме
Jenya7 Работа с TFTP. Sep 19 2017, 09:41 gerber Попробуйте вместо ascii режим binary. Sep 20 2017, 06:54 Jenya7 Цитата(gerber @ Sep 20 2017, 12:54) Попро... Sep 20 2017, 07:28 Barcooler Какую программу TFTP сервера используете?
Возможно... Sep 20 2017, 09:15 Jenya7 Цитата(Barcooler @ Sep 20 2017, 15:15) Ка... Sep 20 2017, 09:29  Barcooler Цитата(Jenya7 @ Sep 20 2017, 12:29) польз... Sep 20 2017, 09:54 XVR Попробуйте позвать lseek(file,0,SEEK_SET) перед re... Sep 20 2017, 10:28 Barcooler Всё? Sep 21 2017, 20:15 Jenya7 Цитата(Barcooler @ Sep 22 2017, 02:15) Вс... Sep 24 2017, 12:38 Jenya7 Тут выясняется что я должен быть сервер. А как мне... Oct 3 2017, 08:11 XVR Зачем вам директория в RAM? Зачем вам вообще файло... Oct 3 2017, 10:00 Jenya7 Цитата(XVR @ Oct 3 2017, 15:00) Зачем вам... Oct 3 2017, 10:05 XVR Клиент стучится на tftp порт (69) на ваш IP, в зап... Oct 3 2017, 10:18 Jenya7 Цитата(XVR @ Oct 3 2017, 15:18) Клиент ст... Oct 3 2017, 10:25 XVR Для начала вы должны поднять у себя tftp сервер. З... Oct 3 2017, 11:30 Jenya7 Цитата(XVR @ Oct 3 2017, 16:30) Для начал... Oct 3 2017, 12:06  XVR Цитата(Jenya7 @ Oct 3 2017, 15:06) я поль... Oct 3 2017, 14:32   Jenya7 Цитата(XVR @ Oct 3 2017, 19:32) Это библи... Oct 3 2017, 14:57 XVR Может их вообще нет? Забыли реализовать
Подайте с... Oct 4 2017, 10:13 Jenya7 В vxWorks 6.9 они убрали эти функции. Oct 10 2017, 07:29
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|