[riot-notifications] [RIOT-OS/RIOT] gnrc_tcp: rewrite passive open (#16459)

Simon Brummer notifications at github.com
Sat May 8 09:21:19 CEST 2021


### Contribution description
This PR rewrites the passive connection establishment mechanism of GNRC_TCP.
The new version aligns the GNRC_TCP interfaces with the SOCK_TCP interface with the goal to make a upcoming SOCK integration straight forward and trivial.

Since this is a large change, I've split the PR into three commits (api, implementation and tests) to help reviewing this.
The new tests are written in different style than existing tests, please ignore the difference in style for now, I plan to align the existing structure tests in a dedicated PR on after merging this. 

### Testing procedure
This PR is covered by the GNRC_TCP test suite.
To test this PR follow the instructions under tests/gnrc_tcp/Readme.md

### Issues/PRs references
#10664 - TCP Sockets can not be used / built

You can view, comment on, or merge this pull request online at:

  https://github.com/RIOT-OS/RIOT/pull/16459

-- Commit Summary --

  * gnrc_tcp: add listen accept api
  * gnrc_tcp: add listen accept implementation
  * gnrc_tcp: add listen accept tests

-- File Changes --

    M sys/include/net/gnrc/tcp.h (99)
    M sys/include/net/gnrc/tcp/tcb.h (15)
    M sys/include/net/tcp.h (4)
    M sys/net/gnrc/transport_layer/tcp/gnrc_tcp.c (516)
    M sys/net/gnrc/transport_layer/tcp/gnrc_tcp_eventloop.c (10)
    M sys/net/gnrc/transport_layer/tcp/gnrc_tcp_fsm.c (48)
    M sys/net/gnrc/transport_layer/tcp/include/gnrc_tcp_common.h (4)
    M tests/gnrc_tcp/README.md (8)
    M tests/gnrc_tcp/main.c (94)
    M tests/gnrc_tcp/tests-as-root/01-conn_lifecycle_as_client.py (5)
    M tests/gnrc_tcp/tests-as-root/02-conn_lifecycle_as_server.py (63)
    M tests/gnrc_tcp/tests-as-root/03-send_data.py (4)
    M tests/gnrc_tcp/tests-as-root/04-receive_data.py (4)
    M tests/gnrc_tcp/tests-as-root/05-garbage-pkts.py (17)
    M tests/gnrc_tcp/tests-as-root/06-receive_data_closed_conn.py (4)
    M tests/gnrc_tcp/tests-as-root/07-endpoint_construction.py (5)
    A tests/gnrc_tcp/tests-as-root/08-return_codes.py (69)
    A tests/gnrc_tcp/tests-as-root/09-listen_accept_cycle.py (78)
    M tests/gnrc_tcp/tests-as-root/shared_func.py (162)

-- Patch Links --

https://github.com/RIOT-OS/RIOT/pull/16459.patch
https://github.com/RIOT-OS/RIOT/pull/16459.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/RIOT-OS/RIOT/pull/16459
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.riot-os.org/pipermail/notifications/attachments/20210508/91100e17/attachment.htm>


More information about the notifications mailing list