Commit graph

544 commits

Author SHA1 Message Date
The Gitter Badger
beda0c3e85 Add Gitter badge 2016-01-19 11:03:09 +00:00
Romain Tartière
e17a54c18e Check tag is a FeliCa before dumping it. 2016-01-18 17:13:22 +01:00
Romain Tartière
9db57c4efc Push my TODO notes 2016-01-18 10:31:22 +01:00
Massimiliano Zilli
636cd9c761 Fix memoy leak. 2015-09-08 17:04:14 +02:00
Romain Tartière
b6792a0a08 Fix dumping send bytes.
Unbreak build with --enable-debug.
Fixes #43.
2015-08-13 09:50:20 +02:00
Romain Tartière
34ee5bd28b Fix build. 2015-06-01 13:16:43 +02:00
Romain Tartière
343959c5dc Stop leaking UID 2015-06-01 13:16:11 +02:00
Romain Tartière
1e43abd9d4 Leave enougth room for the final \0. 2015-06-01 13:15:42 +02:00
Romain Tartière
2c47f42538 Actually accept -o. 2015-05-13 19:52:33 +02:00
Romain Tartière
ac50476c99 No need to connect/disconnect FeliCa targets. 2015-05-13 19:52:08 +02:00
Romain Tartière
6049acaf5a Introduce experimental FeliCa Lite API. 2015-05-13 02:06:55 +02:00
Romain Tartière
4016405214 Add updating instructions. 2015-05-13 02:01:23 +02:00
Romain Tartière
1ce3db3ca6 Improve naming consistency.
Ensure all MIFARE related names and structures start with "mifare_" or
"MIFARE_".
2015-05-12 13:52:18 +02:00
Romain Tartière
faac4ae5d8 Fix white spaces inconsistencies. 2015-05-12 13:19:00 +02:00
Romain Tartière
48e4f979a9 Add modulation_type to the supported_tag structure.
This will allow supporting tags using other modulations.
2015-05-12 13:11:56 +02:00
Romain Tartière
6984e162e6 Fix " \t" sequences. 2015-05-12 12:25:44 +02:00
Romain Tartière
07695f4c18 Remove subversion artifacts.
We do not have $Id$ to expand anymore.
2015-05-12 12:22:39 +02:00
Romain Tartière
c388ba6b30 Another step in card type agnostism direction. 2015-05-11 22:55:32 +02:00
Romain Tartière
89e5344b91 Sort and sync lists. 2015-05-11 18:57:56 +02:00
Romain Tartière
27c7cd9217 Sort and fix names. 2015-05-11 18:55:24 +02:00
Romain Tartière
42b21ff42f Rename MifareTag to FreefareTag.
Because we are libfreefare and not libmifare, the generic tag type
should not be so specific.
2015-05-11 18:55:20 +02:00
Romain Tartière
d946230aec Fix compiler warning. 2015-05-11 18:39:32 +02:00
Romain Tartière
b710ba5abd Fix memory leak. 2015-04-20 14:43:15 +02:00
Romain Tartière
4acd3ac72b Remove now useless extra buffer size. 2015-04-20 14:41:31 +02:00
Romain Tartière
a0ba196b49 Fix buffer overrun when reading record files.
When reading from a record file, length is set to the number of records to
read, and needs to be multiplied by the record size in order to allocate
enougth memory for reading the response.
2015-04-15 17:14:02 +02:00
Romain Tartière
f6c7f7692b Check malloc(3) return value. 2015-04-15 17:11:14 +02:00
Romain Tartière
65894ca3b4 Unbreak automake.
Now that README is named README.md for Github integration, automake will fail
if not told we use a foreign way of naming files.
2015-04-13 15:10:35 +02:00
Romain Tartière
515fc66050 Update and rename README to README.md 2015-04-13 14:34:13 +02:00
Romain Tartière
ffde4d4d92 Fix mifare_desfire_get_[iso_]file_ids() prototype.
The "files" parameter is not an array of pointer to uint8_t (uint8_t
*files[]), but rather an pointer to an array of uint8_t (uint8_t
(*files)[]).  Since this syntax confuses the compiler (the program
attempt to assign a value to what "files" is pointing to, which is
supposed to be an array, which is not assignable), declare "files" as a
pointer to a pointer to uint8_t (uint8_t **files) which makes everybody
happy.

Fixes issue 26.
2014-04-16 02:35:40 +02:00
Romain Tartière
27d33775dc Don't make me think! 2014-04-16 02:02:50 +02:00
Romain Tartière
57e1fceb6b Prevent mifare_desfire_read_data() overflow.
Depending on the communication settings, mifare_desfire_read_data() may
write more than the provided "length" bytes to the "data" buffer,
possibly causing data corruption or crashes if no special care is taken.

Since the test suite is precisely a "no special care is taken" example,
assume only "length" bytes can be written to the "data" buffer and rely
on a temporary buffer for cryptographic operations.

Fixes  issue 28.
2014-04-16 01:54:14 +02:00
Romain Tartière
8290d3d8cc Keys are supposed to be const. 2014-04-13 20:29:57 +02:00
Romain Tartière
32c585db69 rnda & rndb are 16 bytes long in 3K3DS and AES mode. 2014-04-13 20:01:44 +02:00
Romain Tartière
646a20da34 Add missing break.
This had no incidence on the code, but this change make things more
consistent.
2014-04-13 19:47:56 +02:00
Romain Tartière
c42dfce78d Style. 2014-04-13 19:41:17 +02:00
Romain Tartière
e848cf9ced Ignore a few more files. 2014-04-06 14:14:12 +02:00
Romain Tartière
510d8a4b85 Reindent after last commit. 2014-04-06 14:14:01 +02:00
Romain Tartière
3085408bf2 Check malloc() return value.
Fixes issue 25.
2014-04-06 13:38:12 +02:00
Robert Clausecker
0ad6a09cda Tell apart malloc failure from no application in mifare_application_write() 2014-03-19 18:55:09 +01:00
Robert Clausecker
3e53c7811a Check for NULL pointer in mifare_application_free()
This changeset alters the return type of mifare_application_free() from void to
int. This change is necessary to be able to inform the caller whether the call
to malloc() inside mifare_application_find() failed.
2014-03-19 18:55:04 +01:00
Philippe Teuwen
c4e657f8cd Return EACCES when authentication to a DESFire tag fails
Note that in case the tag didn't authenticate us, we've also
tag->last_picc_error = AUTHENTICATION_ERROR
But in the unlikely event that we didn't authenticate the tag
(e.g. if the tag is fake and pretends the auth was ok)
only errno = EACCES will be set
2014-03-14 22:50:17 +01:00
Philippe Teuwen
c72a55993b Return EACCES when authentication to a MIFARE Classic tag fails 2014-03-14 22:31:48 +01:00
Robert Clausecker
184c5dcbdf Return EACCES when authentication to an ultralight tag fails 2014-03-13 14:07:41 +01:00
Philippe Teuwen
7ae729a65d Use 424kbits/s when talking to DESFire
PN532 does not support 847kbits/s, oops
2014-03-11 22:09:53 +01:00
Philippe Teuwen
e6b80856c9 Use 847kbits/s when talking to DESFire
This has effects only with libnfc >= libnfc-1.7.1-5-g108de27
2014-03-11 00:16:07 +01:00
Philippe Teuwen
7933adc57e mifare_desfire_connect(): select Desfire AID 2014-02-11 17:24:50 +01:00
Philippe Teuwen
2960f704f8 Let's redirect NFC phones to Desfire as they're ISO14443-4 2014-02-11 17:24:38 +01:00
Philippe Teuwen
dbb88cd184 mifare_cryto_postprocess_data: add safety checks 2014-01-27 18:24:55 +01:00
Philippe Teuwen
e797ee2a2e Add freefare_selected_tag_is_present() 2014-01-27 16:32:23 +01:00
Maxim Chechel
9ee3687280 Support for Dual Interface cards like UICC/eSE SmartMX based emulation 2013-12-18 19:14:50 +04:00