int main() { usb_init(); SetLogFilename("snooper.log"); g_return_on_error = 1; while(1) { while (!OpenProxmark(0)) { sleep(1); } while (1) { UsbCommand cmdbuf; CommandReceived("hf 14a snoop"); HANDLE_ERROR; ReceiveCommand(&cmdbuf); HANDLE_ERROR; for (int i = 0; i < 5; ++i) { ReceiveCommandPoll(&cmdbuf); } HANDLE_ERROR; CommandReceived("hf 14a list"); HANDLE_ERROR; } } CloseProxmark(); return 0; }
void ReceiveCommand(UsbCommand *c) { // printf("%s()\n", __FUNCTION__); int retval = 0; do { retval = ReceiveCommandPoll(c); if (retval != 1) printf("ReceiveCommandPoll returned %d\n", retval); } while(retval<0); // printf("recv %x\n", c->cmd); }
static void *usb_receiver(void *targ) { struct usb_receiver_arg *arg = (struct usb_receiver_arg*)targ; UsbCommand cmdbuf; while (arg->run) { if (ReceiveCommandPoll(&cmdbuf)) { UsbCommandReceived(&cmdbuf); fflush(NULL); } } pthread_exit(NULL); return NULL; }
int main(int argc, char **argv) { if (argc != 3 && argc != 4) { printf("\n\tusage: cli <command 1> <command 2> [logfile (default cli.log)]\n"); printf("\n"); printf("\texample: cli hi14asnoop hi14alist h14a.log\n"); printf("\n"); return -1; } usb_init(); if (argc == 4) SetLogFilename(argv[3]); else SetLogFilename("cli.log"); return_on_error = 1; while (1) { while (!OpenProxmark(0)) { sleep(1); } while (1) { UsbCommand cmdbuf; CommandReceived(argv[1]); HANDLE_ERROR; ReceiveCommand(&cmdbuf); HANDLE_ERROR; for (int i = 0; i < 5; ++i) { ReceiveCommandPoll(&cmdbuf); } HANDLE_ERROR; CommandReceived(argv[2]); HANDLE_ERROR; } } CloseProxmark(); return 0; }