<feed xmlns='http://www.w3.org/2005/Atom'>
<title>netxduo.git/test/regression/bsd_test, branch dev</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>http://cgit.235523.xyz/netxduo.git/atom/test/regression/bsd_test?h=dev</id>
<link rel='self' href='http://cgit.235523.xyz/netxduo.git/atom/test/regression/bsd_test?h=dev'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/netxduo.git/'/>
<updated>2026-06-06T19:42:50Z</updated>
<entry>
<title>Added copyright headers to files missing them</title>
<updated>2026-06-06T19:42:50Z</updated>
<author>
<name>Frédéric Desbiens</name>
<email>frederic.desbiens@eclipse-foundation.org</email>
</author>
<published>2026-06-06T19:42:50Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/netxduo.git/commit/?id=4d88828b06d164a5b7e82152395a92254abcd6e4'/>
<id>urn:sha1:4d88828b06d164a5b7e82152395a92254abcd6e4</id>
<content type='text'>
Applied the standard MIT license header to all project-owned C, header,
assembly, shell, and Python files that were missing a copyright notice.
Third-party, toolchain startup, and auto-generated files were excluded.

Co-authored-by: Copilot &lt;223556219+Copilot@users.noreply.github.com&gt;
</content>
</entry>
<entry>
<title>Added BSD recvfromto support (#376)</title>
<updated>2026-05-29T14:34:38Z</updated>
<author>
<name>mzgrebnak</name>
<email>michal.zgrebnak@rockwellautomation.com</email>
</author>
<published>2026-05-29T14:34:38Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/netxduo.git/commit/?id=09ce97f8f9019724407917c197c2a0c0e859bf2d'/>
<id>urn:sha1:09ce97f8f9019724407917c197c2a0c0e859bf2d</id>
<content type='text'>
 * recvfromto support

 * nx_bsd_inet_aton, disabling other format than four numbers separated by dots. Otherwise used in nx_bsd_inet_pton
   It accepts unallowed format of IP address.

 * bsd: address PR review feedback

 - Fix build failure: add missing nx_bsd_recvfromto() prototype to
   nxd_bsd.h near the other receive prototypes. The nx_bsd_recvfromto
   macro maps to recvfromto, but without a prior declaration the
   compiler emits -Werror=missing-declarations.

 - Revert inet_aton() change: restore the 1-part, 2-part and 3-part
   abbreviated IPv4 address formats (a.b.c and a.b). The PR removed
   them, breaking existing tests that rely on these forms.

 - Add IPv6 destination address support in recvfromto(): when the
   receiving BSD socket is AF_INET6, extract the destination IPv6
   address from the IPv6 packet header and populate a sockaddr_in6
   in toAddr, mirroring the existing IPv4 path.

 - Add regression test netx_bsd_recvfromto_test covering:
   * recvfromto() populates fromAddr (sender) and toAddr (destination)
     with correct address/port values for IPv4 UDP
   * recvfromto() with NULL toAddr/toAddrLen works like recvfrom()
   * inet_aton() still accepts abbreviated a.b and a.b.c forms
   Register test in regression/CMakeLists.txt.

 ---------

 Co-authored-by: Frédéric Desbiens &lt;frederic.desbiens@eclipse-foundation.org&gt;
 Co-authored-by: Copilot &lt;223556219+Copilot@users.noreply.github.com&gt;</content>
</entry>
<entry>
<title>Implemented BSD select improvements (#375)</title>
<updated>2026-05-29T13:15:07Z</updated>
<author>
<name>mzgrebnak</name>
<email>michal.zgrebnak@rockwellautomation.com</email>
</author>
<published>2026-05-29T13:15:07Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/netxduo.git/commit/?id=53070b69eed6af6840b0a890fe749e73e3f280f2'/>
<id>urn:sha1:53070b69eed6af6840b0a890fe749e73e3f280f2</id>
<content type='text'>
* initial support

* bsd: address PR review feedback

- Fix accept() regression: preserve accepted socket FD even when
  recreating the secondary listen socket fails due to slot exhaustion.
  Set secondary_socket_id = NX_BSD_MAX_SOCKETS to invalidate the slot
  for future accept() calls, but still return the already-accepted FD.

- Restore select() writefds 'not in use' case: closed/unallocated
  descriptors must be reported immediately as writable per BSD semantics.
  Several tests (netx_bsd_tcp_basic_blocking_test, _rcvbuf_test,
  _getaddrinfo_test) depend on this behaviour.

- Fix select() exceptfds race with readfds: the readfds scan calls
  nx_tcp_socket_receive() which dequeues the head packet; a subsequent
  peek at nx_tcp_socket_receive_queue_head in the exceptfds scan then
  finds NULL.  Move the URG/push-flag check into the readfds scan
  immediately after the successful dequeue while the packet is still
  accessible.

- Add regression test netx_bsd_select_improvements_test covering:
  * zero-timeout select clears all fdsets without blocking
  * normal TCP data sets readfds, not exceptfds
  * a not-in-use descriptor appears in writefds
  Register test in regression/CMakeLists.txt.

---------

Co-authored-by: Frédéric Desbiens &lt;frederic.desbiens@eclipse-foundation.org&gt;
Co-authored-by: Copilot &lt;223556219+Copilot@users.noreply.github.com&gt;</content>
</entry>
<entry>
<title>Implemented BSD socket options improvements (#374)</title>
<updated>2026-05-28T20:23:22Z</updated>
<author>
<name>mzgrebnak</name>
<email>michal.zgrebnak@rockwellautomation.com</email>
</author>
<published>2026-05-28T20:23:22Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/netxduo.git/commit/?id=57410350d94bbcb5e6885d0fbc40c72b6d7ddd33'/>
<id>urn:sha1:57410350d94bbcb5e6885d0fbc40c72b6d7ddd33</id>
<content type='text'>
●  - initial support
   - bsd: address PR review feedback
   - Fix build failure: so_linger was stored on NX_TCP_SOCKET which has
   no such field. Linger state is now kept in NX_BSD_SOCKET using the
   new nx_bsd_option_linger field and the existing
   NX_BSD_SOCKET_ENABLE_OPTION_LINGER flag.
   - Fix sign-conversion warning in setsockopt(IP_TOS): read the value
   as INT, validate range 0..0xFF, then cast to ULONG.
   - Reject out-of-range INT values (&lt; 0 or &gt; 255) in
   setsockopt(IP_TTL).
   - Add lower-bound check for IPPROTO_IP options in getsockopt and
   setsockopt so that SO_* option numbers are no longer silently
   accepted at the IPPROTO_IP level.
   - Add null check for raw sockets in IP_TOS and IP_TTL get/set paths;
   return ENOPROTOOPT instead of dereferencing a NULL pointer.
   - Validate
    *option_length before writing in SO_BROADCAST, TCP_NODELAY,
   SO_LINGER and IP_TOS getsockopt paths; set
    *option_length to the
   actual size returned on success.
   - Separate ENOPROTOOPT (wrong socket type) from EINVAL (wrong length)
   in SO_LINGER get/set error handling.
   - Remove unused so_linger local variable from getsockopt.
   - Replace C++-style // comments in the close/linger path with C99
   /*
    */ comments.
   - Add regression test netx_bsd_socket_options_test covering SO_LINGER,
   IP_TOS, IP_TTL, SO_BROADCAST and TCP_NODELAY round-trips and error
   paths; register in bsd_test_cases in regression/CMakeLists.txt.

  Co-authored-by: Frédéric Desbiens frederic.desbiens@eclipse-foundation.org
  Co-authored-by: Copilot 223556219+Copilot@users.noreply.github.com</content>
</entry>
<entry>
<title>Updated copyright headers and version strings. Removed version history</title>
<updated>2026-03-06T23:14:18Z</updated>
<author>
<name>Frédéric Desbiens</name>
<email>frederic.desbiens@eclipse-foundation.org</email>
</author>
<published>2026-03-06T23:14:18Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/netxduo.git/commit/?id=ff90b3ffcb84b2c6099ec31ef032b541e1ef5f0a'/>
<id>urn:sha1:ff90b3ffcb84b2c6099ec31ef032b541e1ef5f0a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Added regression test and enhanced select fix for Issue #366</title>
<updated>2026-03-06T18:06:56Z</updated>
<author>
<name>Frédéric Desbiens</name>
<email>frederic.desbiens@eclipse-foundation.org</email>
</author>
<published>2026-03-06T18:06:56Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/netxduo.git/commit/?id=63cfc6d8a5b156c243f011a02df838a359d3fa38'/>
<id>urn:sha1:63cfc6d8a5b156c243f011a02df838a359d3fa38</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Improved test cases. (#210)</title>
<updated>2023-12-01T02:59:30Z</updated>
<author>
<name>Wenhui Xie</name>
<email>54433186+wenhui-xie@users.noreply.github.com</email>
</author>
<published>2023-12-01T02:59:30Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/netxduo.git/commit/?id=685dafbba390bfd5fbc89e3bbe341feb6a1e4bce'/>
<id>urn:sha1:685dafbba390bfd5fbc89e3bbe341feb6a1e4bce</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Remove deprecated tests.</title>
<updated>2023-11-29T06:19:27Z</updated>
<author>
<name>Wenhui Xie</name>
<email>wenxi@microsoft.com</email>
</author>
<published>2023-11-29T06:19:27Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/netxduo.git/commit/?id=4fc7650fcedd5b1e90fa4f2d7aa144f8795122ed'/>
<id>urn:sha1:4fc7650fcedd5b1e90fa4f2d7aa144f8795122ed</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add netxduo regression test.</title>
<updated>2023-11-27T09:37:37Z</updated>
<author>
<name>Wenhui Xie</name>
<email>wenxi@microsoft.com</email>
</author>
<published>2023-11-27T09:37:37Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/netxduo.git/commit/?id=c23be7fdddd64fb40a772a94b667452f310b9c42'/>
<id>urn:sha1:c23be7fdddd64fb40a772a94b667452f310b9c42</id>
<content type='text'>
</content>
</entry>
</feed>
