Removed the incomplete feature in LWM2M RD client to "guess" a LWM2M
server if none has been specified. This does not belong in the LWM2M RD client and does not work well with multiple server support.
This commit is contained in:
parent
962aa01d30
commit
82b7b74165
|
@ -300,31 +300,6 @@ lwm2m_rd_client_register_with_server(lwm2m_session_info_t *session_info,
|
||||||
list_add(session_info_list, session_info); /* Add to the list of sessions */
|
list_add(session_info_list, session_info); /* Add to the list of sessions */
|
||||||
}
|
}
|
||||||
/*---------------------------------------------------------------------------*/
|
/*---------------------------------------------------------------------------*/
|
||||||
static int
|
|
||||||
update_registration_server(lwm2m_session_info_t *session_info)
|
|
||||||
{
|
|
||||||
if(session_info->has_registration_server_info) {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
#if UIP_CONF_IPV6_RPL
|
|
||||||
{
|
|
||||||
rpl_dag_t *dag;
|
|
||||||
|
|
||||||
/* Use the DAG id as server address if no other has been specified */
|
|
||||||
dag = rpl_get_any_dag();
|
|
||||||
if(dag != NULL) {
|
|
||||||
/* create coap-endpoint? */
|
|
||||||
/* uip_ipaddr_copy(&server_ipaddr, &dag->dag_id); */
|
|
||||||
/* server_port = REMOTE_PORT; */
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#endif /* UIP_CONF_IPV6_RPL */
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
/*---------------------------------------------------------------------------*/
|
|
||||||
int
|
int
|
||||||
lwm2m_rd_client_deregister(lwm2m_session_info_t *session_info)
|
lwm2m_rd_client_deregister(lwm2m_session_info_t *session_info)
|
||||||
{
|
{
|
||||||
|
@ -359,31 +334,6 @@ lwm2m_rd_client_update_triggered(const coap_endpoint_t *server_ep)
|
||||||
/* Here we need to do an CoAP timer poll - to get a quick request transmission! */
|
/* Here we need to do an CoAP timer poll - to get a quick request transmission! */
|
||||||
}
|
}
|
||||||
/*---------------------------------------------------------------------------*/
|
/*---------------------------------------------------------------------------*/
|
||||||
static int
|
|
||||||
update_bootstrap_server(lwm2m_session_info_t *session_info)
|
|
||||||
{
|
|
||||||
if(session_info->has_bs_server_info) {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
#if UIP_CONF_IPV6_RPL
|
|
||||||
{
|
|
||||||
rpl_dag_t *dag;
|
|
||||||
|
|
||||||
/* Use the DAG id as server address if no other has been specified */
|
|
||||||
dag = rpl_get_any_dag();
|
|
||||||
if(dag != NULL) {
|
|
||||||
/* create coap endpoint */
|
|
||||||
/* uip_ipaddr_copy(&bs_server_ipaddr, &dag->dag_id); */
|
|
||||||
/* bs_server_port = REMOTE_PORT; */
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#endif /* UIP_CONF_IPV6_RPL */
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
/*---------------------------------------------------------------------------*/
|
|
||||||
/*
|
/*
|
||||||
* A client initiated bootstrap starts with a POST to /bs?ep={session_info.ep},
|
* A client initiated bootstrap starts with a POST to /bs?ep={session_info.ep},
|
||||||
* on the bootstrap server. The server should reply with 2.04.
|
* on the bootstrap server. The server should reply with 2.04.
|
||||||
|
@ -676,24 +626,23 @@ periodic_process(coap_timer_t *timer)
|
||||||
break;
|
break;
|
||||||
case DO_BOOTSTRAP:
|
case DO_BOOTSTRAP:
|
||||||
if(session_info->use_server_type == LWM2M_RD_CLIENT_BOOTSTRAP_SERVER &&
|
if(session_info->use_server_type == LWM2M_RD_CLIENT_BOOTSTRAP_SERVER &&
|
||||||
session_info->bootstrapped == 0) {
|
session_info->bootstrapped == 0 &&
|
||||||
if(update_bootstrap_server(session_info)) {
|
session_info->has_bs_server_info) {
|
||||||
|
|
||||||
/* prepare request, TID is set by COAP_BLOCKING_REQUEST() */
|
/* prepare request, TID is set by COAP_BLOCKING_REQUEST() */
|
||||||
coap_init_message(session_info->request, COAP_TYPE_CON, COAP_POST, 0);
|
coap_init_message(session_info->request, COAP_TYPE_CON, COAP_POST, 0);
|
||||||
coap_set_header_uri_path(session_info->request, "/bs");
|
coap_set_header_uri_path(session_info->request, "/bs");
|
||||||
|
|
||||||
snprintf(query_data, sizeof(query_data) - 1, "?ep=%s", session_info->ep);
|
snprintf(query_data, sizeof(query_data) - 1, "?ep=%s", session_info->ep);
|
||||||
coap_set_header_uri_query(session_info->request, query_data);
|
coap_set_header_uri_query(session_info->request, query_data);
|
||||||
LOG_INFO("Registering ID with bootstrap server [");
|
LOG_INFO("Registering ID with bootstrap server [");
|
||||||
LOG_INFO_COAP_EP(&session_info->bs_server_ep);
|
LOG_INFO_COAP_EP(&session_info->bs_server_ep);
|
||||||
LOG_INFO_("] as '%s'\n", query_data);
|
LOG_INFO_("] as '%s'\n", query_data);
|
||||||
/* Add session info as user data to use it in the callbacks */
|
/* Add session info as user data to use it in the callbacks */
|
||||||
session_info->rd_request_state.state.user_data = (void *)session_info;
|
session_info->rd_request_state.state.user_data = (void *)session_info;
|
||||||
if(coap_send_request(&session_info->rd_request_state, &session_info->bs_server_ep,
|
if(coap_send_request(&session_info->rd_request_state, &session_info->bs_server_ep,
|
||||||
session_info->request, bootstrap_callback)) {
|
session_info->request, bootstrap_callback)) {
|
||||||
session_info->rd_state = BOOTSTRAP_SENT;
|
session_info->rd_state = BOOTSTRAP_SENT;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -770,7 +719,7 @@ periodic_process(coap_timer_t *timer)
|
||||||
|
|
||||||
if(session_info->use_server_type == LWM2M_RD_CLIENT_LWM2M_SERVER &&
|
if(session_info->use_server_type == LWM2M_RD_CLIENT_LWM2M_SERVER &&
|
||||||
!lwm2m_rd_client_is_registered(session_info) &&
|
!lwm2m_rd_client_is_registered(session_info) &&
|
||||||
update_registration_server(session_info)) {
|
session_info->has_registration_server_info) {
|
||||||
int len;
|
int len;
|
||||||
|
|
||||||
/* prepare request, TID was set by COAP_BLOCKING_REQUEST() */
|
/* prepare request, TID was set by COAP_BLOCKING_REQUEST() */
|
||||||
|
|
Loading…
Reference in New Issue