CoAP: enable reaching link-local endpoints regardless of routing reachability

This commit is contained in:
Simon Duquennoy 2018-04-25 01:21:58 -07:00
parent b6d12670cf
commit a0d7f1d041

View File

@ -49,6 +49,7 @@
#include "contiki.h"
#include "net/ipv6/uip-udp-packet.h"
#include "net/ipv6/uiplib.h"
#include "net/routing/routing.h"
#include "coap.h"
#include "coap-engine.h"
#include "coap-endpoint.h"
@ -58,10 +59,6 @@
#include "coap-keystore.h"
#include "coap-keystore-simple.h"
#if UIP_CONF_IPV6_RPL
#include "rpl.h"
#endif /* UIP_CONF_IPV6_RPL */
/* Log configuration */
#include "coap-log.h"
#define LOG_MODULE "coap-uip"
@ -263,13 +260,12 @@ coap_endpoint_is_secure(const coap_endpoint_t *ep)
int
coap_endpoint_is_connected(const coap_endpoint_t *ep)
{
#if UIP_CONF_IPV6_RPL
#ifndef CONTIKI_TARGET_NATIVE
if(rpl_get_any_dag() == NULL) {
if(!uip_is_addr_linklocal(&ep->ipaddr)
&& NETSTACK_ROUTING.node_is_reachable() == 0) {
return 0;
}
#endif
#endif /* UIP_CONF_IPV6_RPL */
#ifdef WITH_DTLS
if(ep != NULL && ep->secure != 0) {