diff options
author | Samuel Ortiz <sameo@linux.intel.com> | 2012-04-20 16:23:08 +0200 |
---|---|---|
committer | Samuel Ortiz <sameo@linux.intel.com> | 2012-04-20 16:23:08 +0200 |
commit | a289448af2fd2caced579fb6949667ec8f4665cc (patch) | |
tree | a267dac72fc36e44287e0f107d4e67f518875f12 /plugins | |
parent | 12d07a6f09c0f8668455416379922f25084ffc02 (diff) | |
download | neard-a289448af2fd2caced579fb6949667ec8f4665cc.tar.gz neard-a289448af2fd2caced579fb6949667ec8f4665cc.tar.bz2 neard-a289448af2fd2caced579fb6949667ec8f4665cc.zip |
npp: Parse TLVs and add records to the device structure
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/npp.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/plugins/npp.c b/plugins/npp.c index fdc2ba0..9d2958f 100644 --- a/plugins/npp.c +++ b/plugins/npp.c @@ -57,11 +57,12 @@ static near_bool_t npp_read(int client_fd, uint32_t adapter_idx, uint32_t target_idx, near_tag_io_cb cb) { - struct near_tag *tag; + struct near_device *device; struct p2p_npp_frame frame; struct p2p_npp_ndef_entry entry; int bytes_recv, n_ndef, i, ndef_length, total_ndef_length, err; uint8_t *ndefs, *current_ndef; + GList *records; ndefs = NULL; total_ndef_length = 0; @@ -123,8 +124,8 @@ static near_bool_t npp_read(int client_fd, if (err < 0) return FALSE; - tag = near_tag_get_tag(adapter_idx, target_idx); - if (tag == NULL) { + device = near_device_get_device(adapter_idx, target_idx); + if (device == NULL) { g_free(ndefs); return -ENOMEM; } @@ -132,7 +133,8 @@ static near_bool_t npp_read(int client_fd, for (i = 0; i < total_ndef_length; i++) DBG("NDEF[%d] 0x%x", i, ndefs[i]); -// near_tlv_parse(tag, cb); + records = near_tlv_parse(ndefs, total_ndef_length); + near_device_add_records(device, records, cb, 0); g_free(ndefs); |