Subversion Repositories HelenOS

Rev

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

Rev 4350 Rev 4714
Line 73... Line 73...
73
        async_new_connection( phonehash, 0, NULL, client_receiver );
73
        async_new_connection( phonehash, 0, NULL, client_receiver );
74
    }
74
    }
75
    return phone;
75
    return phone;
76
}
76
}
77
 
77
 
-
 
78
void answer_call( ipc_callid_t callid, int result, ipc_call_t * answer, int answer_count ){
-
 
79
    if( answer || ( ! answer_count )){
-
 
80
        switch( answer_count ){
-
 
81
            case 0:
-
 
82
                ipc_answer_0( callid, ( ipcarg_t ) result );
-
 
83
                break;
-
 
84
            case 1:
-
 
85
                ipc_answer_1( callid, ( ipcarg_t ) result, IPC_GET_ARG1( * answer ));
-
 
86
                break;
-
 
87
            case 2:
-
 
88
                ipc_answer_2( callid, ( ipcarg_t ) result, IPC_GET_ARG1( * answer ), IPC_GET_ARG2( * answer ));
-
 
89
                break;
-
 
90
            case 3:
-
 
91
                ipc_answer_3( callid, ( ipcarg_t ) result, IPC_GET_ARG1( * answer ), IPC_GET_ARG2( * answer ), IPC_GET_ARG3( * answer ));
-
 
92
                break;
-
 
93
            case 4:
-
 
94
                ipc_answer_4( callid, ( ipcarg_t ) result, IPC_GET_ARG1( * answer ), IPC_GET_ARG2( * answer ), IPC_GET_ARG3( * answer ), IPC_GET_ARG4( * answer ));
-
 
95
                break;
-
 
96
            case 5:
-
 
97
            default:
-
 
98
                ipc_answer_5( callid, ( ipcarg_t ) result, IPC_GET_ARG1( * answer ), IPC_GET_ARG2( * answer ), IPC_GET_ARG3( * answer ), IPC_GET_ARG4( * answer ), IPC_GET_ARG5( * answer ));
-
 
99
                break;
-
 
100
        }
-
 
101
    }
-
 
102
}
-
 
103
 
-
 
104
void refresh_answer( ipc_call_t * answer, int * answer_count ){
-
 
105
    if( answer_count ){
-
 
106
        * answer_count = 0;
-
 
107
    }
-
 
108
    if( answer ){
-
 
109
        IPC_SET_RETVAL( * answer, 0 );
-
 
110
        // just to be precize
-
 
111
        IPC_SET_METHOD( * answer, 0 );
-
 
112
        IPC_SET_ARG1( * answer, 0 );
-
 
113
        IPC_SET_ARG2( * answer, 0 );
-
 
114
        IPC_SET_ARG3( * answer, 0 );
-
 
115
        IPC_SET_ARG4( * answer, 0 );
-
 
116
        IPC_SET_ARG5( * answer, 0 );
-
 
117
    }
-
 
118
}
-
 
119
 
78
/** @}
120
/** @}
79
 */
121
 */