-
Notifications
You must be signed in to change notification settings - Fork 3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Socket:: bind() behaviour is inconsistent #2438
Comments
This is expected behaviour. TCP port numbers and UDP port numbers are in different number-spaces; they are different protocols. |
This sounds expected, otherwise one socket would get packets intended for the other. This could corrupt transactions from an application that assumes it owns the data stream.
This is expected as described by @infinnovation.
I'm currently looking into this, I suspect lwip has a sort of |
Looking into it more, this is a part of a similar mechanism that prevents sockets from binding to the same port as a part of protecting a user from himself. The fact that UDP bind succeeded is curious, but I suspect just an idiosyncrasy of lwip's implementation. Once #2440 is merged, you can use NSAPI_REUSEADDR to allow socket servers to reuse the same address without waiting. |
Ah of course. That's no problem then. Thanks.
Fair enough.
Cool. I wondered if this might be connected to #2408, but seemed different enough to create its own issue. |
…..91acece 91acece Remove test files 6568bc1 Merge branch 'release_internal' into release_external 4192cc8 Added configuration for RADIUS retry timer (ARMmbed#2438) 684b714 Added support for retries and multiple sockets to RADIUS client (ARMmbed#2426) 89e0ae0 WS: Restart auto CCA threshold after discovery (ARMmbed#2435) dbb09b1 MAC/WS: Min possible Tack to 1ms and CCA interval to 2ms (ARMmbed#2434) 43b2ae2 Cca threshold test (ARMmbed#2436) 28108e1 Added device min sensitivity setting and stack information 7060c70 Cca threshold test (ARMmbed#2432) 640be71 WS: temporarily set default CCA threshold to -80 (ARMmbed#2431) 0a472ae WS: Calculate UFSI drift and trace (ARMmbed#2430) 61d3db8 Create APIs for DNS cache results 587add5 MAC: Validate TX time (ARMmbed#2429) a1bfed4 Added typecast when computing max_timout from drift (ARMmbed#2428) 089fb3b Neighbour temporary entry update and Enhanced ACK tx update 70244f6 Wi-sun parameter and debug trace update 5752eae Created validate TX time handler (ARMmbed#2423) 022d61f Wi-sun Neighbour table update and DHCP new callback 857b41f Merge pull request ARMmbed#2421 from ARMmbed/update_from_mbed_os 1a9dd13 (via Mbed-OS)WS Management API missing include 4318f37 Calculate drift in critical state (ARMmbed#2419) 01a1909 FHSS WS: Do not use drift compensation with unpredictable linux timer (ARMmbed#2418) git-subtree-dir: features/nanostack/sal-stack-nanostack git-subtree-split: 91acece
…..d879e6d d879e6d Merge branch 'release_internal' into release_external eef9246 Fixed network border router timeout recovery and EAPOL relay address fix bac7ca6 Changed RADIUS MTU and small fixes a9f8b75 Addeed support for DHCP vendor data d8f0003 DHCPv6 functionality update 7fe0423 Added DHCPv6 vendor data generation for DNS queries 639f9db FHSS: Changed retry backoffs when no BC schedule or TX slots (ARMmbed#2440) 91acece Remove test files 6568bc1 Merge branch 'release_internal' into release_external 4192cc8 Added configuration for RADIUS retry timer (ARMmbed#2438) 684b714 Added support for retries and multiple sockets to RADIUS client (ARMmbed#2426) 89e0ae0 WS: Restart auto CCA threshold after discovery (ARMmbed#2435) dbb09b1 MAC/WS: Min possible Tack to 1ms and CCA interval to 2ms (ARMmbed#2434) 43b2ae2 Cca threshold test (ARMmbed#2436) 28108e1 Added device min sensitivity setting and stack information 7060c70 Cca threshold test (ARMmbed#2432) 640be71 WS: temporarily set default CCA threshold to -80 (ARMmbed#2431) 0a472ae WS: Calculate UFSI drift and trace (ARMmbed#2430) 61d3db8 Create APIs for DNS cache results 587add5 MAC: Validate TX time (ARMmbed#2429) a1bfed4 Added typecast when computing max_timout from drift (ARMmbed#2428) 089fb3b Neighbour temporary entry update and Enhanced ACK tx update 70244f6 Wi-sun parameter and debug trace update 5752eae Created validate TX time handler (ARMmbed#2423) 022d61f Wi-sun Neighbour table update and DHCP new callback 857b41f Merge pull request ARMmbed#2421 from ARMmbed/update_from_mbed_os 1a9dd13 (via Mbed-OS)WS Management API missing include 4318f37 Calculate drift in critical state (ARMmbed#2419) 01a1909 FHSS WS: Do not use drift compensation with unpredictable linux timer (ARMmbed#2418) git-subtree-dir: features/nanostack/sal-stack-nanostack git-subtree-split: d879e6d
…8609ae..d879e6d d879e6d Merge branch 'release_internal' into release_external eef9246 Fixed network border router timeout recovery and EAPOL relay address fix bac7ca6 Changed RADIUS MTU and small fixes a9f8b75 Addeed support for DHCP vendor data d8f0003 DHCPv6 functionality update 7fe0423 Added DHCPv6 vendor data generation for DNS queries 639f9db FHSS: Changed retry backoffs when no BC schedule or TX slots (ARMmbed#2440) 91acece Remove test files 6568bc1 Merge branch 'release_internal' into release_external 4192cc8 Added configuration for RADIUS retry timer (ARMmbed#2438) 684b714 Added support for retries and multiple sockets to RADIUS client (ARMmbed#2426) 89e0ae0 WS: Restart auto CCA threshold after discovery (ARMmbed#2435) dbb09b1 MAC/WS: Min possible Tack to 1ms and CCA interval to 2ms (ARMmbed#2434) 43b2ae2 Cca threshold test (ARMmbed#2436) 28108e1 Added device min sensitivity setting and stack information 7060c70 Cca threshold test (ARMmbed#2432) 640be71 WS: temporarily set default CCA threshold to -80 (ARMmbed#2431) 0a472ae WS: Calculate UFSI drift and trace (ARMmbed#2430) 61d3db8 Create APIs for DNS cache results 587add5 MAC: Validate TX time (ARMmbed#2429) a1bfed4 Added typecast when computing max_timout from drift (ARMmbed#2428) 089fb3b Neighbour temporary entry update and Enhanced ACK tx update 70244f6 Wi-sun parameter and debug trace update 5752eae Created validate TX time handler (ARMmbed#2423) 022d61f Wi-sun Neighbour table update and DHCP new callback 857b41f Merge pull request ARMmbed#2421 from ARMmbed/update_from_mbed_os 1a9dd13 (via Mbed-OS)WS Management API missing include 4318f37 Calculate drift in critical state (ARMmbed#2419) 01a1909 FHSS WS: Do not use drift compensation with unpredictable linux timer (ARMmbed#2418) git-subtree-dir: connectivity/nanostack/sal-stack-nanostack git-subtree-split: d879e6d
…8609ae..d879e6d d879e6d Merge branch 'release_internal' into release_external eef9246 Fixed network border router timeout recovery and EAPOL relay address fix bac7ca6 Changed RADIUS MTU and small fixes a9f8b75 Addeed support for DHCP vendor data d8f0003 DHCPv6 functionality update 7fe0423 Added DHCPv6 vendor data generation for DNS queries 639f9db FHSS: Changed retry backoffs when no BC schedule or TX slots (ARMmbed#2440) 91acece Remove test files 6568bc1 Merge branch 'release_internal' into release_external 4192cc8 Added configuration for RADIUS retry timer (ARMmbed#2438) 684b714 Added support for retries and multiple sockets to RADIUS client (ARMmbed#2426) 89e0ae0 WS: Restart auto CCA threshold after discovery (ARMmbed#2435) dbb09b1 MAC/WS: Min possible Tack to 1ms and CCA interval to 2ms (ARMmbed#2434) 43b2ae2 Cca threshold test (ARMmbed#2436) 28108e1 Added device min sensitivity setting and stack information 7060c70 Cca threshold test (ARMmbed#2432) 640be71 WS: temporarily set default CCA threshold to -80 (ARMmbed#2431) 0a472ae WS: Calculate UFSI drift and trace (ARMmbed#2430) 61d3db8 Create APIs for DNS cache results 587add5 MAC: Validate TX time (ARMmbed#2429) a1bfed4 Added typecast when computing max_timout from drift (ARMmbed#2428) 089fb3b Neighbour temporary entry update and Enhanced ACK tx update 70244f6 Wi-sun parameter and debug trace update 5752eae Created validate TX time handler (ARMmbed#2423) 022d61f Wi-sun Neighbour table update and DHCP new callback 857b41f Merge pull request ARMmbed#2421 from ARMmbed/update_from_mbed_os 1a9dd13 (via Mbed-OS)WS Management API missing include 4318f37 Calculate drift in critical state (ARMmbed#2419) 01a1909 FHSS WS: Do not use drift compensation with unpredictable linux timer (ARMmbed#2418) git-subtree-dir: connectivity/nanostack/sal-stack-nanostack git-subtree-split: d879e6d
Mostly the last one seems like it could potentially cause issues.
The text was updated successfully, but these errors were encountered: