Subversion Repositories HelenOS

Rev

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

Rev 2601 Rev 2622
Line 327... Line 327...
327
/** Forwards call from one answerbox to another one.
327
/** Forwards call from one answerbox to another one.
328
 *
328
 *
329
 * @param call      Call structure to be redirected.
329
 * @param call      Call structure to be redirected.
330
 * @param newphone  Phone structure to target answerbox.
330
 * @param newphone  Phone structure to target answerbox.
331
 * @param oldbox    Old answerbox structure.
331
 * @param oldbox    Old answerbox structure.
-
 
332
 * @param mode      Flags that specify mode of the forward operation.
332
 *
333
 *
333
 * @return      Return 0 if forwarding succeeded or an error code if
334
 * @return      Return 0 if forwarding succeeded or an error code if
334
 *          there was error.
335
 *          there was error.
335
 *
336
 *
336
 * The return value serves only as an information for the forwarder,
337
 * The return value serves only as an information for the forwarder,
337
 * the original caller is notified automatically with EFORWARD.
338
 * the original caller is notified automatically with EFORWARD.
338
 */
339
 */
339
int ipc_forward(call_t *call, phone_t *newphone, answerbox_t *oldbox)
340
int ipc_forward(call_t *call, phone_t *newphone, answerbox_t *oldbox, int mode)
340
{
341
{
341
    spinlock_lock(&oldbox->lock);
342
    spinlock_lock(&oldbox->lock);
342
    list_remove(&call->link);
343
    list_remove(&call->link);
343
    spinlock_unlock(&oldbox->lock);
344
    spinlock_unlock(&oldbox->lock);
344
 
345