]> cvs.zerfleddert.de Git - proxmark3-svn/blobdiff - client/proxmark3.c
USB CDC patch by jonor to enable working under kernel 2.6.27
[proxmark3-svn] / client / proxmark3.c
index 949013ecb975e9fd796fa062f98042a110cbae0e..78bc1fe47040fe88c46ba8ea5a9b29cf67cb71d4 100644 (file)
@@ -21,8 +21,8 @@
 #include "proxgui.h"
 #include "cmdmain.h"
 #include "uart.h"
-#include "messages.h"
 #include "ui.h"
+#include "sleep.h"
 
 static serial_port sp;
 static UsbCommand txcmd;
@@ -144,7 +144,7 @@ static void *main_loop(void *targ) {
         nl = strrchr(script_cmd_buf, '\n');
         if (nl) *nl = '\0';
         
-        if ((cmd = (char*) malloc(strlen(script_cmd_buf))) != NULL)
+        if ((cmd = (char*) malloc(strlen(script_cmd_buf) + 1)) != NULL)
         {
           memset(cmd, 0, strlen(script_cmd_buf));
           strcpy(cmd, script_cmd_buf);
@@ -196,6 +196,7 @@ static void *main_loop(void *targ) {
 }
 
 int main(int argc, char* argv[]) {
+  srand(time(0));
   
   if (argc < 2) {
     printf("syntax: %s <port>\n\n",argv[0]);
@@ -220,11 +221,16 @@ int main(int argc, char* argv[]) {
     offline = 0;
   }
 */
+  
   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;
Impressum, Datenschutz