#include <near/tag.h>
void __near_tag_append_records(struct near_tag *tag, DBusMessageIter *iter);
+near_bool_t __near_tag_get_ro(struct near_tag *tag);
uint32_t __near_tag_n_records(struct near_tag *tag);
int __near_tag_add_record(struct near_tag *tag, struct near_ndef_record *record);
struct near_tag *__near_tag_new(uint32_t adapter_idx, uint32_t target_idx,
tag->adapter_idx = adapter_idx;
tag->target_idx = target_idx;
tag->n_records = 0;
+ tag->readonly = 0;
if (data_length > 0) {
tag->data_length = data_length;
return 0;
}
+near_bool_t __near_tag_get_ro(struct near_tag *tag)
+{
+ return tag->readonly;
+}
+
uint8_t *near_tag_get_data(struct near_tag *tag, size_t *data_length)
{
if (data_length == NULL)
struct near_target *target = data;
DBusMessage *reply;
DBusMessageIter array, dict;
+ near_bool_t ronly;
const char *type;
DBG("conn %p", conn);
near_dbus_dict_append_array(&dict, "Records",
DBUS_TYPE_OBJECT_PATH, append_records, target);
+
+ if (target->tag != NULL) {
+ ronly = __near_tag_get_ro(target->tag);
+ near_dbus_dict_append_basic(&dict, "ReadOnly",
+ DBUS_TYPE_BOOLEAN, &ronly);
+ }
}
near_dbus_dict_close(&array, &dict);