X-Git-Url: http://cvs.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/blobdiff_plain/d19929cbe8d681b60496ca6d9d9cbd806822e163..1618a18e899bcec7f6a1c4ad884b84472fa67655:/include/hitag2.h

diff --git a/include/hitag2.h b/include/hitag2.h
index 3ed2b9fc..2406c649 100644
--- a/include/hitag2.h
+++ b/include/hitag2.h
@@ -7,14 +7,29 @@
 //-----------------------------------------------------------------------------
 // Hitag2 type prototyping
 //-----------------------------------------------------------------------------
+// HitagS added 
+//-----------------------------------------------------------------------------
 
 #ifndef _HITAG2_H_
 #define _HITAG2_H_
 
+#ifdef _MSC_VER
+#define PACKED
+#else
+#define PACKED __attribute__((packed))
+#endif
+
 typedef enum {
-	RHT2F_PASSWORD           = 21,
-	RHT2F_AUTHENTICATE       = 22,
-    RHT2F_TEST_AUTH_ATTEMPTS = 25,
+	RHTSF_CHALLENGE           = 01,
+	RHTSF_KEY                 = 02,
+	WHTSF_CHALLENGE           = 03,
+	WHTSF_KEY                 = 04,
+	RHT2F_PASSWORD            = 21,
+	RHT2F_AUTHENTICATE        = 22,
+	RHT2F_CRYPTO              = 23,
+	WHT2F_CRYPTO              = 24,
+	RHT2F_TEST_AUTH_ATTEMPTS  = 25,
+	RHT2F_UID_ONLY            = 26,
 } hitag_function;
 
 typedef struct {
@@ -23,11 +38,18 @@ typedef struct {
 
 typedef struct {
 	byte_t NrAr[8];
+	byte_t data[4];
 } PACKED rht2d_authenticate;
 
+typedef struct {
+	byte_t key[6];
+	byte_t data[4];
+} PACKED rht2d_crypto;
+
 typedef union {
 	rht2d_password pwd;
 	rht2d_authenticate auth;
+	rht2d_crypto crypto;
 } hitag_data;
 
 #endif