]> cvs.zerfleddert.de Git - proxmark3-svn/blobdiff - client/proxmark3.c
More patches from en4rab to the hexsamples, plus patches to legicsave and legicdecode...
[proxmark3-svn] / client / proxmark3.c
index 5ac7cd0e2c137003a79ea25667f78b3a73be84dc..5cbacc8608cd1024aa4f6a271e3744a4405ed3c1 100644 (file)
 #include "proxgui.h"
 #include "cmdmain.h"
 #include "uart.h"
 #include "proxgui.h"
 #include "cmdmain.h"
 #include "uart.h"
-#include "messages.h"
 #include "ui.h"
 #include "ui.h"
+#include "sleep.h"
 
 static serial_port sp;
 static UsbCommand txcmd;
 
 static serial_port sp;
 static UsbCommand txcmd;
-static bool txcmd_pending = false;
+volatile static bool txcmd_pending = false;
 
 void SendCommand(UsbCommand *c) {
 #if 0
 
 void SendCommand(UsbCommand *c) {
 #if 0
@@ -197,9 +197,10 @@ static void *main_loop(void *targ) {
 
 int main(int argc, char* argv[]) {
   srand(time(0));
 
 int main(int argc, char* argv[]) {
   srand(time(0));
-
+  
   if (argc < 2) {
     printf("syntax: %s <port>\n\n",argv[0]);
   if (argc < 2) {
     printf("syntax: %s <port>\n\n",argv[0]);
+    printf("\tLinux example:'%s /dev/ttyACM0'\n\n", argv[0]);
     return 1;
   }
   
     return 1;
   }
   
@@ -221,11 +222,16 @@ int main(int argc, char* argv[]) {
     offline = 0;
   }
 */
     offline = 0;
   }
 */
+  
   sp = uart_open(argv[1]);
   if (sp == INVALID_SERIAL_PORT) {
     printf("ERROR: invalid serial port\n");
     marg.usb_present = 0;
     offline = 1;
   sp = uart_open(argv[1]);
   if (sp == INVALID_SERIAL_PORT) {
     printf("ERROR: invalid serial port\n");
     marg.usb_present = 0;
     offline = 1;
+  } else if (sp == CLAIMED_SERIAL_PORT) {
+    printf("ERROR: serial port is claimed by another process\n");
+    marg.usb_present = 0;
+    offline = 1;
   } else {
     marg.usb_present = 1;
     offline = 0;
   } else {
     marg.usb_present = 1;
     offline = 0;
Impressum, Datenschutz