Lines Matching refs:aSocket
152 Error Udp::Plat::Open(SocketHandle &aSocket) in Open() argument
154 return aSocket.ShouldUsePlatformUdp() ? otPlatUdpSocket(&aSocket) : kErrorNone; in Open()
157 Error Udp::Plat::Close(SocketHandle &aSocket) in Close() argument
159 return aSocket.ShouldUsePlatformUdp() ? otPlatUdpClose(&aSocket) : kErrorNone; in Close()
162 Error Udp::Plat::Bind(SocketHandle &aSocket) in Bind() argument
164 return aSocket.ShouldUsePlatformUdp() ? otPlatUdpBind(&aSocket) : kErrorNone; in Bind()
167 Error Udp::Plat::BindToNetif(SocketHandle &aSocket) in BindToNetif() argument
169 …return aSocket.ShouldUsePlatformUdp() ? otPlatUdpBindToNetif(&aSocket, MapEnum(aSocket.GetNetifId(… in BindToNetif()
172 Error Udp::Plat::Connect(SocketHandle &aSocket) in Connect() argument
174 return aSocket.ShouldUsePlatformUdp() ? otPlatUdpConnect(&aSocket) : kErrorNone; in Connect()
177 Error Udp::Plat::Send(SocketHandle &aSocket, Message &aMessage, const MessageInfo &aMessageInfo) in Send() argument
179 OT_ASSERT(aSocket.ShouldUsePlatformUdp()); in Send()
181 return otPlatUdpSend(&aSocket, &aMessage, &aMessageInfo); in Send()
184 Error Udp::Plat::JoinMulticastGroup(SocketHandle &aSocket, NetifIdentifier aNetifId, const Address … in JoinMulticastGroup() argument
186 …return aSocket.ShouldUsePlatformUdp() ? otPlatUdpJoinMulticastGroup(&aSocket, MapEnum(aNetifId), &… in JoinMulticastGroup()
190 Error Udp::Plat::LeaveMulticastGroup(SocketHandle &aSocket, NetifIdentifier aNetifId, const Address… in LeaveMulticastGroup() argument
192 …return aSocket.ShouldUsePlatformUdp() ? otPlatUdpLeaveMulticastGroup(&aSocket, MapEnum(aNetifId), … in LeaveMulticastGroup()
220 Error Udp::Open(SocketHandle &aSocket, NetifIdentifier aNetifId, ReceiveHandler aHandler, void *aCo… in Open() argument
224 OT_ASSERT(!IsOpen(aSocket)); in Open()
226 aSocket.Clear(); in Open()
227 aSocket.SetNetifId(aNetifId); in Open()
228 aSocket.mHandler = aHandler; in Open()
229 aSocket.mContext = aContext; in Open()
232 error = Plat::Open(aSocket); in Open()
236 AddSocket(aSocket); in Open()
242 Error Udp::Bind(SocketHandle &aSocket, const SockAddr &aSockAddr) in Bind() argument
247 SuccessOrExit(error = Plat::BindToNetif(aSocket)); in Bind()
253 aSocket.mSockName = aSockAddr; in Bind()
255 if (!aSocket.IsBound()) in Bind()
259 aSocket.mSockName.mPort = GetEphemeralPort(); in Bind()
261 error = Plat::Bind(aSocket); in Bind()
268 error = Plat::Bind(aSocket); in Bind()
276 Error Udp::Connect(SocketHandle &aSocket, const SockAddr &aSockAddr) in Connect() argument
280 aSocket.mPeerName = aSockAddr; in Connect()
282 if (!aSocket.IsBound()) in Connect()
284 SuccessOrExit(error = Bind(aSocket, aSocket.GetSockName())); in Connect()
288 error = Plat::Connect(aSocket); in Connect()
295 Error Udp::Close(SocketHandle &aSocket) in Close() argument
299 VerifyOrExit(IsOpen(aSocket)); in Close()
302 SuccessOrExit(error = Plat::Close(aSocket)); in Close()
305 RemoveSocket(aSocket); in Close()
306 aSocket.GetSockName().Clear(); in Close()
307 aSocket.GetPeerName().Clear(); in Close()
313 Error Udp::SendTo(SocketHandle &aSocket, Message &aMessage, const MessageInfo &aMessageInfo) in SendTo() argument
318 …VerifyOrExit((aMessageInfo.GetSockPort() == 0) || (aSocket.GetSockName().mPort == aMessageInfo.Get… in SendTo()
325 … VerifyOrExit(!aSocket.GetPeerName().GetAddress().IsUnspecified(), error = kErrorInvalidArgs); in SendTo()
327 messageInfoLocal.SetPeerAddr(aSocket.GetPeerName().GetAddress()); in SendTo()
332 VerifyOrExit(aSocket.GetPeerName().mPort != 0, error = kErrorInvalidArgs); in SendTo()
333 messageInfoLocal.mPeerPort = aSocket.GetPeerName().mPort; in SendTo()
338 messageInfoLocal.SetSockAddr(aSocket.GetSockName().GetAddress()); in SendTo()
341 if (!aSocket.IsBound()) in SendTo()
343 SuccessOrExit(error = Bind(aSocket, aSocket.GetSockName())); in SendTo()
346 messageInfoLocal.SetSockPort(aSocket.GetSockName().mPort); in SendTo()
349 if (aSocket.ShouldUsePlatformUdp()) in SendTo()
351 SuccessOrExit(error = Plat::Send(aSocket, aMessage, messageInfoLocal)); in SendTo()
368 void Udp::AddSocket(SocketHandle &aSocket) { IgnoreError(mSockets.Add(aSocket)); } in AddSocket() argument
370 void Udp::RemoveSocket(SocketHandle &aSocket) in RemoveSocket() argument
374 SuccessOrExit(mSockets.Find(aSocket, prev)); in RemoveSocket()
377 aSocket.SetNext(nullptr); in RemoveSocket()