Changes between Version 16 and Version 17 of Packages/LWIP


Ignore:
Timestamp:
Nov 19, 2018, 8:40:22 PM (5 months ago)
Author:
Pavel Pisa
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Packages/LWIP

    v16 v17  
    121121https://github.com/ppisa/rtems-devel/blob/master/rtems-omk-template/applwiptest/rtems_lwip_io.c
    122122
     123This proof of concept solution does not provide select integration and non-block
     124support. But RTEMS provided telnet daemon runs against this implementation.
     125Next object files were removed from librtemscpu.a to ensure that LWIP provided ones are used.
     126{{{
     127  ar d librtemscpu.a in_proto.o ip_fw.o ip_icmp.o ip_input.o \
     128                     main_netstats.o main_ping.o rtems_syscall.o \
     129                     tcp_debug.o tcp_input.o tcp_output.o tcp_subr.o \
     130                     tcp_timer.o tcp_usrreq.o udp_usrreq.o
     131}}}
     132
    123133But simple solution has disadvantage that there are consulted two tables (FD_RTEMS -> RTEMS iop data, FD_LwIP to LwIP connection state) in each operation function. even worse both tables and objects have to be separately allocated and freed. Better solution is to not use LwIP provided FD allocation layer and use directly API working with connection state through structure pointers to struct netconn. LwIP FD API
    124134is in the fact based on this lower level API. struct netconn based API implementation can be found in the file