update to use libnfc's trunk

This commit is contained in:
Audrey Diacre 2012-01-25 09:58:16 +00:00
parent 21008cda5d
commit 4f0227ddcb
20 changed files with 330 additions and 295 deletions

View file

@ -22,7 +22,7 @@
#include "mifare_classic_fixture.h"
static nfc_device_t *device = NULL;
static nfc_device *device = NULL;
static MifareTag *tags = NULL;
MifareTag tag = NULL;
@ -30,38 +30,38 @@ void
cut_setup (void)
{
int res;
nfc_device_desc_t devices[8];
nfc_connstring devices[8];
size_t device_count;
nfc_init(NULL);
nfc_list_devices (devices, 8, &device_count);
if (!device_count)
cut_omit ("No device found");
device_count = nfc_list_devices (NULL, devices, 8);
if (device_count <= 0)
cut_omit ("No device found");
for (size_t i = 0; i < device_count; i++) {
device = nfc_open (NULL, devices[i]);
if (!device)
cut_omit ("nfc_open() failed.");
device = nfc_connect (&(devices[i]));
if (!device)
cut_omit ("nfc_connect() failed");
tags = freefare_get_tags (device);
cut_assert_not_null (tags, cut_message ("freefare_get_tags() failed"));
tags = freefare_get_tags (device);
cut_assert_not_null (tags, cut_message ("freefare_get_tags() failed"));
tag = NULL;
for (int i=0; tags[i]; i++) {
if ((freefare_get_tag_type(tags[i]) == CLASSIC_1K) ||
(freefare_get_tag_type(tags[i]) == CLASSIC_4K)) {
tag = tags[i];
res = mifare_classic_connect (tag);
cut_assert_equal_int (0, res, cut_message ("mifare_classic_connect() failed"));
return;
}
}
nfc_disconnect (device);
device = NULL;
freefare_free_tags (tags);
tags = NULL;
tag = NULL;
for (int i=0; tags[i]; i++) {
if ((freefare_get_tag_type(tags[i]) == CLASSIC_1K) ||
(freefare_get_tag_type(tags[i]) == CLASSIC_4K)) {
tag = tags[i];
res = mifare_classic_connect (tag);
cut_assert_equal_int (0, res, cut_message ("mifare_classic_connect() failed"));
return;
}
}
nfc_close (device);
device = NULL;
freefare_free_tags (tags);
tags = NULL;
}
cut_omit ("No MIFARE Classic tag on NFC device");
}
@ -69,14 +69,16 @@ void
cut_teardown (void)
{
if (tag)
mifare_classic_disconnect (tag);
mifare_classic_disconnect (tag);
if (tags) {
freefare_free_tags (tags);
tags = NULL;
freefare_free_tags (tags);
tags = NULL;
}
if (device)
nfc_disconnect (device);
nfc_close (device);
nfc_exit(NULL);
}

View file

@ -22,7 +22,7 @@
#include "mifare_desfire_ev1_fixture.h"
static nfc_device_t *device = NULL;
static nfc_device *device = NULL;
static MifareTag *tags = NULL;
MifareTag tag = NULL;
@ -30,47 +30,48 @@ void
cut_setup (void)
{
int res;
nfc_device_desc_t devices[8];
nfc_connstring devices[8];
size_t device_count;
nfc_init(NULL);
nfc_list_devices (devices, 8, &device_count);
if (!device_count)
cut_omit ("No device found");
device_count = nfc_list_devices (NULL, devices, 8);
if (device_count <= 0)
cut_omit ("No device found");
for (size_t i = 0; i < device_count; i++) {
device = nfc_connect (&(devices[i]));
if (!device)
cut_omit ("nfc_connect() failed");
device = nfc_open (NULL, devices[i]);
if (!device)
cut_omit ("nfc_open() failed.");
tags = freefare_get_tags (device);
cut_assert_not_null (tags, cut_message ("freefare_get_tags() failed"));
tags = freefare_get_tags (device);
cut_assert_not_null (tags, cut_message ("freefare_get_tags() failed"));
tag = NULL;
for (int i=0; tags[i]; i++) {
if (freefare_get_tag_type(tags[i]) == DESFIRE) {
tag = tags[i];
res = mifare_desfire_connect (tag);
cut_assert_equal_int (0, res, cut_message ("mifare_desfire_connect() failed"));
tag = NULL;
for (int i=0; tags[i]; i++) {
if (freefare_get_tag_type(tags[i]) == DESFIRE) {
tag = tags[i];
res = mifare_desfire_connect (tag);
cut_assert_equal_int (0, res, cut_message ("mifare_desfire_connect() failed"));
struct mifare_desfire_version_info version_info;
res = mifare_desfire_get_version (tag, &version_info);
cut_assert_equal_int (0, res, cut_message ("mifare_desfire_get_version"));
struct mifare_desfire_version_info version_info;
res = mifare_desfire_get_version (tag, &version_info);
cut_assert_equal_int (0, res, cut_message ("mifare_desfire_get_version"));
if ((version_info.hardware.version_major >= 1) &&
(version_info.software.version_major >= 1)) {
return;
}
if ((version_info.hardware.version_major >= 1) &&
(version_info.software.version_major >= 1)) {
return;
}
mifare_desfire_disconnect (tag);
}
}
nfc_disconnect (device);
device = NULL;
freefare_free_tags (tags);
tags = NULL;
mifare_desfire_disconnect (tag);
}
}
nfc_close (device);
device = NULL;
freefare_free_tags (tags);
tags = NULL;
}
cut_omit ("No MIFARE DESFire EV1 tag on NFC device");
}
@ -78,14 +79,16 @@ void
cut_teardown (void)
{
if (tag)
mifare_desfire_disconnect (tag);
mifare_desfire_disconnect (tag);
if (tags) {
freefare_free_tags (tags);
tags = NULL;
freefare_free_tags (tags);
tags = NULL;
}
if (device)
nfc_disconnect (device);
if (device)
nfc_close (device);
nfc_exit(NULL);
}

View file

@ -22,60 +22,63 @@
#include "mifare_desfire_fixture.h"
static nfc_device_t *device = NULL;
static nfc_device *device = NULL;
static MifareTag *tags = NULL;
MifareTag tag = NULL;
void
cut_setup (void)
{
int res;
nfc_device_desc_t devices[8];
size_t device_count;
int res;
nfc_connstring devices[8];
size_t device_count;
nfc_init(NULL);
nfc_list_devices (devices, 8, &device_count);
if (!device_count)
cut_omit ("No device found");
device_count = nfc_list_devices (NULL, devices, 8);
if (device_count <= 0)
cut_omit ("No device found");
for (size_t i = 0; i < device_count; i++) {
for (size_t i = 0; i < device_count; i++) {
device = nfc_connect (&(devices[i]));
if (!device)
cut_omit ("nfc_connect() failed");
device = nfc_open (NULL, devices[i]);
if (!device)
cut_omit ("nfc_open() failed.");
tags = freefare_get_tags (device);
cut_assert_not_null (tags, cut_message ("freefare_get_tags() failed"));
tags = freefare_get_tags (device);
cut_assert_not_null (tags, cut_message ("freefare_get_tags() failed"));
tag = NULL;
for (int i=0; tags[i]; i++) {
if (freefare_get_tag_type(tags[i]) == DESFIRE) {
tag = tags[i];
res = mifare_desfire_connect (tag);
cut_assert_equal_int (0, res, cut_message ("mifare_desfire_connect() failed"));
return;
}
}
nfc_disconnect (device);
device = NULL;
freefare_free_tags (tags);
tags = NULL;
tag = NULL;
for (int i=0; tags[i]; i++) {
if (freefare_get_tag_type(tags[i]) == DESFIRE) {
tag = tags[i];
res = mifare_desfire_connect (tag);
cut_assert_equal_int (0, res, cut_message ("mifare_desfire_connect() failed"));
return;
}
}
cut_omit ("No MIFARE DESFire tag on NFC device");
nfc_close (device);
device = NULL;
freefare_free_tags (tags);
tags = NULL;
}
cut_omit ("No MIFARE DESFire tag on NFC device");
}
void
cut_teardown (void)
{
if (tag)
mifare_desfire_disconnect (tag);
if (tag)
mifare_desfire_disconnect (tag);
if (tags) {
freefare_free_tags (tags);
tags = NULL;
}
if (tags) {
freefare_free_tags (tags);
tags = NULL;
}
if (device)
nfc_disconnect (device);
if (device)
nfc_close (device);
nfc_exit(NULL);
}

View file

@ -22,7 +22,7 @@
#include "mifare_ultralight_fixture.h"
static nfc_device_t *device = NULL;
static nfc_device *device = NULL;
static MifareTag *tags = NULL;
MifareTag tag = NULL;
@ -30,36 +30,38 @@ void
cut_setup (void)
{
int res;
nfc_device_desc_t devices[8];
nfc_connstring devices[8];
size_t device_count;
nfc_init(NULL);
nfc_list_devices (devices, 8, &device_count);
if (!device_count)
cut_omit ("No device found");
device_count = nfc_list_devices (NULL, devices, 8);
if (device_count <= 0)
cut_omit ("No device found");
for (size_t i = 0; i < device_count; i++) {
device = nfc_connect (&(devices[i]));
if (!device)
cut_omit ("nfc_connect() failed");
device = nfc_open (NULL, devices[i]);
if (!device)
cut_omit ("nfc_open() failed.");
tags = freefare_get_tags (device);
cut_assert_not_null (tags, cut_message ("freefare_get_tags() failed"));
tags = freefare_get_tags (device);
cut_assert_not_null (tags, cut_message ("freefare_get_tags() failed"));
tag = NULL;
for (int i=0; tags[i]; i++) {
if ((freefare_get_tag_type(tags[i]) == ULTRALIGHT) ||
(freefare_get_tag_type(tags[i]) == ULTRALIGHT_C)) {
tag = tags[i];
res = mifare_ultralight_connect (tag);
cut_assert_equal_int (0, res, cut_message ("mifare_ultralight_connect() failed"));
return;
}
}
nfc_disconnect (device);
device = NULL;
freefare_free_tags (tags);
tags = NULL;
tag = NULL;
for (int i=0; tags[i]; i++) {
if ((freefare_get_tag_type(tags[i]) == ULTRALIGHT) ||
(freefare_get_tag_type(tags[i]) == ULTRALIGHT_C)) {
tag = tags[i];
res = mifare_ultralight_connect (tag);
cut_assert_equal_int (0, res, cut_message ("mifare_ultralight_connect() failed"));
return;
}
}
nfc_close (device);
device = NULL;
freefare_free_tags (tags);
tags = NULL;
}
cut_omit ("No MIFARE UltraLight tag on NFC device");
@ -69,14 +71,16 @@ void
cut_teardown (void)
{
if (tag)
mifare_ultralight_disconnect (tag);
mifare_ultralight_disconnect (tag);
if (tags) {
freefare_free_tags (tags);
tags = NULL;
freefare_free_tags (tags);
tags = NULL;
}
if (device)
nfc_disconnect (device);
nfc_close (device);
nfc_exit(NULL);
}