Lines 88-98
void PacketSink::StartApplication() /
|
Link Here
|
---|
|
88 |
m_socket->SetRecvCallback (MakeCallback(&PacketSink::HandleRead, this)); |
88 |
m_socket->SetRecvCallback (MakeCallback(&PacketSink::HandleRead, this)); |
89 |
m_socket->SetAcceptCallback ( |
89 |
m_socket->SetAcceptCallback ( |
90 |
MakeNullCallback<bool, Ptr<Socket>, const Address &> (), |
90 |
MakeNullCallback<bool, Ptr<Socket>, const Address &> (), |
91 |
MakeNullCallback<void, Ptr<Socket>, const Address&> ()); |
91 |
MakeCallback(&PacketSink::HandleAccept, this)); |
92 |
} |
92 |
} |
93 |
|
93 |
|
94 |
void PacketSink::StopApplication() // Called at time specified by Stop |
94 |
void PacketSink::StopApplication() // Called at time specified by Stop |
95 |
{ |
95 |
{ |
|
|
96 |
while(!m_socketList.empty()) //these are accepted sockets, close them |
97 |
{ |
98 |
Ptr<Socket> acceptedSocket = m_socketList.front(); |
99 |
m_socketList.pop_front(); |
100 |
acceptedSocket->Close(); |
101 |
} |
96 |
if (m_socket) |
102 |
if (m_socket) |
97 |
{ |
103 |
{ |
98 |
m_socket->Close (); |
104 |
m_socket->Close (); |
Lines 117-120
void PacketSink::HandleRead (Ptr<Socket>
|
Link Here
|
---|
|
117 |
} |
123 |
} |
118 |
} |
124 |
} |
119 |
|
125 |
|
|
|
126 |
void PacketSink::HandleAccept (Ptr<Socket> s, const Address& from) |
127 |
{ |
128 |
m_socketList.push_back(s); |
129 |
} |
130 |
|
120 |
} // Namespace ns3 |
131 |
} // Namespace ns3 |