Hi Steve, On Thu, 2017-12-14 at 02:12 -0700, Steve Brown wrote: > Hi Inga, > On Thu, 2017-12-14 at 08:08 +0000, Stotland, Inga wrote: > > Hi Steve, > > > > On Tue, 2017-12-12 at 12:58 +0000, sbrown@xxxxxxxxxxxx wrote: > > > From: Steve Brown <sbrown@xxxxxxxxxxxx> > > > > > > Fix lines over 80 chars > > > Move cmd_default() > > > Add parameter to pub-set to control retransmit count > > > --- > > > mesh/config-client.c | 78 +++++++++++++++++++++++++++----------- > > > -- > > > -- > > > ---------- > > > 1 file changed, 41 insertions(+), 37 deletions(-) > > > > > > diff --git a/mesh/config-client.c b/mesh/config-client.c > > > index 3d618b6a6..51adf2c52 100644 > > > --- a/mesh/config-client.c > > > +++ b/mesh/config-client.c > > > @@ -170,9 +170,9 @@ static bool client_msg_recvd(uint16_t src, > > > uint8_t *data, > > > if (len != 12 && len != 14) > > > return true; > > > > > > - bt_shell_printf("\nSet publication for node > > > %4.4x > > > status: %s\n", src, > > > - data[0] == MESH_STATUS_SUCCESS ? > > > "Success" : > > > - mesh_status_str( > > > da > > > ta > > > [0])); > > > + bt_shell_printf("\nSet publication for node > > > %4.4x > > > status: %s\n", > > > + src, data[0] == > > > MESH_STATUS_SUCCESS > > > ? > > > + "Success" : > > > mesh_status_str(data[0])); > > > > > > if (data[0] != MESH_STATUS_SUCCESS) > > > return true; > > > @@ -189,6 +189,7 @@ static bool client_msg_recvd(uint16_t src, > > > uint8_t *data, > > > pub.ttl = data[7]; > > > pub.period = data[8]; > > > n = (data[8] & 0x3f); > > > + bt_shell_printf("Publication address: 0x%04x\n", > > > pub.u.addr16); > > > switch (data[8] >> 6) { > > > case 0: > > > bt_shell_printf("Period: %d ms\n", n * > > > 100); > > > @@ -206,7 +207,8 @@ static bool client_msg_recvd(uint16_t src, > > > uint8_t *data, > > > > > > pub.retransmit = data[9]; > > > bt_shell_printf("Retransmit count: %d\n", > > > data[9] > > > > > > > > > > > 5); > > > - bt_shell_printf("Retransmit Interval Steps: > > > %d\n", > > > data[9] & 0x1f); > > > + bt_shell_printf("Retransmit Interval Steps: > > > %d\n", > > > + data[9] & 0x1f); > > > > > > ele_idx = ele_addr - node_get_primary(node); > > > > > > @@ -219,6 +221,7 @@ static bool client_msg_recvd(uint16_t src, > > > uint8_t *data, > > > node_model_pub_get(node, > > > ele_idx, mod_id)); > > > break; > > > } > > > + > > > return true; > > > } > > > > > > @@ -287,6 +290,23 @@ static bool config_send(uint8_t *buf, > > > uint16_t > > > len) > > > > > > } > > > > > > +static void cmd_default(uint32_t opcode) > > > +{ > > > + uint16_t n; > > > + uint8_t msg[32]; > > > + > > > + if (IS_UNASSIGNED(target)) { > > > + bt_shell_printf("Destination not set\n"); > > > + return; > > > + } > > > + > > > + n = mesh_opcode_set(opcode, msg); > > > + > > > + if (!config_send(msg, n)) > > > + bt_shell_printf("Failed to send command (opcode > > > 0x%x)\n", > > > + > > > op > > > co > > > de); > > > +} > > > + > > > static void cmd_get_composition(int argc, char *argv[]) > > > { > > > uint16_t n; > > > @@ -556,7 +576,7 @@ static void cmd_set_pub(int argc, char > > > *argv[]) > > > n = mesh_opcode_set(OP_CONFIG_MODEL_PUB_SET, msg); > > > > > > parm_cnt = read_input_parameters(argc, argv); > > > - if (parm_cnt != 5) { > > > + if (parm_cnt != 6) { > > > bt_shell_printf("Bad arguments\n"); > > > return; > > > } > > > @@ -574,14 +594,14 @@ static void cmd_set_pub(int argc, char > > > *argv[]) > > > /* Publish period step count and step resolution */ > > > msg[n++] = parms[3]; > > > /* Publish retransmit count & interval steps */ > > > - msg[n++] = (1 << 5) + 2; > > > + msg[n++] = parms[4]; > > > /* Model Id */ > > > - if (parms[4] > 0xffff) { > > > - put_le16(parms[4] >> 16, msg + n); > > > - put_le16(parms[4], msg + n + 2); > > > + if (parms[5] > 0xffff) { > > > + put_le16(parms[5] >> 16, msg + n); > > > + put_le16(parms[5], msg + n + 2); > > > n += 4; > > > } else { > > > - put_le16(parms[4], msg + n); > > > + put_le16(parms[5], msg + n); > > > n += 2; > > > } > > > > > > @@ -589,23 +609,6 @@ static void cmd_set_pub(int argc, char > > > *argv[]) > > > bt_shell_printf("Failed to send \"SET MODEL > > > PUBLICATION\"\n"); > > > } > > > > > > -static void cmd_default(uint32_t opcode) > > > -{ > > > - uint16_t n; > > > - uint8_t msg[32]; > > > - > > > - if (IS_UNASSIGNED(target)) { > > > - bt_shell_printf("Destination not set\n"); > > > - return; > > > - } > > > - > > > - n = mesh_opcode_set(opcode, msg); > > > - > > > - if (!config_send(msg, n)) > > > - bt_shell_printf("Failed to send command (opcode > > > 0x%x)\n", > > > - > > > op > > > co > > > de); > > > -} > > > - > > > static void cmd_get_ttl(int argc, char *argv[]) > > > { > > > cmd_default(OP_CONFIG_DEFAULT_TTL_GET); > > > @@ -614,27 +617,28 @@ static void cmd_get_ttl(int argc, char > > > *argv[]) > > > static const struct bt_shell_menu cfg_menu = { > > > .name = "config", > > > .entries = { > > > - {"target", "<unicast>", > > > cmd_set_node, > > > + {"target", "<unicast>", cm > > > d_ > > > se > > > t_node, > > > "Set target node > > > to > > > configure"}, > > > - {"get-composition", "[<page_num>]", > > > cm > > > d_get_composition, > > > + {"composition-get", "[<page_num>]", > > > cm > > > d_get_composition, > > > "Get Composition > > > Data"}, > > > - {"add-netkey", "<net_idx>", > > > > > > cmd_add_net_key, > > > + {"netkey-add", "<net_idx>", > > > cm > > > d_add_net_key, > > > "Add network > > > key"}, > > > - {"del-netkey", "<net_idx>", > > > > > > cmd_del_net_key, > > > + {"netkey-del", "<net_idx>", > > > cm > > > d_del_net_key, > > > "Delete network > > > key"}, > > > - {"add-appkey", "<app_idx>", > > > > > > cmd_add_app_key, > > > + {"appkey-add", "<app_idx>", > > > cm > > > d_add_app_key, > > > "Add application > > > key"}, > > > - {"del-appkey", "<app_idx>", > > > > > > cmd_del_app_key, > > > + {"appkey-del", "<app_idx>", > > > cm > > > d_del_app_key, > > > "Delete > > > application > > > key"}, > > > {"bind", "<ele_idx> <app_idx> <mod_id> > > > [cid]", > > > cmd_bind, "Bind app key > > > to > > > a > > > model"}, > > > - {"set-ttl", "<ttl>", > > > c > > > md_set_ttl, > > > + {"ttl-set", "<ttl>", cmd_s > > > et > > > _t > > > tl, > > > "Set default > > > TTL"}, > > > - {"get-ttl", NULL, > > > cm > > > d_ > > > get_ttl, > > > + {"ttl-get", NULL, > > > cm > > > d_ > > > get_ttl, > > > "Get default > > > TTL"}, > > > - {"set-pub", "<ele_addr> <pub_addr> <app_idx> " > > > - "<period > > > (step|res)> > > > <model>", > > > + {"pub-set", "<ele_addr> <pub_addr> <app_idx> " > > > + "<period (step|res)> <re-xmt > > > (count|per)> > > > <model>", > > > cmd_set_pub, "Set > > > publication"}, > > > + > > > {} }, > > > }; > > > > > > > Since you are modifying pub-set command, could you please fix it to > > correctly indicate SIG and vendor models, similarly to "bind" > > command > > (adding an optional "cid" parameter for vendor models). > > > > Regards, > > > > Inga Stotland > > It looks like the pub command already assumes it's a vendor model if > the model id is > 0xffff. Is that a correct assumption? > > If it is, should I make the same change to bind and remove the > optional > parameter? > > Steve > > > > > -- > To unsubscribe from this list: send the line "unsubscribe linux- > bluetooth" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html The check for model id is > 0xffff is not entirely correct since it does not account for a case when CID is 0x0000. Regards, Inga
Attachment:
smime.p7s
Description: S/MIME cryptographic signature