diff --git a/emulator/bthost.c b/emulator/bthost.c
index 3179bb3..c7d59ee 100644
--- a/emulator/bthost.c
+++ b/emulator/bthost.c
}
static void send_iso(struct bthost *bthost, uint16_t handle, bool ts,
- uint16_t sn, uint32_t timestamp,
- const struct iovec *iov, int iovcnt)
+ uint16_t sn, uint32_t timestamp, uint8_t pkt_status,
+ const struct iovec *iov, int iovcnt)
{
struct bt_hci_iso_hdr iso_hdr;
struct bt_hci_iso_data_start data_hdr;
}
data_hdr.sn = cpu_to_le16(sn);
- data_hdr.slen = cpu_to_le16(iso_data_len_pack(len, 0));
+ data_hdr.slen = cpu_to_le16(iso_data_len_pack(len, pkt_status));
pdu[3].iov_base = &data_hdr;
pdu[3].iov_len = sizeof(data_hdr);
}
void bthost_send_iso(struct bthost *bthost, uint16_t handle, bool ts,
- uint16_t sn, uint32_t timestamp,
- const struct iovec *iov, int iovcnt)
+ uint16_t sn, uint32_t timestamp, uint8_t pkt_status,
+ const struct iovec *iov, int iovcnt)
{
struct btconn *conn;
if (!conn)
return;
- send_iso(bthost, handle, ts, sn, timestamp, iov, iovcnt);
+ send_iso(bthost, handle, ts, sn, timestamp, pkt_status, iov, iovcnt);
}
bool bthost_l2cap_req(struct bthost *bthost, uint16_t handle, uint8_t code,
diff --git a/emulator/bthost.h b/emulator/bthost.h
index cdc12dc..4678136 100644
--- a/emulator/bthost.h
+++ b/emulator/bthost.h
void bthost_send_cid_v(struct bthost *bthost, uint16_t handle, uint16_t cid,
const struct iovec *iov, int iovcnt);
void bthost_send_iso(struct bthost *bthost, uint16_t handle, bool ts,
- uint16_t sn, uint32_t timestamp,
- const struct iovec *iov, int iovcnt);
+ uint16_t sn, uint32_t timestamp, uint8_t pkt_status,
+ const struct iovec *iov, int iovcnt);
typedef void (*bthost_l2cap_rsp_cb) (uint8_t code, const void *data,
uint16_t len, void *user_data);
diff --git a/tools/iso-tester.c b/tools/iso-tester.c
index bbd5a47..ae3eb68 100644
--- a/tools/iso-tester.c
+++ b/tools/iso-tester.c
host = hciemu_client_get_host(data->hciemu);
bthost_send_iso(host, data->handle, isodata->ts, sn++, 0,
- isodata->recv, 1);
+ 0x00, isodata->recv, 1);
data->io_id[0] = g_io_add_watch(io, G_IO_IN, iso_recv_data, data);
}