doxygen updates - include IPv6 in documentation. Exclude include/netif/ppp/polarssl.

Convert TODO -> @todo
This commit is contained in:
Dirk Ziegelmeier 2016-06-22 20:18:23 +02:00
parent cfe5182380
commit 8dc77ef558
28 changed files with 82 additions and 72 deletions

View File

@ -842,7 +842,7 @@ RECURSIVE = YES
# Note that relative paths are relative to the directory from which doxygen is # Note that relative paths are relative to the directory from which doxygen is
# run. # run.
EXCLUDE = EXCLUDE = ../../src/include/netif/ppp/polarssl
# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or # The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
# directories that are symbolic links (a Unix file system feature) are excluded # directories that are symbolic links (a Unix file system feature) are excluded
@ -2058,7 +2058,7 @@ INCLUDE_PATH = ../../src/include
# used. # used.
# This tag requires that the tag ENABLE_PREPROCESSING is set to YES. # This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
INCLUDE_FILE_PATTERNS = INCLUDE_FILE_PATTERNS = *.c *.h
# The PREDEFINED tag can be used to specify one or more macro names that are # The PREDEFINED tag can be used to specify one or more macro names that are
# defined before the preprocessor is started (similar to the -D option of e.g. # defined before the preprocessor is started (similar to the -D option of e.g.
@ -2070,6 +2070,8 @@ INCLUDE_FILE_PATTERNS =
PREDEFINED = NO_SYS=0 \ PREDEFINED = NO_SYS=0 \
SYS_LIGHTWEIGHT_PROT=1 \ SYS_LIGHTWEIGHT_PROT=1 \
LWIP_IPV4=1 \
LWIP_IPV6=1 \
LWIP_ICMP=1 \ LWIP_ICMP=1 \
LWIP_RAW=1 \ LWIP_RAW=1 \
LWIP_DHCP=1 \ LWIP_DHCP=1 \

View File

@ -286,7 +286,7 @@ netconn_connect(struct netconn *conn, const ip_addr_t *addr, u16_t port)
* Disconnect a netconn from its current peer (only valid for UDP netconns). * Disconnect a netconn from its current peer (only valid for UDP netconns).
* *
* @param conn the netconn to disconnect * @param conn the netconn to disconnect
* @return TODO: return value is not set here... * @return @todo: return value is not set here...
*/ */
err_t err_t
netconn_disconnect(struct netconn *conn) netconn_disconnect(struct netconn *conn)
@ -502,7 +502,7 @@ netconn_recv_data(struct netconn *conn, void **new_buf)
#endif /* (LWIP_UDP || LWIP_RAW) */ #endif /* (LWIP_UDP || LWIP_RAW) */
{ {
/* Let the stack know that we have taken the data. */ /* Let the stack know that we have taken the data. */
/* TODO: Speedup: Don't block and wait for the answer here /* @todo: Speedup: Don't block and wait for the answer here
(to prevent multiple thread-switches). */ (to prevent multiple thread-switches). */
API_MSG_VAR_REF(msg).conn = conn; API_MSG_VAR_REF(msg).conn = conn;
if (buf != NULL) { if (buf != NULL) {
@ -855,6 +855,7 @@ netconn_join_leave_group(struct netconn *conn,
* *
* @param name a string representation of the DNS host name to query * @param name a string representation of the DNS host name to query
* @param addr a preallocated ip_addr_t where to store the resolved IP address * @param addr a preallocated ip_addr_t where to store the resolved IP address
* @param dns_addrtype IP address type (IPv4 / IPv6)
* @return ERR_OK: resolving succeeded * @return ERR_OK: resolving succeeded
* ERR_MEM: memory error, try again later * ERR_MEM: memory error, try again later
* ERR_ARG: dns client not initialized or invalid hostname * ERR_ARG: dns client not initialized or invalid hostname

View File

@ -727,7 +727,7 @@ int process_file(FILE *data_file, FILE *struct_file, const char *filename)
u8_t* file_data; u8_t* file_data;
int is_compressed = 0; int is_compressed = 0;
/* create qualified name (TODO: prepend slash or not?) */ /* create qualified name (@todo: prepend slash or not?) */
sprintf(qualifiedName,"%s/%s", curSubdir, filename); sprintf(qualifiedName,"%s/%s", curSubdir, filename);
/* create C variable name */ /* create C variable name */
strcpy(varname, qualifiedName); strcpy(varname, qualifiedName);

View File

@ -373,7 +373,7 @@ lwiperf_tx_start(lwiperf_state_tcp_t* conn)
client_conn->base.server = 0; client_conn->base.server = 0;
client_conn->server_pcb = NULL; client_conn->server_pcb = NULL;
client_conn->conn_pcb = newpcb; client_conn->conn_pcb = newpcb;
client_conn->time_started = sys_now(); /* TODO: set this again on 'connected' */ client_conn->time_started = sys_now(); /* @todo: set this again on 'connected' */
client_conn->poll_count = 0; client_conn->poll_count = 0;
client_conn->next_num = 4; /* initial nr is '4' since the header has 24 byte */ client_conn->next_num = 4; /* initial nr is '4' since the header has 24 byte */
client_conn->bytes_transferred = 0; client_conn->bytes_transferred = 0;
@ -639,7 +639,7 @@ lwiperf_abort(void* lwiperf_session)
if (last != NULL) { if (last != NULL) {
last->next = i; last->next = i;
} }
LWIPERF_FREE(lwiperf_state_tcp_t, dealloc); /* TODO: type? */ LWIPERF_FREE(lwiperf_state_tcp_t, dealloc); /* @todo: type? */
} else { } else {
last = i; last = i;
i = i->next; i = i->next;

View File

@ -636,7 +636,7 @@ snmp_parse_inbound_frame(struct snmp_request *request)
u16_t u16_value; u16_t u16_value;
/* SNMPv3 doesn't use communities */ /* SNMPv3 doesn't use communities */
/* TODO: Differentiate read/write access */ /* @todo: Differentiate read/write access */
strcpy((char*)request->community, snmp_community); strcpy((char*)request->community, snmp_community);
request->community_strlen = strlen(snmp_community); request->community_strlen = strlen(snmp_community);
@ -723,7 +723,7 @@ snmp_parse_inbound_frame(struct snmp_request *request)
parent_tlv_value_len -= SNMP_ASN1_TLV_LENGTH(tlv); parent_tlv_value_len -= SNMP_ASN1_TLV_LENGTH(tlv);
IF_PARSE_ASSERT(parent_tlv_value_len > 0); IF_PARSE_ASSERT(parent_tlv_value_len > 0);
IF_PARSE_EXEC(snmp_asn1_dec_s32t(&pbuf_stream, tlv.value_len, &request->msg_authoritative_engine_time)); IF_PARSE_EXEC(snmp_asn1_dec_s32t(&pbuf_stream, tlv.value_len, &request->msg_authoritative_engine_time));
/* TODO: Implement time window checking */ /* @todo: Implement time window checking */
/* msgUserName */ /* msgUserName */
IF_PARSE_EXEC(snmp_asn1_dec_tlv(&pbuf_stream, &tlv)); IF_PARSE_EXEC(snmp_asn1_dec_tlv(&pbuf_stream, &tlv));
@ -734,7 +734,7 @@ snmp_parse_inbound_frame(struct snmp_request *request)
IF_PARSE_EXEC(snmp_asn1_dec_raw(&pbuf_stream, tlv.value_len, request->msg_user_name, IF_PARSE_EXEC(snmp_asn1_dec_raw(&pbuf_stream, tlv.value_len, request->msg_user_name,
&u16_value, SNMP_V3_MAX_USER_LENGTH)); &u16_value, SNMP_V3_MAX_USER_LENGTH));
request->msg_user_name_len = u16_value; request->msg_user_name_len = u16_value;
/* TODO: Implement unknown user error response */ /* @todo: Implement unknown user error response */
IF_PARSE_EXEC(snmpv3_get_user((char*)request->msg_user_name, NULL, NULL, NULL, NULL)); IF_PARSE_EXEC(snmpv3_get_user((char*)request->msg_user_name, NULL, NULL, NULL, NULL));
/* msgAuthenticationParameters */ /* msgAuthenticationParameters */
@ -769,12 +769,12 @@ snmp_parse_inbound_frame(struct snmp_request *request)
IF_PARSE_EXEC(snmpv3_get_user((char*)request->msg_user_name, &algo, key, NULL, NULL)); IF_PARSE_EXEC(snmpv3_get_user((char*)request->msg_user_name, &algo, key, NULL, NULL));
IF_PARSE_EXEC(snmpv3_auth(&auth_stream, request->inbound_pbuf->tot_len, key, algo, hmac)); IF_PARSE_EXEC(snmpv3_auth(&auth_stream, request->inbound_pbuf->tot_len, key, algo, hmac));
/* TODO: Implement error response */ /* @todo: Implement error response */
IF_PARSE_EXEC(memcmp(request->msg_authentication_parameters, hmac, SNMP_V3_MAX_AUTH_PARAM_LENGTH)); IF_PARSE_EXEC(memcmp(request->msg_authentication_parameters, hmac, SNMP_V3_MAX_AUTH_PARAM_LENGTH));
} }
#else #else
/* Ungraceful exit if we encounter cryptography and don't support it. /* Ungraceful exit if we encounter cryptography and don't support it.
* TODO: Implement error response * @todo: Implement error response
*/ */
IF_PARSE_ASSERT(!(request->msg_flags & (SNMP_V3_AUTH_FLAG | SNMP_V3_PRIV_FLAG))); IF_PARSE_ASSERT(!(request->msg_flags & (SNMP_V3_AUTH_FLAG | SNMP_V3_PRIV_FLAG)));
#endif #endif

View File

@ -98,7 +98,7 @@ snmpv3_get_engine_time_internal(void)
* *
* Implementing RFC3826 priv param algorithm if LWIP_RAND is available. * Implementing RFC3826 priv param algorithm if LWIP_RAND is available.
* *
* TODO: This is a potential thread safety issue. * @todo: This is a potential thread safety issue.
*/ */
err_t err_t
snmpv3_build_priv_param(u8_t* priv_param) snmpv3_build_priv_param(u8_t* priv_param)

View File

@ -336,10 +336,10 @@ inet_chksum_pseudo(struct pbuf *p, u8_t proto, u16_t proto_len,
* IPv6 addresses are expected to be in network byte order. * IPv6 addresses are expected to be in network byte order.
* *
* @param p chain of pbufs over that a checksum should be calculated (ip data part) * @param p chain of pbufs over that a checksum should be calculated (ip data part)
* @param src source ipv6 address (used for checksum of pseudo header)
* @param dst destination ipv6 address (used for checksum of pseudo header)
* @param proto ipv6 protocol/next header (used for checksum of pseudo header) * @param proto ipv6 protocol/next header (used for checksum of pseudo header)
* @param proto_len length of the ipv6 payload (used for checksum of pseudo header) * @param proto_len length of the ipv6 payload (used for checksum of pseudo header)
* @param src source ipv6 address (used for checksum of pseudo header)
* @param dest destination ipv6 address (used for checksum of pseudo header)
* @return checksum (as u16_t) to be saved directly in the protocol header * @return checksum (as u16_t) to be saved directly in the protocol header
*/ */
u16_t u16_t
@ -483,11 +483,11 @@ inet_chksum_pseudo_partial(struct pbuf *p, u8_t proto, u16_t proto_len,
* portion of the payload. * portion of the payload.
* *
* @param p chain of pbufs over that a checksum should be calculated (ip data part) * @param p chain of pbufs over that a checksum should be calculated (ip data part)
* @param src source ipv6 address (used for checksum of pseudo header)
* @param dst destination ipv6 address (used for checksum of pseudo header)
* @param proto ipv6 protocol/next header (used for checksum of pseudo header) * @param proto ipv6 protocol/next header (used for checksum of pseudo header)
* @param proto_len length of the ipv6 payload (used for checksum of pseudo header) * @param proto_len length of the ipv6 payload (used for checksum of pseudo header)
* @param chksum_len number of payload bytes used to compute chksum * @param chksum_len number of payload bytes used to compute chksum
* @param src source ipv6 address (used for checksum of pseudo header)
* @param dest destination ipv6 address (used for checksum of pseudo header)
* @return checksum (as u16_t) to be saved directly in the protocol header * @return checksum (as u16_t) to be saved directly in the protocol header
*/ */
u16_t u16_t

View File

@ -170,7 +170,7 @@ autoip_handle_arp_conflict(struct netif *netif)
LWIP_DEBUGF(AUTOIP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, LWIP_DEBUGF(AUTOIP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE,
("autoip_handle_arp_conflict(): we are defending, but in DEFEND_INTERVAL, retreating\n")); ("autoip_handle_arp_conflict(): we are defending, but in DEFEND_INTERVAL, retreating\n"));
/* TODO: close all TCP sessions */ /* @todo: close all TCP sessions */
autoip_restart(netif); autoip_restart(netif);
} else { } else {
LWIP_DEBUGF(AUTOIP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, LWIP_DEBUGF(AUTOIP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE,
@ -181,7 +181,7 @@ autoip_handle_arp_conflict(struct netif *netif)
} else { } else {
LWIP_DEBUGF(AUTOIP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE, LWIP_DEBUGF(AUTOIP_DEBUG | LWIP_DBG_TRACE | LWIP_DBG_STATE,
("autoip_handle_arp_conflict(): we do not defend, retreating\n")); ("autoip_handle_arp_conflict(): we do not defend, retreating\n"));
/* TODO: close all TCP sessions */ /* @todo: close all TCP sessions */
autoip_restart(netif); autoip_restart(netif);
} }
} }

View File

@ -41,7 +41,7 @@
* This is a DHCP client for the lwIP TCP/IP stack. It aims to conform * This is a DHCP client for the lwIP TCP/IP stack. It aims to conform
* with RFC 2131 and RFC 2132. * with RFC 2131 and RFC 2132.
* *
* TODO: * @todo:
* - Support for interfaces other than Ethernet (SLIP, PPP, ...) * - Support for interfaces other than Ethernet (SLIP, PPP, ...)
* *
* Please coordinate changes and requests with Leon Woestenberg * Please coordinate changes and requests with Leon Woestenberg
@ -1803,7 +1803,7 @@ dhcp_create_msg(struct netif *netif, struct dhcp *dhcp, u8_t message_type)
dhcp->msg_out = (struct dhcp_msg *)dhcp->p_out->payload; dhcp->msg_out = (struct dhcp_msg *)dhcp->p_out->payload;
dhcp->msg_out->op = DHCP_BOOTREQUEST; dhcp->msg_out->op = DHCP_BOOTREQUEST;
/* TODO: make link layer independent */ /* @todo: make link layer independent */
dhcp->msg_out->htype = DHCP_HTYPE_ETH; dhcp->msg_out->htype = DHCP_HTYPE_ETH;
dhcp->msg_out->hlen = netif->hwaddr_len; dhcp->msg_out->hlen = netif->hwaddr_len;
dhcp->msg_out->hops = 0; dhcp->msg_out->hops = 0;

View File

@ -88,7 +88,7 @@ ethip6_send(struct netif *netif, struct pbuf *p, struct eth_addr *src, struct et
* *
* For unicast addresses, ... * For unicast addresses, ...
* *
* @TODO anycast addresses * @todo anycast addresses
* *
* @param netif The lwIP network interface which the IP packet will be sent on. * @param netif The lwIP network interface which the IP packet will be sent on.
* @param q The pbuf(s) containing the IP packet to be sent. * @param q The pbuf(s) containing the IP packet to be sent.
@ -127,7 +127,7 @@ ethip6_output(struct netif *netif, struct pbuf *q, const ip6_addr_t *ip6addr)
} }
/* We have a unicast destination IP address */ /* We have a unicast destination IP address */
/* TODO anycast? */ /* @todo anycast? */
/* Get next hop record. */ /* Get next hop record. */
i = nd6_get_next_hop_entry(ip6addr, netif); i = nd6_get_next_hop_entry(ip6addr, netif);
if (i < 0) { if (i < 0) {
@ -141,7 +141,7 @@ ethip6_output(struct netif *netif, struct pbuf *q, const ip6_addr_t *ip6addr)
neighbor_cache[i].state = ND6_DELAY; neighbor_cache[i].state = ND6_DELAY;
neighbor_cache[i].counter.delay_time = LWIP_ND6_DELAY_FIRST_PROBE_TIME; neighbor_cache[i].counter.delay_time = LWIP_ND6_DELAY_FIRST_PROBE_TIME;
} }
/* TODO should we send or queue if PROBE? send for now, to let unicast NS pass. */ /* @todo should we send or queue if PROBE? send for now, to let unicast NS pass. */
if ((neighbor_cache[i].state == ND6_REACHABLE) || if ((neighbor_cache[i].state == ND6_REACHABLE) ||
(neighbor_cache[i].state == ND6_DELAY) || (neighbor_cache[i].state == ND6_DELAY) ||
(neighbor_cache[i].state == ND6_PROBE)) { (neighbor_cache[i].state == ND6_PROBE)) {

View File

@ -120,7 +120,7 @@ icmp6_input(struct pbuf *p, struct netif *inp)
break; break;
case ICMP6_TYPE_RS: case ICMP6_TYPE_RS:
#if LWIP_IPV6_FORWARD #if LWIP_IPV6_FORWARD
/* TODO implement router functionality */ /* @todo implement router functionality */
#endif #endif
break; break;
#if LWIP_IPV6_MLD #if LWIP_IPV6_MLD

View File

@ -249,7 +249,7 @@ ip6_select_source_address(struct netif *netif, const ip6_addr_t * dest)
} }
else { else {
/* Replace src only if we find a prefix match. */ /* Replace src only if we find a prefix match. */
/* TODO find longest matching prefix. */ /* @todo find longest matching prefix. */
if ((!(ip6_addr_netcmp(ip_2_ip6(src), dest))) && if ((!(ip6_addr_netcmp(ip_2_ip6(src), dest))) &&
ip6_addr_netcmp(netif_ip6_addr(netif, i), dest)) { ip6_addr_netcmp(netif_ip6_addr(netif, i), dest)) {
src = netif_ip_addr6(netif, i); src = netif_ip_addr6(netif, i);

View File

@ -252,7 +252,6 @@ ip6_reass_remove_oldest_datagram(struct ip6_reassdata *ipr, int pbufs_needed)
* Reassembles incoming IPv6 fragments into an IPv6 datagram. * Reassembles incoming IPv6 fragments into an IPv6 datagram.
* *
* @param p points to the IPv6 Fragment Header * @param p points to the IPv6 Fragment Header
* @param len the length of the payload (after Fragment Header)
* @return NULL if reassembly is incomplete, pbuf pointing to * @return NULL if reassembly is incomplete, pbuf pointing to
* IPv6 Header if reassembly is complete * IPv6 Header if reassembly is complete
*/ */
@ -675,7 +674,7 @@ ip6_frag(struct pbuf *p, struct netif *netif, const ip6_addr_t *dest)
mtu = nd6_get_destination_mtu(dest, netif); mtu = nd6_get_destination_mtu(dest, netif);
/* TODO we assume there are no options in the unfragmentable part (IPv6 header). */ /* @todo we assume there are no options in the unfragmentable part (IPv6 header). */
left = p->tot_len - IP6_HLEN; left = p->tot_len - IP6_HLEN;
nfb = (mtu - (IP6_HLEN + IP6_FRAG_HLEN)) & IP6_FRAG_OFFSET_MASK; nfb = (mtu - (IP6_HLEN + IP6_FRAG_HLEN)) & IP6_FRAG_OFFSET_MASK;

View File

@ -245,7 +245,7 @@ mld6_input(struct pbuf *p, struct netif *inp)
/* Check that mld header fits in packet. */ /* Check that mld header fits in packet. */
if (p->len < sizeof(struct mld_header)) { if (p->len < sizeof(struct mld_header)) {
/* TODO debug message */ /* @todo debug message */
pbuf_free(p); pbuf_free(p);
MLD6_STATS_INC(mld6.lenerr); MLD6_STATS_INC(mld6.lenerr);
MLD6_STATS_INC(mld6.drop); MLD6_STATS_INC(mld6.drop);

View File

@ -69,7 +69,7 @@ struct nd6_router_list_entry default_router_list[LWIP_ND6_NUM_ROUTERS];
/* Default values, can be updated by a RA message. */ /* Default values, can be updated by a RA message. */
u32_t reachable_time = LWIP_ND6_REACHABLE_TIME; u32_t reachable_time = LWIP_ND6_REACHABLE_TIME;
u32_t retrans_timer = LWIP_ND6_RETRANS_TIMER; /* TODO implement this value in timer */ u32_t retrans_timer = LWIP_ND6_RETRANS_TIMER; /* @todo implement this value in timer */
/* Index for cache entries. */ /* Index for cache entries. */
static u8_t nd6_cached_neighbor_index; static u8_t nd6_cached_neighbor_index;
@ -132,7 +132,7 @@ nd6_input(struct pbuf *p, struct netif *inp)
/* Check that na header fits in packet. */ /* Check that na header fits in packet. */
if (p->len < (sizeof(struct na_header))) { if (p->len < (sizeof(struct na_header))) {
/* TODO debug message */ /* @todo debug message */
pbuf_free(p); pbuf_free(p);
ND6_STATS_INC(nd6.lenerr); ND6_STATS_INC(nd6.lenerr);
ND6_STATS_INC(nd6.drop); ND6_STATS_INC(nd6.drop);
@ -149,7 +149,7 @@ nd6_input(struct pbuf *p, struct netif *inp)
/* Check that link-layer address option also fits in packet. */ /* Check that link-layer address option also fits in packet. */
if (p->len < (sizeof(struct na_header) + 2)) { if (p->len < (sizeof(struct na_header) + 2)) {
/* TODO debug message */ /* @todo debug message */
pbuf_free(p); pbuf_free(p);
ND6_STATS_INC(nd6.lenerr); ND6_STATS_INC(nd6.lenerr);
ND6_STATS_INC(nd6.drop); ND6_STATS_INC(nd6.drop);
@ -159,7 +159,7 @@ nd6_input(struct pbuf *p, struct netif *inp)
lladdr_opt = (struct lladdr_option *)((u8_t*)p->payload + sizeof(struct na_header)); lladdr_opt = (struct lladdr_option *)((u8_t*)p->payload + sizeof(struct na_header));
if (p->len < (sizeof(struct na_header) + (lladdr_opt->length << 3))) { if (p->len < (sizeof(struct na_header) + (lladdr_opt->length << 3))) {
/* TODO debug message */ /* @todo debug message */
pbuf_free(p); pbuf_free(p);
ND6_STATS_INC(nd6.lenerr); ND6_STATS_INC(nd6.lenerr);
ND6_STATS_INC(nd6.drop); ND6_STATS_INC(nd6.drop);
@ -231,7 +231,7 @@ nd6_input(struct pbuf *p, struct netif *inp)
(neighbor_cache[i].state == ND6_INCOMPLETE)) { (neighbor_cache[i].state == ND6_INCOMPLETE)) {
/* Check that link-layer address option also fits in packet. */ /* Check that link-layer address option also fits in packet. */
if (p->len < (sizeof(struct na_header) + 2)) { if (p->len < (sizeof(struct na_header) + 2)) {
/* TODO debug message */ /* @todo debug message */
pbuf_free(p); pbuf_free(p);
ND6_STATS_INC(nd6.lenerr); ND6_STATS_INC(nd6.lenerr);
ND6_STATS_INC(nd6.drop); ND6_STATS_INC(nd6.drop);
@ -241,7 +241,7 @@ nd6_input(struct pbuf *p, struct netif *inp)
lladdr_opt = (struct lladdr_option *)((u8_t*)p->payload + sizeof(struct na_header)); lladdr_opt = (struct lladdr_option *)((u8_t*)p->payload + sizeof(struct na_header));
if (p->len < (sizeof(struct na_header) + (lladdr_opt->length << 3))) { if (p->len < (sizeof(struct na_header) + (lladdr_opt->length << 3))) {
/* TODO debug message */ /* @todo debug message */
pbuf_free(p); pbuf_free(p);
ND6_STATS_INC(nd6.lenerr); ND6_STATS_INC(nd6.lenerr);
ND6_STATS_INC(nd6.drop); ND6_STATS_INC(nd6.drop);
@ -268,7 +268,7 @@ nd6_input(struct pbuf *p, struct netif *inp)
/* Check that ns header fits in packet. */ /* Check that ns header fits in packet. */
if (p->len < sizeof(struct ns_header)) { if (p->len < sizeof(struct ns_header)) {
/* TODO debug message */ /* @todo debug message */
pbuf_free(p); pbuf_free(p);
ND6_STATS_INC(nd6.lenerr); ND6_STATS_INC(nd6.lenerr);
ND6_STATS_INC(nd6.drop); ND6_STATS_INC(nd6.drop);
@ -380,7 +380,7 @@ nd6_input(struct pbuf *p, struct netif *inp)
/* Check that RA header fits in packet. */ /* Check that RA header fits in packet. */
if (p->len < sizeof(struct ra_header)) { if (p->len < sizeof(struct ra_header)) {
/* TODO debug message */ /* @todo debug message */
pbuf_free(p); pbuf_free(p);
ND6_STATS_INC(nd6.lenerr); ND6_STATS_INC(nd6.lenerr);
ND6_STATS_INC(nd6.drop); ND6_STATS_INC(nd6.drop);
@ -425,7 +425,7 @@ nd6_input(struct pbuf *p, struct netif *inp)
} }
#endif /* LWIP_ND6_ALLOW_RA_UPDATES */ #endif /* LWIP_ND6_ALLOW_RA_UPDATES */
/* TODO set default hop limit... */ /* @todo set default hop limit... */
/* ra_hdr->current_hop_limit;*/ /* ra_hdr->current_hop_limit;*/
/* Update flags in local entry (incl. preference). */ /* Update flags in local entry (incl. preference). */
@ -508,7 +508,7 @@ nd6_input(struct pbuf *p, struct netif *inp)
break; break;
} }
case ND6_OPTION_TYPE_ROUTE_INFO: case ND6_OPTION_TYPE_ROUTE_INFO:
/* TODO implement preferred routes. /* @todo implement preferred routes.
struct route_option * route_opt; struct route_option * route_opt;
route_opt = (struct route_option *)buffer;*/ route_opt = (struct route_option *)buffer;*/
@ -531,7 +531,7 @@ nd6_input(struct pbuf *p, struct netif *inp)
/* Check that Redir header fits in packet. */ /* Check that Redir header fits in packet. */
if (p->len < sizeof(struct redirect_header)) { if (p->len < sizeof(struct redirect_header)) {
/* TODO debug message */ /* @todo debug message */
pbuf_free(p); pbuf_free(p);
ND6_STATS_INC(nd6.lenerr); ND6_STATS_INC(nd6.lenerr);
ND6_STATS_INC(nd6.drop); ND6_STATS_INC(nd6.drop);
@ -806,7 +806,7 @@ nd6_tmr(void)
if ((netif->ip6_addr_state[i] & 0x07) >= LWIP_IPV6_DUP_DETECT_ATTEMPTS) { if ((netif->ip6_addr_state[i] & 0x07) >= LWIP_IPV6_DUP_DETECT_ATTEMPTS) {
/* No NA received in response. Mark address as valid. */ /* No NA received in response. Mark address as valid. */
netif->ip6_addr_state[i] = IP6_ADDR_PREFERRED; netif->ip6_addr_state[i] = IP6_ADDR_PREFERRED;
/* TODO implement preferred and valid lifetimes. */ /* @todo implement preferred and valid lifetimes. */
} else if (netif->flags & NETIF_FLAG_UP) { } else if (netif->flags & NETIF_FLAG_UP) {
#if LWIP_IPV6_MLD #if LWIP_IPV6_MLD
if ((netif->ip6_addr_state[i] & 0x07) == 0) { if ((netif->ip6_addr_state[i] & 0x07) == 0) {
@ -818,7 +818,7 @@ nd6_tmr(void)
/* Send a NS for this address. */ /* Send a NS for this address. */
nd6_send_ns(netif, netif_ip6_addr(netif, i), ND6_SEND_FLAG_MULTICAST_DEST); nd6_send_ns(netif, netif_ip6_addr(netif, i), ND6_SEND_FLAG_MULTICAST_DEST);
netif->ip6_addr_state[i]++; netif->ip6_addr_state[i]++;
/* TODO send max 1 NS per tmr call? enable return*/ /* @todo send max 1 NS per tmr call? enable return*/
/*return;*/ /*return;*/
} }
} }
@ -1303,9 +1303,9 @@ nd6_select_router(const ip6_addr_t * ip6addr, struct netif * netif)
* in RFC). This is more robust in case one router is not reachable, * in RFC). This is more robust in case one router is not reachable,
* we are not stuck trying to resolve it. */ * we are not stuck trying to resolve it. */
static s8_t last_router; static s8_t last_router;
(void)ip6addr; /* TODO match preferred routes!! (must implement ND6_OPTION_TYPE_ROUTE_INFO) */ (void)ip6addr; /* @todo match preferred routes!! (must implement ND6_OPTION_TYPE_ROUTE_INFO) */
/* TODO: implement default router preference */ /* @todo: implement default router preference */
/* Look for reachable routers. */ /* Look for reachable routers. */
for (i = 0; i < LWIP_ND6_NUM_ROUTERS; i++) { for (i = 0; i < LWIP_ND6_NUM_ROUTERS; i++) {

View File

@ -859,7 +859,7 @@ udp_sendto_if_src_chksum(struct udp_pcb *pcb, struct pbuf *p, const ip_addr_t *d
err = ip_output_if_src(q, src_ip, dst_ip, ttl, pcb->tos, ip_proto, netif); err = ip_output_if_src(q, src_ip, dst_ip, ttl, pcb->tos, ip_proto, netif);
NETIF_SET_HWADDRHINT(netif, NULL); NETIF_SET_HWADDRHINT(netif, NULL);
/* TODO: must this be increased even if error occurred? */ /* @todo: must this be increased even if error occurred? */
MIB2_STATS_INC(mib2.udpoutdatagrams); MIB2_STATS_INC(mib2.udpoutdatagrams);
/* did we chain a separate header pbuf earlier? */ /* did we chain a separate header pbuf earlier? */

View File

@ -50,7 +50,7 @@
struct dhcp6 struct dhcp6
{ {
/*TODO: implement DHCP6*/ /*@todo: implement DHCP6*/
}; };
#endif /* LWIP_IPV6_DHCP6 */ #endif /* LWIP_IPV6_DHCP6 */

View File

@ -52,14 +52,14 @@ extern "C" {
#endif #endif
/* This is the aligned version of ip6_addr_t, /** This is the aligned version of ip6_addr_t,
used as local variable, on the stack, etc. */ used as local variable, on the stack, etc. */
struct ip6_addr { struct ip6_addr {
u32_t addr[4]; u32_t addr[4];
}; };
/* This is the packed version of ip6_addr_t, /** This is the packed version of ip6_addr_t,
used in network headers that are itself packed */ used in network headers that are itself packed */
#ifdef PACK_STRUCT_USE_INCLUDES #ifdef PACK_STRUCT_USE_INCLUDES
# include "arch/bpstruct.h" # include "arch/bpstruct.h"
#endif #endif
@ -72,6 +72,7 @@ PACK_STRUCT_END
# include "arch/epstruct.h" # include "arch/epstruct.h"
#endif #endif
/** IPv6 address */
typedef struct ip6_addr ip6_addr_t; typedef struct ip6_addr ip6_addr_t;
typedef struct ip6_addr_packed ip6_addr_p_t; typedef struct ip6_addr_packed ip6_addr_p_t;
@ -103,12 +104,19 @@ Little-endian version, stored in network order (no htonl). */
/** Access address in 16-bit block */ /** Access address in 16-bit block */
#define IP6_ADDR_BLOCK1(ip6addr) ((u16_t)(htonl((ip6addr)->addr[0]) >> 16) & 0xffff) #define IP6_ADDR_BLOCK1(ip6addr) ((u16_t)(htonl((ip6addr)->addr[0]) >> 16) & 0xffff)
/** Access address in 16-bit block */
#define IP6_ADDR_BLOCK2(ip6addr) ((u16_t)(htonl((ip6addr)->addr[0])) & 0xffff) #define IP6_ADDR_BLOCK2(ip6addr) ((u16_t)(htonl((ip6addr)->addr[0])) & 0xffff)
/** Access address in 16-bit block */
#define IP6_ADDR_BLOCK3(ip6addr) ((u16_t)(htonl((ip6addr)->addr[1]) >> 16) & 0xffff) #define IP6_ADDR_BLOCK3(ip6addr) ((u16_t)(htonl((ip6addr)->addr[1]) >> 16) & 0xffff)
/** Access address in 16-bit block */
#define IP6_ADDR_BLOCK4(ip6addr) ((u16_t)(htonl((ip6addr)->addr[1])) & 0xffff) #define IP6_ADDR_BLOCK4(ip6addr) ((u16_t)(htonl((ip6addr)->addr[1])) & 0xffff)
/** Access address in 16-bit block */
#define IP6_ADDR_BLOCK5(ip6addr) ((u16_t)(htonl((ip6addr)->addr[2]) >> 16) & 0xffff) #define IP6_ADDR_BLOCK5(ip6addr) ((u16_t)(htonl((ip6addr)->addr[2]) >> 16) & 0xffff)
/** Access address in 16-bit block */
#define IP6_ADDR_BLOCK6(ip6addr) ((u16_t)(htonl((ip6addr)->addr[2])) & 0xffff) #define IP6_ADDR_BLOCK6(ip6addr) ((u16_t)(htonl((ip6addr)->addr[2])) & 0xffff)
/** Access address in 16-bit block */
#define IP6_ADDR_BLOCK7(ip6addr) ((u16_t)(htonl((ip6addr)->addr[3]) >> 16) & 0xffff) #define IP6_ADDR_BLOCK7(ip6addr) ((u16_t)(htonl((ip6addr)->addr[3]) >> 16) & 0xffff)
/** Access address in 16-bit block */
#define IP6_ADDR_BLOCK8(ip6addr) ((u16_t)(htonl((ip6addr)->addr[3])) & 0xffff) #define IP6_ADDR_BLOCK8(ip6addr) ((u16_t)(htonl((ip6addr)->addr[3])) & 0xffff)
/** Copy IPv6 address - faster than ip6_addr_set: no NULL check */ /** Copy IPv6 address - faster than ip6_addr_set: no NULL check */
@ -203,7 +211,7 @@ Little-endian version, stored in network order (no htonl). */
#define ip6_addr_ismulticast_orglocal(ip6addr) (((ip6addr)->addr[0] & PP_HTONL(0xff8f0000UL)) == PP_HTONL(0xff080000UL)) #define ip6_addr_ismulticast_orglocal(ip6addr) (((ip6addr)->addr[0] & PP_HTONL(0xff8f0000UL)) == PP_HTONL(0xff080000UL))
#define ip6_addr_ismulticast_global(ip6addr) (((ip6addr)->addr[0] & PP_HTONL(0xff8f0000UL)) == PP_HTONL(0xff0e0000UL)) #define ip6_addr_ismulticast_global(ip6addr) (((ip6addr)->addr[0] & PP_HTONL(0xff8f0000UL)) == PP_HTONL(0xff0e0000UL))
/* TODO define get/set for well-know multicast addresses, e.g. ff02::1 */ /* @todo define get/set for well-know multicast addresses, e.g. ff02::1 */
#define ip6_addr_isallnodes_iflocal(ip6addr) (((ip6addr)->addr[0] == PP_HTONL(0xff010000UL)) && \ #define ip6_addr_isallnodes_iflocal(ip6addr) (((ip6addr)->addr[0] == PP_HTONL(0xff010000UL)) && \
((ip6addr)->addr[1] == 0UL) && \ ((ip6addr)->addr[1] == 0UL) && \
((ip6addr)->addr[2] == 0UL) && \ ((ip6addr)->addr[2] == 0UL) && \

View File

@ -332,7 +332,7 @@ PACK_STRUCT_END
#define ND6_TMR_INTERVAL 1000 #define ND6_TMR_INTERVAL 1000
/* Router tables. */ /* Router tables. */
/* TODO make these static? and entries accessible through API? */ /* @todo make these static? and entries accessible through API? */
extern struct nd6_neighbor_cache_entry neighbor_cache[]; extern struct nd6_neighbor_cache_entry neighbor_cache[];
extern struct nd6_destination_cache_entry destination_cache[]; extern struct nd6_destination_cache_entry destination_cache[];
extern struct nd6_prefix_list_entry prefix_list[]; extern struct nd6_prefix_list_entry prefix_list[];

View File

@ -122,7 +122,7 @@ typedef void (*tcp_err_fn)(void *arg, err_t err);
* *
* @param arg Additional argument to pass to the callback function (@see tcp_arg()) * @param arg Additional argument to pass to the callback function (@see tcp_arg())
* @param tpcb The connection pcb which is connected * @param tpcb The connection pcb which is connected
* @param err An unused error code, always ERR_OK currently ;-) TODO! * @param err An unused error code, always ERR_OK currently ;-) @todo!
* Only return ERR_ABRT if you have called tcp_abort from within the * Only return ERR_ABRT if you have called tcp_abort from within the
* callback function! * callback function!
* *

View File

@ -42,7 +42,7 @@
#define EUI64_H #define EUI64_H
/* /*
* TODO: * @todo:
* *
* Maybe this should be done by processing struct in6_addr directly... * Maybe this should be done by processing struct in6_addr directly...
*/ */

View File

@ -320,7 +320,7 @@ lowpan6_frag(struct netif *netif, struct pbuf *p, const struct ieee_802154_addr
} }
/* Compress NH? /* Compress NH?
* Only if UDP for now. TODO support other NH compression. */ * Only if UDP for now. @todo support other NH compression. */
if (IP6H_NEXTH(ip6hdr) == IP6_NEXTH_UDP) { if (IP6H_NEXTH(ip6hdr) == IP6_NEXTH_UDP) {
buffer[ieee_header_len] |= 0x04; buffer[ieee_header_len] |= 0x04;
} else { } else {
@ -364,7 +364,7 @@ lowpan6_frag(struct netif *netif, struct pbuf *p, const struct ieee_802154_addr
/* Compress destination address */ /* Compress destination address */
if (ip6_addr_ismulticast(ip_2_ip6(&ip_data.current_iphdr_dest))) { if (ip6_addr_ismulticast(ip_2_ip6(&ip_data.current_iphdr_dest))) {
/* TODO support stateful multicast address compression */ /* @todo support stateful multicast address compression */
buffer[ieee_header_len + 1] |= 0x08; buffer[ieee_header_len + 1] |= 0x08;
@ -407,7 +407,7 @@ lowpan6_frag(struct netif *netif, struct pbuf *p, const struct ieee_802154_addr
/* Compress UDP header? */ /* Compress UDP header? */
if (IP6H_NEXTH(ip6hdr) == IP6_NEXTH_UDP) { if (IP6H_NEXTH(ip6hdr) == IP6_NEXTH_UDP) {
/* TODO support optional checksum compression */ /* @todo support optional checksum compression */
buffer[ieee_header_len + lowpan6_header_len] = 0xf0; buffer[ieee_header_len + lowpan6_header_len] = 0xf0;
@ -489,7 +489,7 @@ lowpan6_frag(struct netif *netif, struct pbuf *p, const struct ieee_802154_addr
#if LWIP_6LOWPAN_HW_CRC #if LWIP_6LOWPAN_HW_CRC
/* Leave blank, will be filled by HW. */ /* Leave blank, will be filled by HW. */
#else /* LWIP_6LOWPAN_HW_CRC */ #else /* LWIP_6LOWPAN_HW_CRC */
/* TODO calculate CRC */ /* @todo calculate CRC */
#endif /* LWIP_6LOWPAN_HW_CRC */ #endif /* LWIP_6LOWPAN_HW_CRC */
/* Calculate frame length */ /* Calculate frame length */
@ -521,7 +521,7 @@ lowpan6_frag(struct netif *netif, struct pbuf *p, const struct ieee_802154_addr
#if LWIP_6LOWPAN_HW_CRC #if LWIP_6LOWPAN_HW_CRC
/* Leave blank, will be filled by HW. */ /* Leave blank, will be filled by HW. */
#else /* LWIP_6LOWPAN_HW_CRC */ #else /* LWIP_6LOWPAN_HW_CRC */
/* TODO calculate CRC */ /* @todo calculate CRC */
#endif /* LWIP_6LOWPAN_HW_CRC */ #endif /* LWIP_6LOWPAN_HW_CRC */
/* Calculate frame length */ /* Calculate frame length */
@ -544,7 +544,7 @@ lowpan6_frag(struct netif *netif, struct pbuf *p, const struct ieee_802154_addr
#if LWIP_6LOWPAN_HW_CRC #if LWIP_6LOWPAN_HW_CRC
/* Leave blank, will be filled by HW. */ /* Leave blank, will be filled by HW. */
#else /* LWIP_6LOWPAN_HW_CRC */ #else /* LWIP_6LOWPAN_HW_CRC */
/* TODO calculate CRC */ /* @todo calculate CRC */
#endif /* LWIP_6LOWPAN_HW_CRC */ #endif /* LWIP_6LOWPAN_HW_CRC */
/* Calculate frame length */ /* Calculate frame length */
@ -640,7 +640,7 @@ lowpan6_output(struct netif *netif, struct pbuf *q, const ip6_addr_t *ip6addr)
} }
/* We have a unicast destination IP address */ /* We have a unicast destination IP address */
/* TODO anycast? */ /* @todo anycast? */
#if LWIP_6LOWPAN_INFER_SHORT_ADDRESS #if LWIP_6LOWPAN_INFER_SHORT_ADDRESS
if (src.addr_len == 2) { if (src.addr_len == 2) {
@ -672,7 +672,7 @@ lowpan6_output(struct netif *netif, struct pbuf *q, const ip6_addr_t *ip6addr)
neighbor_cache[i].state = ND6_DELAY; neighbor_cache[i].state = ND6_DELAY;
neighbor_cache[i].counter.delay_time = LWIP_ND6_DELAY_FIRST_PROBE_TIME; neighbor_cache[i].counter.delay_time = LWIP_ND6_DELAY_FIRST_PROBE_TIME;
} }
/* TODO should we send or queue if PROBE? send for now, to let unicast NS pass. */ /* @todo should we send or queue if PROBE? send for now, to let unicast NS pass. */
if ((neighbor_cache[i].state == ND6_REACHABLE) || if ((neighbor_cache[i].state == ND6_REACHABLE) ||
(neighbor_cache[i].state == ND6_DELAY) || (neighbor_cache[i].state == ND6_DELAY) ||
(neighbor_cache[i].state == ND6_PROBE)) { (neighbor_cache[i].state == ND6_PROBE)) {
@ -826,7 +826,7 @@ lowpan6_decompress(struct pbuf * p, struct ieee_802154_addr * src, struct ieee_8
if (lowpan6_buffer[1] & 0x08) { if (lowpan6_buffer[1] & 0x08) {
/* Multicast destination */ /* Multicast destination */
if (lowpan6_buffer[1] & 0x04) { if (lowpan6_buffer[1] & 0x04) {
/* TODO support stateful multicast addressing */ /* @todo support stateful multicast addressing */
pbuf_free(p); pbuf_free(p);
pbuf_free(q); pbuf_free(q);
return NULL; return NULL;
@ -912,7 +912,7 @@ lowpan6_decompress(struct pbuf * p, struct ieee_802154_addr * src, struct ieee_8
udphdr = (struct udp_hdr *)((u8_t *)q->payload + ip6_offset); udphdr = (struct udp_hdr *)((u8_t *)q->payload + ip6_offset);
if (lowpan6_buffer[lowpan6_offset] & 0x04) { if (lowpan6_buffer[lowpan6_offset] & 0x04) {
/* TODO support checksum decompress */ /* @todo support checksum decompress */
pbuf_free(p); pbuf_free(p);
pbuf_free(q); pbuf_free(q);
return NULL; return NULL;
@ -944,7 +944,7 @@ lowpan6_decompress(struct pbuf * p, struct ieee_802154_addr * src, struct ieee_8
ip6_offset += UDP_HLEN; ip6_offset += UDP_HLEN;
} else { } else {
/* TODO support NHC other than UDP */ /* @todo support NHC other than UDP */
pbuf_free(p); pbuf_free(p);
pbuf_free(q); pbuf_free(q);
return NULL; return NULL;
@ -980,7 +980,7 @@ lowpan6_input(struct pbuf * p, struct netif *netif)
MIB2_STATS_NETIF_ADD(netif, ifinoctets, p->tot_len); MIB2_STATS_NETIF_ADD(netif, ifinoctets, p->tot_len);
/* Analyze header. TODO validate. */ /* Analyze header. @todo validate. */
puc = (u8_t*)p->payload; puc = (u8_t*)p->payload;
datagram_offset = 5; datagram_offset = 5;
if ((puc[1] & 0x0c) == 0x0c) { if ((puc[1] & 0x0c) == 0x0c) {

View File

@ -44,7 +44,7 @@
#if PPP_SUPPORT /* don't build if not configured for use in lwipopts.h */ #if PPP_SUPPORT /* don't build if not configured for use in lwipopts.h */
/* /*
* TODO: * @todo:
* Randomize fsm id on link/init. * Randomize fsm id on link/init.
* Deal with variable outgoing MTU. * Deal with variable outgoing MTU.
*/ */

View File

@ -44,7 +44,7 @@
#if PPP_SUPPORT && PPP_IPV4_SUPPORT /* don't build if not configured for use in lwipopts.h */ #if PPP_SUPPORT && PPP_IPV4_SUPPORT /* don't build if not configured for use in lwipopts.h */
/* /*
* TODO: * @todo:
*/ */
#if 0 /* UNUSED */ #if 0 /* UNUSED */

View File

@ -139,7 +139,7 @@
*/ */
/* /*
* TODO: * @todo:
* *
* Proxy Neighbour Discovery. * Proxy Neighbour Discovery.
* *

View File

@ -44,7 +44,7 @@
#if PPP_SUPPORT /* don't build if not configured for use in lwipopts.h */ #if PPP_SUPPORT /* don't build if not configured for use in lwipopts.h */
/* /*
* TODO: * @todo:
*/ */
#if 0 /* UNUSED */ #if 0 /* UNUSED */

View File

@ -44,7 +44,7 @@
#if PPP_SUPPORT && PAP_SUPPORT /* don't build if not configured for use in lwipopts.h */ #if PPP_SUPPORT && PAP_SUPPORT /* don't build if not configured for use in lwipopts.h */
/* /*
* TODO: * @todo:
*/ */
#if 0 /* UNUSED */ #if 0 /* UNUSED */

View File

@ -280,7 +280,7 @@ START_TEST(test_tcp_fast_retx_recover)
/*EXPECT_RET(txcounters.num_tx_calls == 1);*/ /*EXPECT_RET(txcounters.num_tx_calls == 1);*/
EXPECT_RET(pcb->dupacks == 3); EXPECT_RET(pcb->dupacks == 3);
memset(&txcounters, 0, sizeof(txcounters)); memset(&txcounters, 0, sizeof(txcounters));
/* TODO: check expected data?*/ /* @todo: check expected data?*/
/* send data5, not output yet */ /* send data5, not output yet */
err = tcp_write(pcb, data5, sizeof(data5), TCP_WRITE_FLAG_COPY); err = tcp_write(pcb, data5, sizeof(data5), TCP_WRITE_FLAG_COPY);