Rev 2637 | Rev 2676 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2637 | Rev 2660 | ||
---|---|---|---|
Line 200... | Line 200... | ||
200 | } |
200 | } |
201 | 201 | ||
202 | /* |
202 | /* |
203 | * Get driver name |
203 | * Get driver name |
204 | */ |
204 | */ |
205 | if (!ipc_data_receive(&callid, NULL, &name_size)) { |
205 | if (!ipc_data_write_receive(&callid, NULL, &name_size)) { |
206 | printf("Unexpected request.\n"); |
206 | printf("Unexpected request.\n"); |
207 | free(driver); |
207 | free(driver); |
208 | ipc_answer_0(callid, EREFUSED); |
208 | ipc_answer_0(callid, EREFUSED); |
209 | ipc_answer_0(iid, EREFUSED); |
209 | ipc_answer_0(iid, EREFUSED); |
210 | return; |
210 | return; |
Line 231... | Line 231... | ||
231 | } |
231 | } |
232 | 232 | ||
233 | /* |
233 | /* |
234 | * Send confirmation to sender and get data into buffer. |
234 | * Send confirmation to sender and get data into buffer. |
235 | */ |
235 | */ |
236 | if (EOK != ipc_data_deliver(callid, driver->name, name_size)) { |
236 | if (EOK != ipc_data_write_deliver(callid, driver->name, name_size)) { |
237 | printf("Cannot read driver name.\n"); |
237 | printf("Cannot read driver name.\n"); |
238 | free(driver->name); |
238 | free(driver->name); |
239 | free(driver); |
239 | free(driver); |
240 | ipc_answer_0(iid, EREFUSED); |
240 | ipc_answer_0(iid, EREFUSED); |
241 | return; |
241 | return; |
Line 366... | Line 366... | ||
366 | ipc_answer_0(iid, ENOMEM); |
366 | ipc_answer_0(iid, ENOMEM); |
367 | return; |
367 | return; |
368 | } |
368 | } |
369 | 369 | ||
370 | /* Get device name */ |
370 | /* Get device name */ |
371 | if (!ipc_data_receive(&callid, NULL, &size)) { |
371 | if (!ipc_data_write_receive(&callid, NULL, &size)) { |
372 | free(device); |
372 | free(device); |
373 | printf("Cannot read device name.\n"); |
373 | printf("Cannot read device name.\n"); |
374 | ipc_answer_0(iid, EREFUSED); |
374 | ipc_answer_0(iid, EREFUSED); |
375 | return; |
375 | return; |
376 | } |
376 | } |
Line 392... | Line 392... | ||
392 | ipc_answer_0(callid, ENOMEM); |
392 | ipc_answer_0(callid, ENOMEM); |
393 | ipc_answer_0(iid, EREFUSED); |
393 | ipc_answer_0(iid, EREFUSED); |
394 | return; |
394 | return; |
395 | } |
395 | } |
396 | 396 | ||
397 | ipc_data_deliver(callid, device->name, size); |
397 | ipc_data_write_deliver(callid, device->name, size); |
398 | device->name[size] = 0; |
398 | device->name[size] = 0; |
399 | 399 | ||
400 | list_initialize(&(device->devices)); |
400 | list_initialize(&(device->devices)); |
401 | list_initialize(&(device->driver_devices)); |
401 | list_initialize(&(device->driver_devices)); |
402 | 402 | ||
Line 487... | Line 487... | ||
487 | 487 | ||
488 | /* |
488 | /* |
489 | * Wait for incoming message with device name (but do not |
489 | * Wait for incoming message with device name (but do not |
490 | * read the name itself until the buffer is allocated). |
490 | * read the name itself until the buffer is allocated). |
491 | */ |
491 | */ |
492 | if (!ipc_data_receive(&callid, NULL, &name_size)) { |
492 | if (!ipc_data_write_receive(&callid, NULL, &name_size)) { |
493 | ipc_answer_0(callid, EREFUSED); |
493 | ipc_answer_0(callid, EREFUSED); |
494 | ipc_answer_0(iid, EREFUSED); |
494 | ipc_answer_0(iid, EREFUSED); |
495 | return; |
495 | return; |
496 | } |
496 | } |
497 | 497 | ||
Line 511... | Line 511... | ||
511 | } |
511 | } |
512 | 512 | ||
513 | /* |
513 | /* |
514 | * Send confirmation to sender and get data into buffer. |
514 | * Send confirmation to sender and get data into buffer. |
515 | */ |
515 | */ |
516 | if (EOK != (retval = ipc_data_deliver(callid, name, name_size))) { |
516 | if (EOK != (retval = ipc_data_write_deliver(callid, name, name_size))) { |
517 | ipc_answer_0(iid, EREFUSED); |
517 | ipc_answer_0(iid, EREFUSED); |
518 | return; |
518 | return; |
519 | } |
519 | } |
520 | 520 | ||
521 | /* |
521 | /* |
Line 564... | Line 564... | ||
564 | 564 | ||
565 | /* FIXME: |
565 | /* FIXME: |
566 | we have no channel from DEVMAP to client -> |
566 | we have no channel from DEVMAP to client -> |
567 | sending must be initiated by client |
567 | sending must be initiated by client |
568 | 568 | ||
569 | int rc = ipc_data_send(phone, device->name, name_size); |
569 | int rc = ipc_data_write_send(phone, device->name, name_size); |
570 | if (rc != EOK) { |
570 | if (rc != EOK) { |
571 | async_wait_for(req, NULL); |
571 | async_wait_for(req, NULL); |
572 | return rc; |
572 | return rc; |
573 | } |
573 | } |
574 | */ |
574 | */ |