Уже задавал подобный вопрос но ответа так и не получил, веренее была пара советов, но они не оказали эффекта. Так что повторюсь. Имеется модуль, в нём реализована функция write ну и конечно же создаётся девайс, который юзается через внешнюю прогу. Вот код проги: /*****************************************************************/ #include <unistd.h> #include <stdio.h> #include <stdlib.h> #include <fcntl.h> char *num; //num of parametrs //convert int to char void int_to_char(int n) { } int main(int argc, char *argv[]) { int fd; char *end = "$"; //this is dev for netfw control fd = open("/dev/netfw", O_RDWR); if(fd == -1){ printf("open failed\n"); return -1; } printf("Device netfw open\nTry to write\n"); //calc num of parametrs like: from, to, fport, tport int ap = argc - 1 - 3; printf("ap = %d\n",ap); //check it int i; //write control element like: add/del, pass/drop and name of table printf("argc = %d\n",argc); //check it if(!argv[1]) { printf("write 1$\n"); write(fd,end,strlen(end) + 1); return 0; } else write(fd, argv[1], strlen(argv[1]) + 1); if(!argv[2]) { printf("wrte 2$\n"); write(fd,end,strlen(end) + 1); return 0; } else write(fd, argv[2], strlen(argv[2]) + 1); if(!argv[3]) { printf("write 3$\n"); write(fd,end,strlen(end) + 1); return 0; } else write(fd, argv[3], strlen(argv[3]) + 1); if(ap > 0) { //write num of parametrs int_to_char(ap/2); write(fd, num, strlen(num) + 1); //write parametrs for(i = argc - ap; i < argc; i++) { printf(argv[i]); printf("\n"); write(fd, argv[i], strlen(argv[i]) + 1); } } //write symbol to finish transacton, in this case it's "$" printf("write 4$\n"); write(fd,end,strlen(end) + 1); //close file close(fd); printf("Device netfw close\n"); free(num); return EXIT_SUCCESS; } /*****************************************************************/
Ответ на:
комментарий
от cyclon
Ответ на:
комментарий
от erDiZz
Ответ на:
комментарий
от erDiZz
Ответ на:
комментарий
от cyclon
Ответ на:
комментарий
от erDiZz
Ответ на:
комментарий
от erDiZz
Ответ на:
комментарий
от cyclon
Ответ на:
комментарий
от cyclon
Ответ на:
комментарий
от cyclon
Ответ на:
комментарий
от erDiZz
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Выделение памяти в модуле. (2005)
- Форум Проблемма с выделением памяти. (2005)
- Форум Си (2013)
- Форум Простейший вопрос - свои первые строчки на C. Где argv ? (2004)
- Форум Не получается написать прогу (2010)
- Форум C первые шаги (2007)
- Форум Непонимаю я как открыть пайп (2014)
- Форум Не компилится элементарная прога... (2003)
- Форум Не компилиься элементарная рога... (2003)
- Форум математика (2005)