Subversion Repositories HelenOS

Rev

Rev 2637 | Rev 2660 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2637 Rev 2638
Line 116... Line 116...
116
 * Calling process asks the callee to create a callback connection,
116
 * Calling process asks the callee to create a callback connection,
117
 * so that it can start initiating new messages.
117
 * so that it can start initiating new messages.
118
 *
118
 *
119
 * The protocol for negotiating is:
119
 * The protocol for negotiating is:
120
 * - sys_connect_to_me - sends a message IPC_M_CONNECT_TO_ME
120
 * - sys_connect_to_me - sends a message IPC_M_CONNECT_TO_ME
121
 * - sys_wait_for_call - upon receipt tries to allocate new phone
121
 * - recipient         - upon receipt tries to allocate new phone
122
 *                       - if it fails, responds with ELIMIT
122
 *                       - if it fails, responds with ELIMIT
123
 *                     - passes call to userspace. If userspace
123
 *                     - passes call to userspace. If userspace
124
 *                       responds with error, phone is deallocated and
124
 *                       responds with error, phone is deallocated and
125
 *                       error is sent back to caller. Otherwise
125
 *                       error is sent back to caller. Otherwise
126
 *                       the call is accepted and the response is sent back.
126
 *                       the call is accepted and the response is sent back.
127
 *                     - the allocated phoneid is passed to userspace
127
 *                     - the allocated phoneid is passed to userspace
128
 *                       (on the receiving side) as ARG5 of the call.
128
 *                       (on the receiving side) as ARG5 of the call.
129
 *                     - the caller obtains taskid of the called thread
-
 
130
 */
129
 */
131
#define IPC_M_CONNECT_TO_ME 1
130
#define IPC_M_CONNECT_TO_ME 1
132
/** Protocol for CONNECT - ME - TO
131
/** Protocol for CONNECT - ME - TO
133
 *
132
 *
134
 * Calling process asks the callee to create for him a new connection.
133
 * Calling process asks the callee to create for him a new connection.
Line 139... Line 138...
139
 *                       indicating that it wants to be connected to some
138
 *                       indicating that it wants to be connected to some
140
 *                       service
139
 *                       service
141
 *                     - arg1/2/3 are user specified, arg5 contains
140
 *                     - arg1/2/3 are user specified, arg5 contains
142
 *                       address of the phone that should be connected
141
 *                       address of the phone that should be connected
143
 *                       (TODO: it leaks to userspace)
142
 *                       (TODO: it leaks to userspace)
144
 *   recipient         -  if ipc_answer == 0, then accept connection
143
 *  - recipient        -  if ipc_answer == 0, then accept connection
145
 *                     -  otherwise connection refused
144
 *                     -  otherwise connection refused
146
 *                     -  recepient may forward message. Forwarding
145
 *                     -  recepient may forward message.
147
 *                        system message
-
 
148
 *
146
 *
149
 */
147
 */
150
#define IPC_M_CONNECT_ME_TO 2
148
#define IPC_M_CONNECT_ME_TO 2
151
/** This message is sent to answerbox when the phone
149
/** This message is sent to answerbox when the phone
152
 * is hung up
150
 * is hung up