Man page - mad_write(3)
Packages contas this manual
- mifare_classic_restore(3)
- mifare_desfire_select_application(3)
- mifare_desfire_key_get_version(3)
- mifare_ultralight_read(3)
- mifare_desfire_connect(3)
- mifare_desfire_debit_ex(3)
- mifare_desfire_get_value_ex(3)
- mifare_application_find(3)
- mifare_desfire_clear_record_file(3)
- mifare_classic_authenticate(3)
- mad_get_version(3)
- mifare_desfire_aes_key_new_with_version(3)
- mifare_classic_write(3)
- mifare_classic_increment(3)
- mifare_classic_format_sector(3)
- mifare_application_read(3)
- mifare_desfire_limited_credit_ex(3)
- mad_set_version(3)
- mifare_desfire_authenticate(3)
- mifare_desfire_get_card_uid(3)
- mifare_desfire_3des_key_new(3)
- mifare_desfire_authenticate_iso(3)
- mad_set_aid(3)
- mifare_classic_read(3)
- mifare_application_free(3)
- freefare_error(3)
- mifare_classic_get_data_block_permission(3)
- mifare_application(3)
- mifare_desfire_get_file_settings(3)
- mad_new(3)
- mifare_desfire_read_data_ex(3)
- mifare_ultralightc_authenticate(3)
- tlv_decode(3)
- mifare_classic(3)
- mifare_desfire_free_application_ids(3)
- mifare_desfire_debit(3)
- freefare_free_tags(3)
- mifare_ultralight_connect(3)
- mifare_classic_decrement(3)
- mifare_desfire_get_application_ids(3)
- mifare_desfire_credit(3)
- mifare_desfire_create_linear_record_file(3)
- mifare_desfire_get_key_settings(3)
- mifare_ultralight_disconnect(3)
- mifare_classic_get_uid(3)
- mad_get_aid(3)
- mifare_desfire_set_default_key(3)
- mifare_desfire_limited_credit(3)
- mad_write(3)
- tlv(3)
- mifare_desfire_key_set_version(3)
- mifare_desfire_last_picc_error(3)
- mifare_desfire_aes_key_new(3)
- tlv_encode(3)
- mifare_ultralight(3)
- mifare_desfire_des_key_new(3)
- mifare_desfire_change_file_settings(3)
- mifare_desfire_aid_new_with_mad_aid(3)
- freefare_get_tags(3)
- mad(3)
- mifare_desfire_set_ats(3)
- mifare_desfire_commit_transaction(3)
- mifare_desfire_read_records(3)
- mifare_desfire_read_data(3)
- mifare_desfire_create_cyclic_record_file(3)
- freefare_strerror(3)
- mifare_desfire_change_key(3)
- mad_free(3)
- freefare(3)
- mifare_desfire_read_records_ex(3)
- mifare_desfire_free_mem(3)
- mifare_desfire_key_free(3)
- mifare_desfire_delete_application(3)
- mifare_desfire_change_key_settings(3)
- mifare_classic_connect(3)
- mad_read(3)
- mifare_desfire_create_value_file(3)
- mifare_desfire_create_std_data_file(3)
- mifare_desfire_key(3)
- mifare_desfire_create_application(3)
- mifare_desfire_aid(3)
- mad_set_card_publisher_sector(3)
- mifare_desfire_write_record_ex(3)
- mifare_desfire_aid_new(3)
- mifare_ultralight_write(3)
- mifare_desfire_3des_key_new_with_version(3)
- mifare_classic_get_trailer_block_permission(3)
- mifare_classic_init_value(3)
- mifare_desfire_aid_get_aid(3)
- mifare_desfire_get_value(3)
- mifare_classic_transfer(3)
- mifare_desfire_write_data_ex(3)
- mifare_desfire_credit_ex(3)
- mifare_desfire_get_key_version(3)
- freefare_perror(3)
- mifare_desfire_set_configuration(3)
- mifare_desfire_format_picc(3)
- freefare_get_tag_friendly_name(3)
- freefare_strerror_r(3)
- mifare_desfire_write_data(3)
- mifare_application_write(3)
- mifare_classic_trailer_block(3)
- mifare_desfire_last_pcd_error(3)
- freefare_get_tag_type(3)
- mifare_desfire_authenticate_aes(3)
- mifare_classic_disconnect(3)
- mifare_desfire_write_record(3)
- mifare_desfire_get_file_ids(3)
- mifare_desfire_delete_file(3)
- freefare_get_tag_uid(3)
- mifare_application_alloc(3)
- mifare_desfire_create_backup_data_file(3)
- mifare_desfire_abort_transaction(3)
- mifare_ultralight_get_uid(3)
- mifare_classic_read_value(3)
- mifare_desfire_3k3des_key_new(3)
- mifare_desfire_get_version(3)
- mifare_desfire(3)
- mifare_desfire_disconnect(3)
- mifare_desfire_des_key_new_with_version(3)
- mifare_desfire_3k3des_key_new_with_version(3)
- mad_get_card_publisher_sector(3)
apt-get install libfreefare-doc
Manual
| MAD(3) | Library Functions Manual | MAD(3) |
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
AUTHORS
Romain Tartiere
⟨romain@blogreen.org⟩
Romuald Conty ⟨romuald@libnfc.org⟩
| March 30, 2010 | Debian |