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);
}