Bug 226

Summary: tcp-impl doesn't invoke NotifySend () even though app is blocked
Product: ns-3 Reporter: Florian Westphal <fw-ns3>
Component: internetAssignee: ns-bugs <ns-bugs>
Status: RESOLVED FIXED    
Severity: major    
Priority: P1    
Version: pre-release   
Hardware: All   
OS: All   
Bug Depends on:    
Bug Blocks: 227    
Attachments: Suggested Fix: set m_wouldBlock to false before invoking the callback.

Description Florian Westphal 2008-06-18 15:06:26 UTC
tcp-impl doesn't invoke NotifySend () under the following condition:

1. App has blocked, m_wouldBlock is true, new tx space becomes available
2. tcp-impl invokes NotifySend () callback
   App callback writes data, ok
   App callback writes data, blocks again
3. tcp-impl sets m_wouldBlock to false after callback returns

After this happens, NotifySend () is no longer called, even though
the app is blocked.
Comment 1 Florian Westphal 2008-06-18 15:07:58 UTC
Created attachment 172 [details]
Suggested Fix: set m_wouldBlock to false before invoking the callback.
Comment 2 Rajib Bhattacharjea 2008-06-18 15:42:52 UTC
This looks right, thanks Florian.  This looks ready to push to me.