Commit graph

559 commits

Author SHA1 Message Date
Romain Tartière
4deb8c998a
Merge pull request #98 from manu0402/master
Introduce timeout on DESfire operations
2018-12-10 17:52:25 -10:00
Emmanuel Dreyfus
2d9ada743b Introduce timeout on DESfire operations
There are a few reasons why an NFC operation may timeout, including
the pn533 USB toggle bit bug. In that case it helps to report the
problem to calling process so that it can retry operation, instead
of hanging forever.

For instance, mifare_desfire_format_picc() may make the chip
unresponsive (see commit 91d3ff9cc4),
but if calling process gets ETIMEDOUT, it can select_application,
authenticate and format_picc again, with some success.
2018-12-11 03:47:03 +01:00
SloCompTech
c18f702840 Fix issues for NTAG21x tags
- Change default tag from NTAG_213 to NTAG_UNKNOWN so unknown tags can
  be detected.  ntag_get_info() MUST be called after connect;
- Fix reuse function which used to reset all tag info;
- Introduce ntag21x error reporting through freefare_error(3);
2018-03-09 23:19:30 +01:00
Philippe Teuwen
75f08d3a85
Merge pull request #79 from darconeous/an10922
Support for AN10922 key derivation
2018-01-19 02:00:02 +01:00
Robert Quattlebaum
9d88c18833 Support for AN10922 key derivation
This commit implements [AN10922][] key diversification, as described in issue #77.

[AN10922]: https://www.nxp.com/docs/en/application-note/AN10922.pdf
2018-01-08 22:08:37 -08:00
Romain Tartière
3d398dcd2f
Merge pull request #78 from darconeous/key-version-fix
Additional MifareDesfireKey fixes + tests
2018-01-08 18:31:22 +01:00
Robert Quattlebaum
67e7186d2b Additional MifareDesfireKey fixes + tests
In addition to adding tests for the bugs addressed via #70,
this commit also addresses a key corruption bug that would
occur on 3DES keys when `mifare_desfire_key_set_version()`
was called.
2018-01-08 09:23:07 -08:00
Andreas Oberritter
eea8b7b51e mifare_desfire_key: fix get/set_version for AES keys 2018-01-06 08:47:45 -08:00
Philippe Teuwen
2514cde675
Merge pull request #80 from darconeous/ultralightc-set-key
mifare-ultralight: Added mifare_ultralightc_set_key()
2018-01-06 17:36:49 +01:00
Robert Quattlebaum
58ced25978 mifare-ultralight: Added mifare_ultralightc_set_key()
This new method sets the authentication key on a MIFARE Ultralight C
card, and is analogous to `ntag21x_set_key()`.
2018-01-06 08:19:00 -08:00
Romain Tartière
2bda6a071f
Merge pull request #73 from lunixoid/master
Fixed possible memory leak
2017-10-31 09:31:18 +01:00
Roman Kalashnikov
5f9c23aaa9
Fixed possible memory leak 2017-10-31 00:44:55 +03:00
Romain Tartière
9d1d5f13a9
Merge pull request #72 from lunixoid/master
Fixed missprint
2017-10-30 08:43:07 +01:00
Roman Kalashnikov
f372c7500f
Fixed missprint 2017-10-29 23:20:33 +03:00
Romain Tartière
69bf99b33d Run make style to indent macros 2017-06-29 12:25:53 +02:00
Romain Tartière
c54e3d981c Ask astyle(1) to indent macros too 2017-06-29 12:23:03 +02:00
Romain Tartière
14b44b8076 Add Travis-CI badge 2017-06-29 09:55:48 +02:00
Romain Tartière
626f409676 Merge pull request #49 from nfc-tools/cleanup
No objection for a year, I guess anyone is fine with the `COPYING` file in the repository root directory and relying on git to determine who wrote what piece of code.
2017-06-29 09:41:03 +02:00
Romain Tartière
2a311c13ad Only include config.h if HAVE_CONFIG_H is defined 2017-06-29 09:29:15 +02:00
Romain Tartière
6c1f6283bd Deduplicate fixture headers. 2017-06-29 09:29:15 +02:00
Romain Tartière
94bf7059b4 Remove copyright comments.
The COPYRIGHT file is already here and is more complete, while the VCS
hold accurate information about contributors and conibution date.
2017-06-29 09:29:15 +02:00
Romain Tartière
32c6ed8f32 Align macros indentation with the rest of the code 2017-06-29 09:27:36 +02:00
Romain Tartière
5bd27a9d68 Merge pull request #66 from janschiefer/master
Convenience function for PICC master key settings, apply 'free_create_delete_files' in MDAPP_SETTINGS()
2017-06-29 09:22:58 +02:00
Dr. Jan Schiefer
091d60e227 1. Add convenience function for managing PICC master key settings. 2. Apply free_create_delete_files in MDAPP_SETTINGS(). 2017-06-29 01:06:33 +02:00
Romain Tartière
22929cd2cb Merge pull request #65 from salcatroppa/master
Update freefare_internal.h
2017-06-27 15:33:54 +02:00
Salvatore Catroppa
78322f486e Update freefare_internal.h 2017-06-27 15:14:51 +02:00
Romain Tartière
b49692848e Merge pull request #64 from nfc-tools/style
Use astyle(1) to make style consistent
2017-06-27 14:35:48 +02:00
Romain Tartière
73dc0529fa Run make style to fix style 2017-06-27 13:58:31 +02:00
Romain Tartière
187481bb4c Ignore new examples 2017-06-27 13:57:05 +02:00
Romain Tartière
9d016f7c3c Add make style target 2017-06-27 11:11:17 +02:00
Martin Dagarin
b2eca838c4 Added support for NTAG 21x tags (#53) 2017-06-27 10:50:50 +02:00
Romain Tartière
2be45f60e2 Merge pull request #63 from nfc-tools/travis-build
Test the build with Travis-CI
2017-06-27 08:10:39 +02:00
Romain Tartière
be3e581eff Build test then run them
We do not run the test suite at the `make check` stage here in order to
have a better output.
2017-06-26 13:17:37 +02:00
Romain Tartière
7536bbde06 Attempt to have a working cutter 2017-06-26 11:52:00 +02:00
Romain Tartière
33eaf7fcce Run the test suite using cutter
This is only available with the autotools build for now.
2017-06-26 11:43:17 +02:00
Romain Tartière
616df0af82 Do not use pkg-config(1) to search for libnfc
Since libnfc is not installed system-wide, pkg-config(1) can't find it.
Set LIBNFC_CFLAGS/LDFLAGS manually.
2017-06-26 11:30:36 +02:00
Romain Tartière
6ef62014d1 Imediatly stop on failure 2017-06-26 11:29:29 +02:00
Romain Tartière
d0f78c4880 Fix autotools build
CMake seems to find the libnfc includes and libraries, but not the
autotools.  Pass them to ./configure.
2017-06-26 11:21:28 +02:00
Romain Tartière
a884eb3dca Fix Travis-CI build
While here, refactor a bit so that a failing libnfc build does not
indicate a failure of the libfreefare build.
2017-06-26 11:15:12 +02:00
Romain Tartière
feb0f15f3e Test build using Travis-CI 2017-06-26 11:09:17 +02:00
Romain Tartière
91c2c5986a Merge pull request #62 from janschiefer/convenience_functions
Convenience function for application settings on Mifare DESFire PICCs.
2017-06-26 09:55:23 +02:00
Dr. Jan Schiefer
f293cf9e8a Add convenience function for handling application settings on Mifare DESFire PICCs. Also add information on structure of settings value. 2017-06-19 23:39:09 +02:00
Romain Tartière
0db44b2f3b Merge pull request #52 from ChristophGr/master
allow to cross-compile 32 and 64 bit dlls using MinGW
2017-06-09 09:41:52 +02:00
Christoph Gritschenberger
4903258749 allow to cross-compile 32 and 64 bit dlls using MinGW 2017-06-07 15:15:55 +02:00
Romain Tartière
45ff2ddf19 Merge pull request #61 from manu0401/crypto_error
Do not fail crypto error without reporting
2017-04-27 18:33:33 +02:00
Emmanuel Dreyfus
494233d33b Do not fail crypto error without reporting
Make sure last_pcd_error is set when failing on crypto
errors.

While there:
- make sure warn()/warnx() are inside WITH_DEBUG,
- set last_pcd_error and res before calling abort()
- #include <stdlib.h> for abort()
2017-04-27 16:55:52 +02:00
Romain Tartière
5e5a0828af Merge pull request #58 from swalkner/master
Fix build with CMake
2017-04-24 09:39:09 +02:00
Stefan Walkner
565ee18b8e Fix build with CMake
- Fix library finding ('nfc' instead of 'libnfc');
- Generate config.h from template on non-win32 platforms;
- While here, include protection for config.h in several files.
2017-04-24 09:35:08 +02:00
Romain Tartière
3975019b3c Fix cast from pointer to integer of different size 2017-04-19 13:15:19 +02:00
Romain Tartière
b131f74ea6 Merge pull request #56 from bettse/macos_endianess_fixes
Macos endianess fixes
2017-04-04 10:08:51 +02:00