ext_msg
struct ext_msg out_msg;
struct ext_msg ext_msg;
adv_read_lram_16_multi(adv, ADVV_MSGIN_BEG, (u_int16_t *) &ext_msg,
sizeof(ext_msg) >> 1);
if ((ext_msg.msg_type == MSG_EXTENDED)
&& (ext_msg.msg_req == MSG_EXT_SDTR)
&& (ext_msg.msg_len == MSG_EXT_SDTR_LEN)) {
orig_offset = ext_msg.req_ack_offset;
if (ext_msg.xfer_period < tinfo->goal.period) {
ext_msg.xfer_period = tinfo->goal.period;
period = ext_msg.xfer_period;
offset = ext_msg.req_ack_offset;
ext_msg.xfer_period = period;
ext_msg.req_ack_offset = offset;
tid_no, ext_msg.xfer_period,
ext_msg.req_ack_offset,
if (orig_offset != ext_msg.req_ack_offset)
adv_msgout_sdtr(adv, ext_msg.xfer_period,
ext_msg.req_ack_offset);
} else if (ext_msg.msg_type == MSG_EXTENDED
&& ext_msg.msg_req == MSG_EXT_WDTR
&& ext_msg.msg_len == MSG_EXT_WDTR_LEN) {
ext_msg.wdtr_width = 0;
(u_int16_t *)&ext_msg,
sizeof(ext_msg) >> 1);
ext_msg.msg_type = MSG_MESSAGE_REJECT;
(u_int16_t *)&ext_msg,
sizeof(ext_msg) >> 1);
struct ext_msg sdtr_buf;