GNU.WIKI: The GNU/Linux Knowledge Base

  [HOME] [PHP Manual] [HowTo] [ABS] [MAN1] [MAN2] [MAN3] [MAN4] [MAN5] [MAN6] [MAN7] [MAN8] [MAN9]

  [0-9] [Aa] [Bb] [Cc] [Dd] [Ee] [Ff] [Gg] [Hh] [Ii] [Jj] [Kk] [Ll] [Mm] [Nn] [Oo] [Pp] [Qq] [Rr] [Ss] [Tt] [Uu] [Vv] [Ww] [Xx] [Yy] [Zz]


NAME

     mad_new, mad_read, mad_write, mad_get_version, mad_set_version,
     mad_get_card_publisher_sector, mad_set_card_publisher_sector,
     mad_get_aid, mad_set_aid, mad_free, — Mifare Application Directory (MAD)
     Manipulation Functions

LIBRARY

     Mifare card manipulation library (libfreefare, -lfreefare)

SYNOPSIS

     #include <freefare.h>

     Mad
     mad_new(uint8_t version);

     Mad
     mad_read(MifareTag tag);

     int
     mad_write(MifareTag tag, Mad mad, MifareClassicKey key_b_sector_00,
         MifareClassicKey key_b_sector_10);

     int
     mad_get_version(Mad mad);

     void
     mad_set_version(Mad mad, uint8_t version);

     MifareClassicSectorNumber
     mad_get_card_publisher_sector(Mad mad);

     int
     mad_set_card_publisher_sector(Mad mad, MifareClassicSectorNumber cps);

     int
     mad_get_aid(Mad mad, MifareClassicSectorNumber sector, MadAid *aid);

     int
     mad_set_aid(Mad mad, MifareClassicSectorNumber sector, MadAid aid);

     void
     mad_free(Mad mad);

DESCRIPTION

     Mifare Application Directories (MAD) can be easily manipulated using the
     mad_*() set of functions.

     A mad can be loaded form a Mifare Classic tag using mad_read() or
     generated from scratch using mad_new() and providing the version of the
     mad to generate. After using a mad, the memory can be reclaimed using
     mad_free().

     A mad can be written to a Mifare Classic tag using mad_write() and
     providing the B keys required for writing to sectors 0, key_b_sector_00,
     and the one required for writing to sectors 10, key_b_sector_10.  When
     writing a MAD version 1 mad, the key_b_sector_10.

     The version of a MAD mad can be read using mad_get_version() and changed
     using mad_set_version().

     The card publisher sector number cps can be read read using
     mad_get_card_publisher_sector() and writen using
     mad_set_card_publisher_sector().

     Sectors allocation in the mad is handled by the mad_get_aid() and
     mad_set_aid() functions.  These functions fill-in or read the Application
     Identifier, aid for the given sector.

RETURN VALUES

     The mad_new() function return NULL on failure and allocates memory that
     has to be freed using mad_free() on success.  Unless stated otherwise,
     all other functions return a value greater than or equal to 0 on success
     or -1 on failure.

SEE ALSO

     freefare(3), mifare_application(3), mifare_classic(3)

AUTHORS

     Romain Tartiere ⟨romain@blogreen.org⟩
     Romuald Conty ⟨romuald@libnfc.org



  All copyrights belong to their respective owners. Other content (c) 2014-2018, GNU.WIKI. Please report site errors to webmaster@gnu.wiki.
Page load time: 0.154 seconds. Last modified: November 04 2018 12:49:43.