]> git.zerfleddert.de Git - proxmark3-svn/blobdiff - client/proxmark3.c
correct 1st key calculation
[proxmark3-svn] / client / proxmark3.c
index f7a87f6d27ae86a491362eab5b522c9fae8eb519..95dd7cb948168a17ccbc841bd097ced81c763d70 100644 (file)
@@ -67,7 +67,14 @@ struct receiver_arg {
 byte_t rx[sizeof(UsbCommand)];
 byte_t* prx = rx;
 
 byte_t rx[sizeof(UsbCommand)];
 byte_t* prx = rx;
 
-static void *uart_receiver(void *targ) {
+
+static void
+#ifdef __has_attribute
+#if __has_attribute(force_align_arg_pointer)
+__attribute__((force_align_arg_pointer)) 
+#endif
+#endif
+*uart_receiver(void *targ) {
        struct receiver_arg *arg = (struct receiver_arg*)targ;
        size_t rxlen;
 
        struct receiver_arg *arg = (struct receiver_arg*)targ;
        size_t rxlen;
 
@@ -95,7 +102,13 @@ static void *uart_receiver(void *targ) {
 }
 
 
 }
 
 
-void main_loop(char *script_cmds_file, char *script_cmd, bool usb_present) {
+void
+#ifdef __has_attribute
+#if __has_attribute(force_align_arg_pointer)
+__attribute__((force_align_arg_pointer)) 
+#endif
+#endif
+main_loop(char *script_cmds_file, char *script_cmd, bool usb_present) {
        struct receiver_arg rarg;
        char *cmd = NULL;
        pthread_t reader_thread;
        struct receiver_arg rarg;
        char *cmd = NULL;
        pthread_t reader_thread;
@@ -355,11 +368,13 @@ int main(int argc, char* argv[]) {
                sp = uart_open(argv[1]);
        } else {
                printf("Waiting for Proxmark to appear on %s ", argv[1]);
                sp = uart_open(argv[1]);
        } else {
                printf("Waiting for Proxmark to appear on %s ", argv[1]);
+               fflush(stdout);
                int openCount = 0;
                do {
                        sp = uart_open(argv[1]);
                        msleep(1000);
                        printf(".");
                int openCount = 0;
                do {
                        sp = uart_open(argv[1]);
                        msleep(1000);
                        printf(".");
+                       fflush(stdout);
                } while(++openCount < 20 && (sp == INVALID_SERIAL_PORT || sp == CLAIMED_SERIAL_PORT));
                printf("\n");
        }
                } while(++openCount < 20 && (sp == INVALID_SERIAL_PORT || sp == CLAIMED_SERIAL_PORT));
                printf("\n");
        }
Impressum, Datenschutz