comparison rvinterf/lowlevel/tfc139.c @ 253:6f078c4a5506

rvinterf and friends converted to use libserial
author Mychaela Falconia <falcon@freecalypso.org>
date Thu, 21 Sep 2017 23:45:05 +0000
parents e7502631a0f9
children
comparison
equal deleted inserted replaced
252:d27a89068280 253:6f078c4a5506
20 #include <time.h> 20 #include <time.h>
21 #include "../include/pktmux.h" 21 #include "../include/pktmux.h"
22 #include "../include/limits.h" 22 #include "../include/limits.h"
23 23
24 extern int target_fd; 24 extern int target_fd;
25 extern char *baudrate_name;
26 25
27 extern u_char rxpkt[]; 26 extern u_char rxpkt[];
28 extern size_t rxpkt_len; 27 extern size_t rxpkt_len;
29 28
30 char *logfname; 29 char *logfname;
59 58
60 static u_char stack_smash_payload[4]; 59 static u_char stack_smash_payload[4];
61 static int breakin_in_progress; 60 static int breakin_in_progress;
62 61
63 static char *target_tty_port; 62 static char *target_tty_port;
63 static char *baudrate = "57600";
64 64
65 static void 65 static void
66 send_compal_memwrite(addr, payload, payload_len) 66 send_compal_memwrite(addr, payload, payload_len)
67 unsigned addr; 67 unsigned addr;
68 u_char *payload; 68 u_char *payload;
137 extern char *optarg; 137 extern char *optarg;
138 extern int optind; 138 extern int optind;
139 int c; 139 int c;
140 fd_set fds; 140 fd_set fds;
141 141
142 baudrate_name = "57600"; /* what C139 firmware uses */
143 while ((c = getopt(argc, argv, "a:AB:l:ms:w:")) != EOF) 142 while ((c = getopt(argc, argv, "a:AB:l:ms:w:")) != EOF)
144 switch (c) { 143 switch (c) {
145 case 'a': 144 case 'a':
146 shellcode_load_addr = strtoul(optarg, 0, 16); 145 shellcode_load_addr = strtoul(optarg, 0, 16);
147 continue; 146 continue;
148 case 'B': 147 case 'B':
149 baudrate_name = optarg; 148 baudrate = optarg;
150 continue; 149 continue;
151 case 'l': 150 case 'l':
152 logfname = optarg; 151 logfname = optarg;
153 continue; 152 continue;
154 case 'm': 153 case 'm':
175 goto usage; 174 goto usage;
176 if (stack_smash_addr && !shellcode_load_addr) { 175 if (stack_smash_addr && !shellcode_load_addr) {
177 fprintf(stderr, "usage error: -a option required with -s\n"); 176 fprintf(stderr, "usage error: -a option required with -s\n");
178 exit(1); 177 exit(1);
179 } 178 }
180 open_target_serial(argv[optind]); 179 open_serial_port(argv[optind]);
181 target_tty_port = argv[optind]; 180 target_tty_port = argv[optind];
181 set_fixed_baudrate(baudrate);
182 182
183 set_serial_nonblock(0); 183 set_serial_nonblock(0);
184 setlinebuf(stdout); 184 setlinebuf(stdout);
185 if (logfname) { 185 if (logfname) {
186 logF = fopen(logfname, "w"); 186 logF = fopen(logfname, "w");