Rev 1568 | Rev 1582 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 1568 | Rev 1573 | ||
|---|---|---|---|
| Line 183... | Line 183... | ||
| 183 | IPC_PHONE_CONNECTED, /**< Phone is connected */ |
183 | IPC_PHONE_CONNECTED, /**< Phone is connected */ |
| 184 | IPC_PHONE_HUNGUP, /**< Phone is hung up, waiting for answers to come */ |
184 | IPC_PHONE_HUNGUP, /**< Phone is hung up, waiting for answers to come */ |
| 185 | IPC_PHONE_SLAMMED /**< Phone was hungup from server */ |
185 | IPC_PHONE_SLAMMED /**< Phone was hungup from server */ |
| 186 | } ipc_phone_state_t; |
186 | } ipc_phone_state_t; |
| 187 | 187 | ||
| - | 188 | /** Structure identifying phone (in TASK structure) */ |
|
| 188 | struct phone_s { |
189 | struct phone_s { |
| 189 | SPINLOCK_DECLARE(lock); |
190 | SPINLOCK_DECLARE(lock); |
| 190 | link_t list; |
191 | link_t link; |
| 191 | answerbox_t *callee; |
192 | answerbox_t *callee; |
| 192 | ipc_phone_state_t state; |
193 | ipc_phone_state_t state; |
| 193 | atomic_t active_calls; |
194 | atomic_t active_calls; |
| 194 | }; |
195 | }; |
| 195 | 196 | ||
| 196 | typedef struct { |
197 | typedef struct { |
| 197 | link_t list; |
198 | link_t link; |
| 198 | 199 | ||
| 199 | int flags; |
200 | int flags; |
| 200 | 201 | ||
| 201 | /* Identification of the caller */ |
202 | /* Identification of the caller */ |
| 202 | task_t *sender; |
203 | task_t *sender; |
| Line 224... | Line 225... | ||
| 224 | extern void task_print_list(void); |
225 | extern void task_print_list(void); |
| 225 | extern int ipc_forward(call_t *call, phone_t *newphone, answerbox_t *oldbox); |
226 | extern int ipc_forward(call_t *call, phone_t *newphone, answerbox_t *oldbox); |
| 226 | extern void ipc_cleanup(task_t *task); |
227 | extern void ipc_cleanup(task_t *task); |
| 227 | extern int ipc_phone_hangup(phone_t *phone, int aggressive); |
228 | extern int ipc_phone_hangup(phone_t *phone, int aggressive); |
| 228 | extern void ipc_backsend_err(phone_t *phone, call_t *call, __native err); |
229 | extern void ipc_backsend_err(phone_t *phone, call_t *call, __native err); |
| - | 230 | extern void ipc_print_task(task_id_t taskid); |
|
| 229 | 231 | ||
| 230 | extern answerbox_t *ipc_phone_0; |
232 | extern answerbox_t *ipc_phone_0; |
| 231 | 233 | ||
| 232 | #endif |
234 | #endif |
| 233 | 235 | ||