79743770

Date: 2025-08-22 19:11:06
Score: 1.5
Natty:
Report link

I cannot believe how easy the solution was... and I can't believe what I had to do to figure it out. I compiled the usrsctp library in visual studio and statically linked to it with debug symbols so I could step through the code from my program. Usrsctp is incredibly complex, and I stepped through thousands of lines of code until I found the line that was sending the retransmission. Turns out it wasn't any specific retransmission code, it was just the normal send call, but it was returning an error. I looked through the documentation but I couldn't find an error code that made any sense. Then I thought about it for awhile, and realized that the error code seemed to be the same as the amount of bytes returned from the socket sendto() function. Yea, I was returning the bytes which usrsctp believed was an error code and so it kept resending the data!

I simply had to return 0 in the onSendSctpData() function and it stopped retransmitting!!

Reasons:
  • Blacklisted phrase (0.5): I cannot
  • Long answer (-0.5):
  • No code block (0.5):
  • Self-answer (0.5):
  • Low reputation (0.5):
Posted by: brandav