Lines Matching refs:call

63  (3) Retention of the reusable bits of the transport system set up for one call
122 (*) Each RxRPC operation is a "call". A connection may make up to four
147 explicitly sequenced per call.
158 (*) An call is complete when the request has been sent, the reply has been
162 (*) An call may be aborted by either end at any time up to its completion.
183 the last call currently using it has completed in case a new call is made
216 be used in all other sendmsgs or recvmsgs associated with that call. The
221 first sendmsg() of a call (struct msghdr::msg_name).
227 first sendmsg() of the call must specify the target address. The server's
230 (*) Once the application has received the last message associated with a call,
232 client resources. A new call can then be initiated with the same tag
239 (*) When sending data for a call, sendmsg is given MSG_MORE if there's more
240 data to come on that call.
242 (*) When receiving data for a call, recvmsg flags MSG_MORE if there's more
243 data to come for that call.
245 (*) When receiving data or messages for a call, MSG_EOR is flagged by recvmsg
246 to indicate the terminal message for that call.
248 (*) A call may be aborted by adding an abort control message to the control
249 data. Issuing an abort terminates the kernel's use of that call's tag.
250 Any messages waiting in the receive queue for that call will be discarded.
254 an abort or a busy message terminates the kernel's use of that call's tag.
258 (*) The tag of the intended or affected call.
266 (*) When the kernel has received and set up an incoming call, it sends a
267 message to server application to let it know there's a new call awaiting
269 application then uses sendmsg to assign a tag to the new call. Once that
285 (*) If there's a sequence of data messages belonging to a particular call on
288 (a) it meets the end of that call's received data,
292 (c) it meets a message belonging to a different call, or
306 (4) If there is more data to be had on a call (it hasn't copied the last byte
320 RXRPC_USER_CALL_ID sr- User ID App's call specifier
323 RXRPC_NET_ERROR -rt error num Network error on call
326 RXRPC_NEW_CALL -r- n/a New call received
327 RXRPC_ACCEPT s-- n/a Accept new call
333 This is used to indicate the application's call ID. It's an unsigned long
341 This is can be used by an application to abort a call by passing it to
344 specify the call affected. If an abort is being sent, then error EBADSLT
345 will be returned if there is no call with that user ID.
350 of a call was received from the client. It will be associated with an
351 RXRPC_USER_CALL_ID to indicate the call that's now complete.
358 indicating the problem, and an RXRPC_USER_CALL_ID will indicate the call
363 This is delivered to a client application to indicate that a call was
365 associated with an RXRPC_USER_CALL_ID to indicate the rejected call.
370 encountered and that a call has been aborted because of it. An
372 indicating the problem, and an RXRPC_USER_CALL_ID will indicate the call
377 This is delivered to indicate to a server application that a new call has
383 This is used by a server application to attempt to accept a call and
385 to indicate the user ID to be assigned. If there is no call to be
387 return error ENODATA. If the user ID is already in use by another call,
413 This is used to request that new connections should be used for each call
540 RXRPC_USER_CALL_ID - specifies the user ID for this call
545 If a call is intended to go to a destination other than the default
547 first request message of that call.
551 for a particular call to be read. MSG_EOR will be set on the terminal
552 read for a call.
556 RXRPC_USER_CALL_ID - specifies the user ID for this call
560 call.
615 ignored since the call for which the message was posted may have gone by
616 the time it is accepted - in which case the first call still on the queue
619 (5) The server then accepts the new call by issuing a sendmsg() with two
623 RXRPC_USER_CALL_ID - specify user ID for this call
626 recvmsg() to pick up. At that point, the RxRPC address for the call can
635 RXRPC_USER_CALL_ID - specifies the user ID for this call
640 RXRPC_USER_CALL_ID - specifies the user ID for this call
643 for a particular call.
649 RXRPC_USER_CALL_ID - specifies the user ID for this call
653 this call.
655 (10) Up to the point the final packet of reply data is sent, the call can be
659 RXRPC_USER_CALL_ID - specifies the user ID for this call
667 determine the call affected.
681 (2) Avoid having RxRPC call request_key() at the point of issue of a call or
685 when the call is initiated.
689 (4) Avoid the overhead of using the recvmsg() call. RxRPC messages can be
699 (*) Begin a new client call.
708 This allocates the infrastructure to make a new RxRPC call and assigns
709 call and connection numbers. The call will be made on the UDP port that
710 the socket is bound to. The call will go to the destination address of a
714 If a key is supplied then this will be used to secure the call instead of
722 If this function is successful, an opaque reference to the RxRPC call is
726 (*) End a client call.
728 void rxrpc_kernel_end_call(struct rxrpc_call *call);
730 This is used to end a previously begun call. The user_call_ID is expunged
732 the specified call.
734 (*) Send data through a call.
736 int rxrpc_kernel_send_data(struct rxrpc_call *call, struct msghdr *msg,
739 This is used to supply either the request part of a client call or the
740 reply part of a server call. msg.msg_iovlen and msg.msg_iov specify the
743 MSG_MORE if there will be subsequent data sends for this call.
748 (*) Abort a call.
750 void rxrpc_kernel_abort_call(struct rxrpc_call *call, u32 abort_code);
752 This is used to abort a call if it's still in an abortable state. The
772 to the call and the socket buffer containing the message.
779 RXRPC_SKB_MARK_FINAL_ACK Final ACK received for an incoming call
780 RXRPC_SKB_MARK_BUSY Client call rejected as server busy
784 RXRPC_SKB_MARK_NEW_CALL New incoming call awaiting acceptance
788 A new call can be accepted with rxrpc_kernel_accept_call().
798 freeing, but this may pin the state of a call until the message is finally
801 (*) Accept an incoming call.
807 This is used to accept an incoming call and to assign it a call ID. This
811 If this function is successful, an opaque reference to the RxRPC call is
815 (*) Reject an incoming call.
819 This is used to reject the first incoming call on the socket's queue with
821 Other errors may be returned if the call had been aborted (-ECONNABORTED)
829 update the ACK state for the call. The socket buffer will be freed.
838 (*) Determine if a data message is the last one on a call.
843 to be received for a call (true will be returned if it does, false
846 The data message will be part of the reply on a client call and the
847 request on an incoming call. In the latter case there will be more
908 The maximum amount of time in seconds that a call may be in progress
913 The amount of time in seconds before we remove a dead call from the call
934 particular call.