* fix length of mifare classic block
[librfid] / include / librfid / rfid_protocol.h
index 446abd9..b4a145d 100644 (file)
@@ -40,16 +40,19 @@ enum rfid_protocol_id {
        RFID_PROTOCOL_TCL,
        RFID_PROTOCOL_MIFARE_UL,
        RFID_PROTOCOL_MIFARE_CLASSIC,
+       RFID_PROTOCOL_ICODE_SLI,
+       RFID_PROTOCOL_TAGIT,
+       NUM_RFID_PROTOCOLS
 };
 
 enum rfid_protocol_opt {
        RFID_OPT_PROTO_ID,
+       RFID_OPT_PROTO_SIZE     = 0x10000001,
 };
 
 #ifdef __LIBRFID__
 
 struct rfid_protocol {
-       struct rfid_protocol *next;
        unsigned int id;
        char *name;
        struct {
@@ -85,10 +88,11 @@ struct rfid_protocol {
 #include <librfid/rfid_protocol_tcl.h>
 #include <librfid/rfid_protocol_mifare_ul.h>
 #include <librfid/rfid_protocol_mifare_classic.h>
+#include <librfid/rfid_protocol_tagit.h>
 
 struct rfid_protocol_handle {
        struct rfid_layer2_handle *l2h;
-       struct rfid_protocol *proto;
+       const struct rfid_protocol *proto;
        union {
                struct tcl_handle tcl;
        } priv;                         /* priv has to be last, since