abort after 10 retries of mifare l3 init
authorDobrica Pavlinusic <dpavlin@rot13.org>
Sat, 14 Oct 2023 08:55:59 +0000 (10:55 +0200)
committerDobrica Pavlinusic <dpavlin@rot13.org>
Wed, 18 Oct 2023 07:30:25 +0000 (09:30 +0200)
utils/mifare-tool.c

index f650355..fffbf5b 100644 (file)
@@ -87,11 +87,15 @@ static int mifare_cl_auth(unsigned char *key, int page)
 
 static void mifare_l3(void)
 {
+
+       int retry;
+
        while (l2_init(RFID_LAYER2_ISO14443A) < 0) ;
 
        printf("ISO14443-3A anticollision succeeded\n");
 
-       while (l3_init(RFID_PROTOCOL_MIFARE_CLASSIC) < 0) ;
+       retry = 0;
+       while (l3_init(RFID_PROTOCOL_MIFARE_CLASSIC) < 0 && retry++ < 10) ;
 
        printf("Mifare card available\n");
 }