Changeset a46e56b in mainline for uspace/lib/drv/generic/remote_nic.c
- Timestamp:
- 2018-03-22T06:49:35Z (7 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 77f0a1d
- Parents:
- 3e242d2
- git-author:
- Jakub Jermar <jakub@…> (2018-03-21 23:29:06)
- git-committer:
- Jakub Jermar <jakub@…> (2018-03-22 06:49:35)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/drv/generic/remote_nic.c
r3e242d2 ra46e56b 1337 1337 1338 1338 static void remote_nic_send_frame(ddf_fun_t *dev, void *iface, 1339 cap_call_handle_t c allid, ipc_call_t *call)1339 cap_call_handle_t chandle, ipc_call_t *call) 1340 1340 { 1341 1341 nic_iface_t *nic_iface = (nic_iface_t *) iface; … … 1348 1348 rc = async_data_write_accept(&data, false, 0, 0, 0, &size); 1349 1349 if (rc != EOK) { 1350 async_answer_0(c allid, EINVAL);1350 async_answer_0(chandle, EINVAL); 1351 1351 return; 1352 1352 } 1353 1353 1354 1354 rc = nic_iface->send_frame(dev, data, size); 1355 async_answer_0(c allid, rc);1355 async_answer_0(chandle, rc); 1356 1356 free(data); 1357 1357 } 1358 1358 1359 1359 static void remote_nic_callback_create(ddf_fun_t *dev, void *iface, 1360 cap_call_handle_t c allid, ipc_call_t *call)1360 cap_call_handle_t chandle, ipc_call_t *call) 1361 1361 { 1362 1362 nic_iface_t *nic_iface = (nic_iface_t *) iface; … … 1364 1364 1365 1365 errno_t rc = nic_iface->callback_create(dev); 1366 async_answer_0(c allid, rc);1366 async_answer_0(chandle, rc); 1367 1367 } 1368 1368 1369 1369 static void remote_nic_get_state(ddf_fun_t *dev, void *iface, 1370 cap_call_handle_t c allid, ipc_call_t *call)1370 cap_call_handle_t chandle, ipc_call_t *call) 1371 1371 { 1372 1372 nic_iface_t *nic_iface = (nic_iface_t *) iface; … … 1376 1376 1377 1377 errno_t rc = nic_iface->get_state(dev, &state); 1378 async_answer_1(c allid, rc, state);1378 async_answer_1(chandle, rc, state); 1379 1379 } 1380 1380 1381 1381 static void remote_nic_set_state(ddf_fun_t *dev, void *iface, 1382 cap_call_handle_t c allid, ipc_call_t *call)1382 cap_call_handle_t chandle, ipc_call_t *call) 1383 1383 { 1384 1384 nic_iface_t *nic_iface = (nic_iface_t *) iface; … … 1388 1388 1389 1389 errno_t rc = nic_iface->set_state(dev, state); 1390 async_answer_0(c allid, rc);1390 async_answer_0(chandle, rc); 1391 1391 } 1392 1392 1393 1393 static void remote_nic_get_address(ddf_fun_t *dev, void *iface, 1394 cap_call_handle_t c allid, ipc_call_t *call)1394 cap_call_handle_t chandle, ipc_call_t *call) 1395 1395 { 1396 1396 nic_iface_t *nic_iface = (nic_iface_t *) iface; … … 1403 1403 if (rc == EOK) { 1404 1404 size_t max_len; 1405 cap_call_handle_t data_c allid;1405 cap_call_handle_t data_chandle; 1406 1406 1407 1407 /* All errors will be translated into EPARTY anyway */ 1408 if (!async_data_read_receive(&data_c allid, &max_len)) {1409 async_answer_0(data_c allid, EINVAL);1410 async_answer_0(c allid, EINVAL);1408 if (!async_data_read_receive(&data_chandle, &max_len)) { 1409 async_answer_0(data_chandle, EINVAL); 1410 async_answer_0(chandle, EINVAL); 1411 1411 return; 1412 1412 } 1413 1413 1414 1414 if (max_len != sizeof(nic_address_t)) { 1415 async_answer_0(data_c allid, ELIMIT);1416 async_answer_0(c allid, ELIMIT);1417 return; 1418 } 1419 1420 async_data_read_finalize(data_c allid, &address,1415 async_answer_0(data_chandle, ELIMIT); 1416 async_answer_0(chandle, ELIMIT); 1417 return; 1418 } 1419 1420 async_data_read_finalize(data_chandle, &address, 1421 1421 sizeof(nic_address_t)); 1422 1422 } 1423 1423 1424 async_answer_0(c allid, rc);1424 async_answer_0(chandle, rc); 1425 1425 } 1426 1426 1427 1427 static void remote_nic_set_address(ddf_fun_t *dev, void *iface, 1428 cap_call_handle_t c allid, ipc_call_t *call)1428 cap_call_handle_t chandle, ipc_call_t *call) 1429 1429 { 1430 1430 nic_iface_t *nic_iface = (nic_iface_t *) iface; 1431 1431 1432 1432 size_t length; 1433 cap_call_handle_t data_c allid;1434 if (!async_data_write_receive(&data_c allid, &length)) {1435 async_answer_0(data_c allid, EINVAL);1436 async_answer_0(c allid, EINVAL);1433 cap_call_handle_t data_chandle; 1434 if (!async_data_write_receive(&data_chandle, &length)) { 1435 async_answer_0(data_chandle, EINVAL); 1436 async_answer_0(chandle, EINVAL); 1437 1437 return; 1438 1438 } 1439 1439 1440 1440 if (length > sizeof(nic_address_t)) { 1441 async_answer_0(data_c allid, ELIMIT);1442 async_answer_0(c allid, ELIMIT);1441 async_answer_0(data_chandle, ELIMIT); 1442 async_answer_0(chandle, ELIMIT); 1443 1443 return; 1444 1444 } 1445 1445 1446 1446 nic_address_t address; 1447 if (async_data_write_finalize(data_c allid, &address, length) != EOK) {1448 async_answer_0(c allid, EINVAL);1447 if (async_data_write_finalize(data_chandle, &address, length) != EOK) { 1448 async_answer_0(chandle, EINVAL); 1449 1449 return; 1450 1450 } … … 1452 1452 if (nic_iface->set_address != NULL) { 1453 1453 errno_t rc = nic_iface->set_address(dev, &address); 1454 async_answer_0(c allid, rc);1454 async_answer_0(chandle, rc); 1455 1455 } else 1456 async_answer_0(c allid, ENOTSUP);1456 async_answer_0(chandle, ENOTSUP); 1457 1457 } 1458 1458 1459 1459 static void remote_nic_get_stats(ddf_fun_t *dev, void *iface, 1460 cap_call_handle_t c allid, ipc_call_t *call)1460 cap_call_handle_t chandle, ipc_call_t *call) 1461 1461 { 1462 1462 nic_iface_t *nic_iface = (nic_iface_t *) iface; 1463 1463 if (nic_iface->get_stats == NULL) { 1464 async_answer_0(c allid, ENOTSUP);1464 async_answer_0(chandle, ENOTSUP); 1465 1465 return; 1466 1466 } … … 1471 1471 errno_t rc = nic_iface->get_stats(dev, &stats); 1472 1472 if (rc == EOK) { 1473 cap_call_handle_t data_c allid;1473 cap_call_handle_t data_chandle; 1474 1474 size_t max_len; 1475 if (!async_data_read_receive(&data_c allid, &max_len)) {1476 async_answer_0(data_c allid, EINVAL);1477 async_answer_0(c allid, EINVAL);1475 if (!async_data_read_receive(&data_chandle, &max_len)) { 1476 async_answer_0(data_chandle, EINVAL); 1477 async_answer_0(chandle, EINVAL); 1478 1478 return; 1479 1479 } 1480 1480 1481 1481 if (max_len < sizeof(nic_device_stats_t)) { 1482 async_answer_0(data_c allid, ELIMIT);1483 async_answer_0(c allid, ELIMIT);1484 return; 1485 } 1486 1487 async_data_read_finalize(data_c allid, &stats,1482 async_answer_0(data_chandle, ELIMIT); 1483 async_answer_0(chandle, ELIMIT); 1484 return; 1485 } 1486 1487 async_data_read_finalize(data_chandle, &stats, 1488 1488 sizeof(nic_device_stats_t)); 1489 1489 } 1490 1490 1491 async_answer_0(c allid, rc);1491 async_answer_0(chandle, rc); 1492 1492 } 1493 1493 1494 1494 static void remote_nic_get_device_info(ddf_fun_t *dev, void *iface, 1495 cap_call_handle_t c allid, ipc_call_t *call)1495 cap_call_handle_t chandle, ipc_call_t *call) 1496 1496 { 1497 1497 nic_iface_t *nic_iface = (nic_iface_t *) iface; 1498 1498 if (nic_iface->get_device_info == NULL) { 1499 async_answer_0(c allid, ENOTSUP);1499 async_answer_0(chandle, ENOTSUP); 1500 1500 return; 1501 1501 } … … 1506 1506 errno_t rc = nic_iface->get_device_info(dev, &info); 1507 1507 if (rc == EOK) { 1508 cap_call_handle_t data_c allid;1508 cap_call_handle_t data_chandle; 1509 1509 size_t max_len; 1510 if (!async_data_read_receive(&data_c allid, &max_len)) {1511 async_answer_0(data_c allid, EINVAL);1512 async_answer_0(c allid, EINVAL);1510 if (!async_data_read_receive(&data_chandle, &max_len)) { 1511 async_answer_0(data_chandle, EINVAL); 1512 async_answer_0(chandle, EINVAL); 1513 1513 return; 1514 1514 } 1515 1515 1516 1516 if (max_len < sizeof (nic_device_info_t)) { 1517 async_answer_0(data_c allid, ELIMIT);1518 async_answer_0(c allid, ELIMIT);1519 return; 1520 } 1521 1522 async_data_read_finalize(data_c allid, &info,1517 async_answer_0(data_chandle, ELIMIT); 1518 async_answer_0(chandle, ELIMIT); 1519 return; 1520 } 1521 1522 async_data_read_finalize(data_chandle, &info, 1523 1523 sizeof(nic_device_info_t)); 1524 1524 } 1525 1525 1526 async_answer_0(c allid, rc);1526 async_answer_0(chandle, rc); 1527 1527 } 1528 1528 1529 1529 static void remote_nic_get_cable_state(ddf_fun_t *dev, void *iface, 1530 cap_call_handle_t c allid, ipc_call_t *call)1530 cap_call_handle_t chandle, ipc_call_t *call) 1531 1531 { 1532 1532 nic_iface_t *nic_iface = (nic_iface_t *) iface; 1533 1533 if (nic_iface->get_cable_state == NULL) { 1534 async_answer_0(c allid, ENOTSUP);1534 async_answer_0(chandle, ENOTSUP); 1535 1535 return; 1536 1536 } … … 1539 1539 1540 1540 errno_t rc = nic_iface->get_cable_state(dev, &cs); 1541 async_answer_1(c allid, rc, (sysarg_t) cs);1541 async_answer_1(chandle, rc, (sysarg_t) cs); 1542 1542 } 1543 1543 1544 1544 static void remote_nic_get_operation_mode(ddf_fun_t *dev, void *iface, 1545 cap_call_handle_t c allid, ipc_call_t *call)1545 cap_call_handle_t chandle, ipc_call_t *call) 1546 1546 { 1547 1547 nic_iface_t *nic_iface = (nic_iface_t *) iface; 1548 1548 if (nic_iface->get_operation_mode == NULL) { 1549 async_answer_0(c allid, ENOTSUP);1549 async_answer_0(chandle, ENOTSUP); 1550 1550 return; 1551 1551 } … … 1556 1556 1557 1557 errno_t rc = nic_iface->get_operation_mode(dev, &speed, &duplex, &role); 1558 async_answer_3(c allid, rc, (sysarg_t) speed, (sysarg_t) duplex,1558 async_answer_3(chandle, rc, (sysarg_t) speed, (sysarg_t) duplex, 1559 1559 (sysarg_t) role); 1560 1560 } 1561 1561 1562 1562 static void remote_nic_set_operation_mode(ddf_fun_t *dev, void *iface, 1563 cap_call_handle_t c allid, ipc_call_t *call)1563 cap_call_handle_t chandle, ipc_call_t *call) 1564 1564 { 1565 1565 nic_iface_t *nic_iface = (nic_iface_t *) iface; 1566 1566 if (nic_iface->set_operation_mode == NULL) { 1567 async_answer_0(c allid, ENOTSUP);1567 async_answer_0(chandle, ENOTSUP); 1568 1568 return; 1569 1569 } … … 1574 1574 1575 1575 errno_t rc = nic_iface->set_operation_mode(dev, speed, duplex, role); 1576 async_answer_0(c allid, rc);1576 async_answer_0(chandle, rc); 1577 1577 } 1578 1578 1579 1579 static void remote_nic_autoneg_enable(ddf_fun_t *dev, void *iface, 1580 cap_call_handle_t c allid, ipc_call_t *call)1580 cap_call_handle_t chandle, ipc_call_t *call) 1581 1581 { 1582 1582 nic_iface_t *nic_iface = (nic_iface_t *) iface; 1583 1583 if (nic_iface->autoneg_enable == NULL) { 1584 async_answer_0(c allid, ENOTSUP);1584 async_answer_0(chandle, ENOTSUP); 1585 1585 return; 1586 1586 } … … 1589 1589 1590 1590 errno_t rc = nic_iface->autoneg_enable(dev, advertisement); 1591 async_answer_0(c allid, rc);1591 async_answer_0(chandle, rc); 1592 1592 } 1593 1593 1594 1594 static void remote_nic_autoneg_disable(ddf_fun_t *dev, void *iface, 1595 cap_call_handle_t c allid, ipc_call_t *call)1595 cap_call_handle_t chandle, ipc_call_t *call) 1596 1596 { 1597 1597 nic_iface_t *nic_iface = (nic_iface_t *) iface; 1598 1598 if (nic_iface->autoneg_disable == NULL) { 1599 async_answer_0(c allid, ENOTSUP);1599 async_answer_0(chandle, ENOTSUP); 1600 1600 return; 1601 1601 } 1602 1602 1603 1603 errno_t rc = nic_iface->autoneg_disable(dev); 1604 async_answer_0(c allid, rc);1604 async_answer_0(chandle, rc); 1605 1605 } 1606 1606 1607 1607 static void remote_nic_autoneg_probe(ddf_fun_t *dev, void *iface, 1608 cap_call_handle_t c allid, ipc_call_t *call)1608 cap_call_handle_t chandle, ipc_call_t *call) 1609 1609 { 1610 1610 nic_iface_t *nic_iface = (nic_iface_t *) iface; 1611 1611 if (nic_iface->autoneg_probe == NULL) { 1612 async_answer_0(c allid, ENOTSUP);1612 async_answer_0(chandle, ENOTSUP); 1613 1613 return; 1614 1614 } … … 1621 1621 errno_t rc = nic_iface->autoneg_probe(dev, &our_adv, &their_adv, &result, 1622 1622 &their_result); 1623 async_answer_4(c allid, rc, our_adv, their_adv, (sysarg_t) result,1623 async_answer_4(chandle, rc, our_adv, their_adv, (sysarg_t) result, 1624 1624 (sysarg_t) their_result); 1625 1625 } 1626 1626 1627 1627 static void remote_nic_autoneg_restart(ddf_fun_t *dev, void *iface, 1628 cap_call_handle_t c allid, ipc_call_t *call)1628 cap_call_handle_t chandle, ipc_call_t *call) 1629 1629 { 1630 1630 nic_iface_t *nic_iface = (nic_iface_t *) iface; 1631 1631 if (nic_iface->autoneg_restart == NULL) { 1632 async_answer_0(c allid, ENOTSUP);1632 async_answer_0(chandle, ENOTSUP); 1633 1633 return; 1634 1634 } 1635 1635 1636 1636 errno_t rc = nic_iface->autoneg_restart(dev); 1637 async_answer_0(c allid, rc);1637 async_answer_0(chandle, rc); 1638 1638 } 1639 1639 1640 1640 static void remote_nic_get_pause(ddf_fun_t *dev, void *iface, 1641 cap_call_handle_t c allid, ipc_call_t *call)1641 cap_call_handle_t chandle, ipc_call_t *call) 1642 1642 { 1643 1643 nic_iface_t *nic_iface = (nic_iface_t *) iface; 1644 1644 if (nic_iface->get_pause == NULL) { 1645 async_answer_0(c allid, ENOTSUP);1645 async_answer_0(chandle, ENOTSUP); 1646 1646 return; 1647 1647 } … … 1652 1652 1653 1653 errno_t rc = nic_iface->get_pause(dev, &we_send, &we_receive, &pause); 1654 async_answer_3(c allid, rc, we_send, we_receive, pause);1654 async_answer_3(chandle, rc, we_send, we_receive, pause); 1655 1655 } 1656 1656 1657 1657 static void remote_nic_set_pause(ddf_fun_t *dev, void *iface, 1658 cap_call_handle_t c allid, ipc_call_t *call)1658 cap_call_handle_t chandle, ipc_call_t *call) 1659 1659 { 1660 1660 nic_iface_t *nic_iface = (nic_iface_t *) iface; 1661 1661 if (nic_iface->set_pause == NULL) { 1662 async_answer_0(c allid, ENOTSUP);1662 async_answer_0(chandle, ENOTSUP); 1663 1663 return; 1664 1664 } … … 1670 1670 errno_t rc = nic_iface->set_pause(dev, allow_send, allow_receive, 1671 1671 pause); 1672 async_answer_0(c allid, rc);1672 async_answer_0(chandle, rc); 1673 1673 } 1674 1674 1675 1675 static void remote_nic_unicast_get_mode(ddf_fun_t *dev, void *iface, 1676 cap_call_handle_t c allid, ipc_call_t *call)1676 cap_call_handle_t chandle, ipc_call_t *call) 1677 1677 { 1678 1678 nic_iface_t *nic_iface = (nic_iface_t *) iface; 1679 1679 if (nic_iface->unicast_get_mode == NULL) { 1680 async_answer_0(c allid, ENOTSUP);1680 async_answer_0(chandle, ENOTSUP); 1681 1681 return; 1682 1682 } … … 1688 1688 address_list = malloc(max_count * sizeof (nic_address_t)); 1689 1689 if (!address_list) { 1690 async_answer_0(c allid, ENOMEM);1690 async_answer_0(chandle, ENOMEM); 1691 1691 return; 1692 1692 } … … 1702 1702 if ((rc != EOK) || (max_count == 0) || (address_count == 0)) { 1703 1703 free(address_list); 1704 async_answer_2(c allid, rc, mode, address_count);1705 return; 1706 } 1707 1708 cap_call_handle_t data_c allid;1704 async_answer_2(chandle, rc, mode, address_count); 1705 return; 1706 } 1707 1708 cap_call_handle_t data_chandle; 1709 1709 size_t max_len; 1710 if (!async_data_read_receive(&data_c allid, &max_len)) {1711 async_answer_0(data_c allid, EINVAL);1712 async_answer_2(c allid, rc, mode, address_count);1710 if (!async_data_read_receive(&data_chandle, &max_len)) { 1711 async_answer_0(data_chandle, EINVAL); 1712 async_answer_2(chandle, rc, mode, address_count); 1713 1713 free(address_list); 1714 1714 return; … … 1721 1721 max_len = max_count * sizeof(nic_address_t); 1722 1722 1723 async_data_read_finalize(data_c allid, address_list, max_len);1724 async_answer_0(data_c allid, EINVAL);1723 async_data_read_finalize(data_chandle, address_list, max_len); 1724 async_answer_0(data_chandle, EINVAL); 1725 1725 1726 1726 free(address_list); 1727 async_answer_2(c allid, rc, mode, address_count);1727 async_answer_2(chandle, rc, mode, address_count); 1728 1728 } 1729 1729 1730 1730 static void remote_nic_unicast_set_mode(ddf_fun_t *dev, void *iface, 1731 cap_call_handle_t c allid, ipc_call_t *call)1731 cap_call_handle_t chandle, ipc_call_t *call) 1732 1732 { 1733 1733 nic_iface_t *nic_iface = (nic_iface_t *) iface; … … 1739 1739 1740 1740 if (address_count) { 1741 cap_call_handle_t data_c allid;1742 if (!async_data_write_receive(&data_c allid, &length)) {1743 async_answer_0(data_c allid, EINVAL);1744 async_answer_0(c allid, EINVAL);1741 cap_call_handle_t data_chandle; 1742 if (!async_data_write_receive(&data_chandle, &length)) { 1743 async_answer_0(data_chandle, EINVAL); 1744 async_answer_0(chandle, EINVAL); 1745 1745 return; 1746 1746 } 1747 1747 1748 1748 if (length != address_count * sizeof(nic_address_t)) { 1749 async_answer_0(data_c allid, ELIMIT);1750 async_answer_0(c allid, ELIMIT);1749 async_answer_0(data_chandle, ELIMIT); 1750 async_answer_0(chandle, ELIMIT); 1751 1751 return; 1752 1752 } … … 1754 1754 address_list = malloc(length); 1755 1755 if (address_list == NULL) { 1756 async_answer_0(data_c allid, ENOMEM);1757 async_answer_0(c allid, ENOMEM);1758 return; 1759 } 1760 1761 if (async_data_write_finalize(data_c allid, address_list,1756 async_answer_0(data_chandle, ENOMEM); 1757 async_answer_0(chandle, ENOMEM); 1758 return; 1759 } 1760 1761 if (async_data_write_finalize(data_chandle, address_list, 1762 1762 length) != EOK) { 1763 async_answer_0(c allid, EINVAL);1763 async_answer_0(chandle, EINVAL); 1764 1764 free(address_list); 1765 1765 return; … … 1770 1770 errno_t rc = nic_iface->unicast_set_mode(dev, mode, address_list, 1771 1771 address_count); 1772 async_answer_0(c allid, rc);1772 async_answer_0(chandle, rc); 1773 1773 } else 1774 async_answer_0(c allid, ENOTSUP);1774 async_answer_0(chandle, ENOTSUP); 1775 1775 1776 1776 free(address_list); … … 1778 1778 1779 1779 static void remote_nic_multicast_get_mode(ddf_fun_t *dev, void *iface, 1780 cap_call_handle_t c allid, ipc_call_t *call)1780 cap_call_handle_t chandle, ipc_call_t *call) 1781 1781 { 1782 1782 nic_iface_t *nic_iface = (nic_iface_t *) iface; 1783 1783 if (nic_iface->multicast_get_mode == NULL) { 1784 async_answer_0(c allid, ENOTSUP);1784 async_answer_0(chandle, ENOTSUP); 1785 1785 return; 1786 1786 } … … 1792 1792 address_list = malloc(max_count * sizeof(nic_address_t)); 1793 1793 if (!address_list) { 1794 async_answer_0(c allid, ENOMEM);1794 async_answer_0(chandle, ENOMEM); 1795 1795 return; 1796 1796 } … … 1807 1807 if ((rc != EOK) || (max_count == 0) || (address_count == 0)) { 1808 1808 free(address_list); 1809 async_answer_2(c allid, rc, mode, address_count);1810 return; 1811 } 1812 1813 cap_call_handle_t data_c allid;1809 async_answer_2(chandle, rc, mode, address_count); 1810 return; 1811 } 1812 1813 cap_call_handle_t data_chandle; 1814 1814 size_t max_len; 1815 if (!async_data_read_receive(&data_c allid, &max_len)) {1816 async_answer_0(data_c allid, EINVAL);1817 async_answer_2(c allid, rc, mode, address_count);1815 if (!async_data_read_receive(&data_chandle, &max_len)) { 1816 async_answer_0(data_chandle, EINVAL); 1817 async_answer_2(chandle, rc, mode, address_count); 1818 1818 free(address_list); 1819 1819 return; … … 1826 1826 max_len = max_count * sizeof(nic_address_t); 1827 1827 1828 async_data_read_finalize(data_c allid, address_list, max_len);1828 async_data_read_finalize(data_chandle, address_list, max_len); 1829 1829 1830 1830 free(address_list); 1831 async_answer_2(c allid, rc, mode, address_count);1831 async_answer_2(chandle, rc, mode, address_count); 1832 1832 } 1833 1833 1834 1834 static void remote_nic_multicast_set_mode(ddf_fun_t *dev, void *iface, 1835 cap_call_handle_t c allid, ipc_call_t *call)1835 cap_call_handle_t chandle, ipc_call_t *call) 1836 1836 { 1837 1837 nic_iface_t *nic_iface = (nic_iface_t *) iface; … … 1842 1842 1843 1843 if (address_count) { 1844 cap_call_handle_t data_c allid;1844 cap_call_handle_t data_chandle; 1845 1845 size_t length; 1846 if (!async_data_write_receive(&data_c allid, &length)) {1847 async_answer_0(data_c allid, EINVAL);1848 async_answer_0(c allid, EINVAL);1846 if (!async_data_write_receive(&data_chandle, &length)) { 1847 async_answer_0(data_chandle, EINVAL); 1848 async_answer_0(chandle, EINVAL); 1849 1849 return; 1850 1850 } 1851 1851 1852 1852 if (length != address_count * sizeof (nic_address_t)) { 1853 async_answer_0(data_c allid, ELIMIT);1854 async_answer_0(c allid, ELIMIT);1853 async_answer_0(data_chandle, ELIMIT); 1854 async_answer_0(chandle, ELIMIT); 1855 1855 return; 1856 1856 } … … 1858 1858 address_list = malloc(length); 1859 1859 if (address_list == NULL) { 1860 async_answer_0(data_c allid, ENOMEM);1861 async_answer_0(c allid, ENOMEM);1862 return; 1863 } 1864 1865 if (async_data_write_finalize(data_c allid, address_list,1860 async_answer_0(data_chandle, ENOMEM); 1861 async_answer_0(chandle, ENOMEM); 1862 return; 1863 } 1864 1865 if (async_data_write_finalize(data_chandle, address_list, 1866 1866 length) != EOK) { 1867 async_answer_0(c allid, EINVAL);1867 async_answer_0(chandle, EINVAL); 1868 1868 free(address_list); 1869 1869 return; … … 1874 1874 errno_t rc = nic_iface->multicast_set_mode(dev, mode, address_list, 1875 1875 address_count); 1876 async_answer_0(c allid, rc);1876 async_answer_0(chandle, rc); 1877 1877 } else 1878 async_answer_0(c allid, ENOTSUP);1878 async_answer_0(chandle, ENOTSUP); 1879 1879 1880 1880 free(address_list); … … 1882 1882 1883 1883 static void remote_nic_broadcast_get_mode(ddf_fun_t *dev, void *iface, 1884 cap_call_handle_t c allid, ipc_call_t *call)1884 cap_call_handle_t chandle, ipc_call_t *call) 1885 1885 { 1886 1886 nic_iface_t *nic_iface = (nic_iface_t *) iface; 1887 1887 if (nic_iface->broadcast_get_mode == NULL) { 1888 async_answer_0(c allid, ENOTSUP);1888 async_answer_0(chandle, ENOTSUP); 1889 1889 return; 1890 1890 } … … 1893 1893 1894 1894 errno_t rc = nic_iface->broadcast_get_mode(dev, &mode); 1895 async_answer_1(c allid, rc, mode);1895 async_answer_1(chandle, rc, mode); 1896 1896 } 1897 1897 1898 1898 static void remote_nic_broadcast_set_mode(ddf_fun_t *dev, void *iface, 1899 cap_call_handle_t c allid, ipc_call_t *call)1899 cap_call_handle_t chandle, ipc_call_t *call) 1900 1900 { 1901 1901 nic_iface_t *nic_iface = (nic_iface_t *) iface; 1902 1902 if (nic_iface->broadcast_set_mode == NULL) { 1903 async_answer_0(c allid, ENOTSUP);1903 async_answer_0(chandle, ENOTSUP); 1904 1904 return; 1905 1905 } … … 1908 1908 1909 1909 errno_t rc = nic_iface->broadcast_set_mode(dev, mode); 1910 async_answer_0(c allid, rc);1910 async_answer_0(chandle, rc); 1911 1911 } 1912 1912 1913 1913 static void remote_nic_defective_get_mode(ddf_fun_t *dev, void *iface, 1914 cap_call_handle_t c allid, ipc_call_t *call)1914 cap_call_handle_t chandle, ipc_call_t *call) 1915 1915 { 1916 1916 nic_iface_t *nic_iface = (nic_iface_t *) iface; 1917 1917 if (nic_iface->defective_get_mode == NULL) { 1918 async_answer_0(c allid, ENOTSUP);1918 async_answer_0(chandle, ENOTSUP); 1919 1919 return; 1920 1920 } … … 1923 1923 1924 1924 errno_t rc = nic_iface->defective_get_mode(dev, &mode); 1925 async_answer_1(c allid, rc, mode);1925 async_answer_1(chandle, rc, mode); 1926 1926 } 1927 1927 1928 1928 static void remote_nic_defective_set_mode(ddf_fun_t *dev, void *iface, 1929 cap_call_handle_t c allid, ipc_call_t *call)1929 cap_call_handle_t chandle, ipc_call_t *call) 1930 1930 { 1931 1931 nic_iface_t *nic_iface = (nic_iface_t *) iface; 1932 1932 if (nic_iface->defective_set_mode == NULL) { 1933 async_answer_0(c allid, ENOTSUP);1933 async_answer_0(chandle, ENOTSUP); 1934 1934 return; 1935 1935 } … … 1938 1938 1939 1939 errno_t rc = nic_iface->defective_set_mode(dev, mode); 1940 async_answer_0(c allid, rc);1940 async_answer_0(chandle, rc); 1941 1941 } 1942 1942 1943 1943 static void remote_nic_blocked_sources_get(ddf_fun_t *dev, void *iface, 1944 cap_call_handle_t c allid, ipc_call_t *call)1944 cap_call_handle_t chandle, ipc_call_t *call) 1945 1945 { 1946 1946 nic_iface_t *nic_iface = (nic_iface_t *) iface; 1947 1947 if (nic_iface->blocked_sources_get == NULL) { 1948 async_answer_0(c allid, ENOTSUP);1948 async_answer_0(chandle, ENOTSUP); 1949 1949 return; 1950 1950 } … … 1956 1956 address_list = malloc(max_count * sizeof(nic_address_t)); 1957 1957 if (!address_list) { 1958 async_answer_0(c allid, ENOMEM);1958 async_answer_0(chandle, ENOMEM); 1959 1959 return; 1960 1960 } … … 1968 1968 1969 1969 if ((rc != EOK) || (max_count == 0) || (address_count == 0)) { 1970 async_answer_1(c allid, rc, address_count);1970 async_answer_1(chandle, rc, address_count); 1971 1971 free(address_list); 1972 1972 return; 1973 1973 } 1974 1974 1975 cap_call_handle_t data_c allid;1975 cap_call_handle_t data_chandle; 1976 1976 size_t max_len; 1977 if (!async_data_read_receive(&data_c allid, &max_len)) {1978 async_answer_0(data_c allid, EINVAL);1979 async_answer_1(c allid, rc, address_count);1977 if (!async_data_read_receive(&data_chandle, &max_len)) { 1978 async_answer_0(data_chandle, EINVAL); 1979 async_answer_1(chandle, rc, address_count); 1980 1980 free(address_list); 1981 1981 return; … … 1988 1988 max_len = max_count * sizeof(nic_address_t); 1989 1989 1990 async_data_read_finalize(data_c allid, address_list, max_len);1991 async_answer_0(data_c allid, EINVAL);1990 async_data_read_finalize(data_chandle, address_list, max_len); 1991 async_answer_0(data_chandle, EINVAL); 1992 1992 1993 1993 free(address_list); 1994 async_answer_1(c allid, rc, address_count);1994 async_answer_1(chandle, rc, address_count); 1995 1995 } 1996 1996 1997 1997 static void remote_nic_blocked_sources_set(ddf_fun_t *dev, void *iface, 1998 cap_call_handle_t c allid, ipc_call_t *call)1998 cap_call_handle_t chandle, ipc_call_t *call) 1999 1999 { 2000 2000 nic_iface_t *nic_iface = (nic_iface_t *) iface; … … 2005 2005 2006 2006 if (address_count) { 2007 cap_call_handle_t data_c allid;2008 if (!async_data_write_receive(&data_c allid, &length)) {2009 async_answer_0(data_c allid, EINVAL);2010 async_answer_0(c allid, EINVAL);2007 cap_call_handle_t data_chandle; 2008 if (!async_data_write_receive(&data_chandle, &length)) { 2009 async_answer_0(data_chandle, EINVAL); 2010 async_answer_0(chandle, EINVAL); 2011 2011 return; 2012 2012 } 2013 2013 2014 2014 if (length != address_count * sizeof(nic_address_t)) { 2015 async_answer_0(data_c allid, ELIMIT);2016 async_answer_0(c allid, ELIMIT);2015 async_answer_0(data_chandle, ELIMIT); 2016 async_answer_0(chandle, ELIMIT); 2017 2017 return; 2018 2018 } … … 2020 2020 address_list = malloc(length); 2021 2021 if (address_list == NULL) { 2022 async_answer_0(data_c allid, ENOMEM);2023 async_answer_0(c allid, ENOMEM);2024 return; 2025 } 2026 2027 if (async_data_write_finalize(data_c allid, address_list,2022 async_answer_0(data_chandle, ENOMEM); 2023 async_answer_0(chandle, ENOMEM); 2024 return; 2025 } 2026 2027 if (async_data_write_finalize(data_chandle, address_list, 2028 2028 length) != EOK) { 2029 async_answer_0(c allid, EINVAL);2029 async_answer_0(chandle, EINVAL); 2030 2030 free(address_list); 2031 2031 return; … … 2036 2036 errno_t rc = nic_iface->blocked_sources_set(dev, address_list, 2037 2037 address_count); 2038 async_answer_0(c allid, rc);2038 async_answer_0(chandle, rc); 2039 2039 } else 2040 async_answer_0(c allid, ENOTSUP);2040 async_answer_0(chandle, ENOTSUP); 2041 2041 2042 2042 free(address_list); … … 2044 2044 2045 2045 static void remote_nic_vlan_get_mask(ddf_fun_t *dev, void *iface, 2046 cap_call_handle_t c allid, ipc_call_t *call)2046 cap_call_handle_t chandle, ipc_call_t *call) 2047 2047 { 2048 2048 nic_iface_t *nic_iface = (nic_iface_t *) iface; 2049 2049 if (nic_iface->vlan_get_mask == NULL) { 2050 async_answer_0(c allid, ENOTSUP);2050 async_answer_0(chandle, ENOTSUP); 2051 2051 return; 2052 2052 } … … 2057 2057 errno_t rc = nic_iface->vlan_get_mask(dev, &vlan_mask); 2058 2058 if (rc == EOK) { 2059 cap_call_handle_t data_c allid;2059 cap_call_handle_t data_chandle; 2060 2060 size_t max_len; 2061 if (!async_data_read_receive(&data_c allid, &max_len)) {2062 async_answer_0(data_c allid, EINVAL);2063 async_answer_0(c allid, EINVAL);2061 if (!async_data_read_receive(&data_chandle, &max_len)) { 2062 async_answer_0(data_chandle, EINVAL); 2063 async_answer_0(chandle, EINVAL); 2064 2064 return; 2065 2065 } 2066 2066 2067 2067 if (max_len != sizeof(nic_vlan_mask_t)) { 2068 async_answer_0(data_c allid, EINVAL);2069 async_answer_0(c allid, EINVAL);2070 return; 2071 } 2072 2073 async_data_read_finalize(data_c allid, &vlan_mask, max_len);2074 } 2075 2076 async_answer_0(c allid, rc);2068 async_answer_0(data_chandle, EINVAL); 2069 async_answer_0(chandle, EINVAL); 2070 return; 2071 } 2072 2073 async_data_read_finalize(data_chandle, &vlan_mask, max_len); 2074 } 2075 2076 async_answer_0(chandle, rc); 2077 2077 } 2078 2078 2079 2079 static void remote_nic_vlan_set_mask(ddf_fun_t *dev, void *iface, 2080 cap_call_handle_t c allid, ipc_call_t *call)2080 cap_call_handle_t chandle, ipc_call_t *call) 2081 2081 { 2082 2082 nic_iface_t *nic_iface = (nic_iface_t *) iface; … … 2087 2087 2088 2088 if (vlan_mask_set) { 2089 cap_call_handle_t data_c allid;2089 cap_call_handle_t data_chandle; 2090 2090 size_t length; 2091 if (!async_data_write_receive(&data_c allid, &length)) {2092 async_answer_0(data_c allid, EINVAL);2093 async_answer_0(c allid, EINVAL);2091 if (!async_data_write_receive(&data_chandle, &length)) { 2092 async_answer_0(data_chandle, EINVAL); 2093 async_answer_0(chandle, EINVAL); 2094 2094 return; 2095 2095 } 2096 2096 2097 2097 if (length != sizeof(nic_vlan_mask_t)) { 2098 async_answer_0(data_c allid, ELIMIT);2099 async_answer_0(c allid, ELIMIT);2100 return; 2101 } 2102 2103 if (async_data_write_finalize(data_c allid, &vlan_mask,2098 async_answer_0(data_chandle, ELIMIT); 2099 async_answer_0(chandle, ELIMIT); 2100 return; 2101 } 2102 2103 if (async_data_write_finalize(data_chandle, &vlan_mask, 2104 2104 length) != EOK) { 2105 async_answer_0(c allid, EINVAL);2105 async_answer_0(chandle, EINVAL); 2106 2106 return; 2107 2107 } … … 2112 2112 if (nic_iface->vlan_set_mask != NULL) { 2113 2113 errno_t rc = nic_iface->vlan_set_mask(dev, vlan_mask_pointer); 2114 async_answer_0(c allid, rc);2114 async_answer_0(chandle, rc); 2115 2115 } else 2116 async_answer_0(c allid, ENOTSUP);2116 async_answer_0(chandle, ENOTSUP); 2117 2117 } 2118 2118 2119 2119 static void remote_nic_vlan_set_tag(ddf_fun_t *dev, void *iface, 2120 cap_call_handle_t c allid, ipc_call_t *call)2120 cap_call_handle_t chandle, ipc_call_t *call) 2121 2121 { 2122 2122 nic_iface_t *nic_iface = (nic_iface_t *) iface; 2123 2123 2124 2124 if (nic_iface->vlan_set_tag == NULL) { 2125 async_answer_0(c allid, ENOTSUP);2125 async_answer_0(chandle, ENOTSUP); 2126 2126 return; 2127 2127 } … … 2132 2132 2133 2133 errno_t rc = nic_iface->vlan_set_tag(dev, tag, add, strip); 2134 async_answer_0(c allid, rc);2134 async_answer_0(chandle, rc); 2135 2135 } 2136 2136 2137 2137 static void remote_nic_wol_virtue_add(ddf_fun_t *dev, void *iface, 2138 cap_call_handle_t c allid, ipc_call_t *call)2138 cap_call_handle_t chandle, ipc_call_t *call) 2139 2139 { 2140 2140 nic_iface_t *nic_iface = (nic_iface_t *) iface; 2141 2141 2142 2142 int send_data = (int) IPC_GET_ARG3(*call); 2143 cap_call_handle_t data_c allid;2143 cap_call_handle_t data_chandle; 2144 2144 2145 2145 if (nic_iface->wol_virtue_add == NULL) { 2146 2146 if (send_data) { 2147 async_data_write_receive(&data_c allid, NULL);2148 async_answer_0(data_c allid, ENOTSUP);2149 } 2150 2151 async_answer_0(c allid, ENOTSUP);2147 async_data_write_receive(&data_chandle, NULL); 2148 async_answer_0(data_chandle, ENOTSUP); 2149 } 2150 2151 async_answer_0(chandle, ENOTSUP); 2152 2152 } 2153 2153 … … 2156 2156 2157 2157 if (send_data) { 2158 if (!async_data_write_receive(&data_c allid, &length)) {2159 async_answer_0(data_c allid, EINVAL);2160 async_answer_0(c allid, EINVAL);2158 if (!async_data_write_receive(&data_chandle, &length)) { 2159 async_answer_0(data_chandle, EINVAL); 2160 async_answer_0(chandle, EINVAL); 2161 2161 return; 2162 2162 } … … 2164 2164 data = malloc(length); 2165 2165 if (data == NULL) { 2166 async_answer_0(data_c allid, ENOMEM);2167 async_answer_0(c allid, ENOMEM);2168 return; 2169 } 2170 2171 if (async_data_write_finalize(data_c allid, data,2166 async_answer_0(data_chandle, ENOMEM); 2167 async_answer_0(chandle, ENOMEM); 2168 return; 2169 } 2170 2171 if (async_data_write_finalize(data_chandle, data, 2172 2172 length) != EOK) { 2173 async_answer_0(c allid, EINVAL);2173 async_answer_0(chandle, EINVAL); 2174 2174 free(data); 2175 2175 return; … … 2181 2181 2182 2182 errno_t rc = nic_iface->wol_virtue_add(dev, type, data, length, &id); 2183 async_answer_1(c allid, rc, (sysarg_t) id);2183 async_answer_1(chandle, rc, (sysarg_t) id); 2184 2184 free(data); 2185 2185 } 2186 2186 2187 2187 static void remote_nic_wol_virtue_remove(ddf_fun_t *dev, void *iface, 2188 cap_call_handle_t c allid, ipc_call_t *call)2188 cap_call_handle_t chandle, ipc_call_t *call) 2189 2189 { 2190 2190 nic_iface_t *nic_iface = (nic_iface_t *) iface; 2191 2191 2192 2192 if (nic_iface->wol_virtue_remove == NULL) { 2193 async_answer_0(c allid, ENOTSUP);2193 async_answer_0(chandle, ENOTSUP); 2194 2194 return; 2195 2195 } … … 2198 2198 2199 2199 errno_t rc = nic_iface->wol_virtue_remove(dev, id); 2200 async_answer_0(c allid, rc);2200 async_answer_0(chandle, rc); 2201 2201 } 2202 2202 2203 2203 static void remote_nic_wol_virtue_probe(ddf_fun_t *dev, void *iface, 2204 cap_call_handle_t c allid, ipc_call_t *call)2204 cap_call_handle_t chandle, ipc_call_t *call) 2205 2205 { 2206 2206 nic_iface_t *nic_iface = (nic_iface_t *) iface; 2207 2207 2208 2208 if (nic_iface->wol_virtue_probe == NULL) { 2209 async_answer_0(c allid, ENOTSUP);2209 async_answer_0(chandle, ENOTSUP); 2210 2210 return; 2211 2211 } … … 2215 2215 nic_wv_type_t type = NIC_WV_NONE; 2216 2216 size_t length = 0; 2217 cap_call_handle_t data_c allid;2217 cap_call_handle_t data_chandle; 2218 2218 void *data = NULL; 2219 2219 … … 2221 2221 data = malloc(max_length); 2222 2222 if (data == NULL) { 2223 async_answer_0(c allid, ENOMEM);2223 async_answer_0(chandle, ENOMEM); 2224 2224 return; 2225 2225 } … … 2233 2233 if ((max_length != 0) && (length != 0)) { 2234 2234 size_t req_length; 2235 if (!async_data_read_receive(&data_c allid, &req_length)) {2236 async_answer_0(data_c allid, EINVAL);2237 async_answer_0(c allid, EINVAL);2235 if (!async_data_read_receive(&data_chandle, &req_length)) { 2236 async_answer_0(data_chandle, EINVAL); 2237 async_answer_0(chandle, EINVAL); 2238 2238 free(data); 2239 2239 return; … … 2246 2246 req_length = max_length; 2247 2247 2248 async_data_read_finalize(data_c allid, data, req_length);2249 } 2250 2251 async_answer_2(c allid, rc, (sysarg_t) type, (sysarg_t) length);2248 async_data_read_finalize(data_chandle, data, req_length); 2249 } 2250 2251 async_answer_2(chandle, rc, (sysarg_t) type, (sysarg_t) length); 2252 2252 free(data); 2253 2253 } 2254 2254 2255 2255 static void remote_nic_wol_virtue_list(ddf_fun_t *dev, void *iface, 2256 cap_call_handle_t c allid, ipc_call_t *call)2256 cap_call_handle_t chandle, ipc_call_t *call) 2257 2257 { 2258 2258 nic_iface_t *nic_iface = (nic_iface_t *) iface; 2259 2259 if (nic_iface->wol_virtue_list == NULL) { 2260 async_answer_0(c allid, ENOTSUP);2260 async_answer_0(chandle, ENOTSUP); 2261 2261 return; 2262 2262 } … … 2266 2266 size_t count = 0; 2267 2267 nic_wv_id_t *id_list = NULL; 2268 cap_call_handle_t data_c allid;2268 cap_call_handle_t data_chandle; 2269 2269 2270 2270 if (max_count != 0) { 2271 2271 id_list = malloc(max_count * sizeof(nic_wv_id_t)); 2272 2272 if (id_list == NULL) { 2273 async_answer_0(c allid, ENOMEM);2273 async_answer_0(chandle, ENOMEM); 2274 2274 return; 2275 2275 } … … 2283 2283 if ((max_count != 0) && (count != 0)) { 2284 2284 size_t req_length; 2285 if (!async_data_read_receive(&data_c allid, &req_length)) {2286 async_answer_0(data_c allid, EINVAL);2287 async_answer_0(c allid, EINVAL);2285 if (!async_data_read_receive(&data_chandle, &req_length)) { 2286 async_answer_0(data_chandle, EINVAL); 2287 async_answer_0(chandle, EINVAL); 2288 2288 free(id_list); 2289 2289 return; … … 2296 2296 req_length = max_count * sizeof(nic_wv_id_t); 2297 2297 2298 rc = async_data_read_finalize(data_c allid, id_list, req_length);2299 } 2300 2301 async_answer_1(c allid, rc, (sysarg_t) count);2298 rc = async_data_read_finalize(data_chandle, id_list, req_length); 2299 } 2300 2301 async_answer_1(chandle, rc, (sysarg_t) count); 2302 2302 free(id_list); 2303 2303 } 2304 2304 2305 2305 static void remote_nic_wol_virtue_get_caps(ddf_fun_t *dev, void *iface, 2306 cap_call_handle_t c allid, ipc_call_t *call)2306 cap_call_handle_t chandle, ipc_call_t *call) 2307 2307 { 2308 2308 nic_iface_t *nic_iface = (nic_iface_t *) iface; 2309 2309 if (nic_iface->wol_virtue_get_caps == NULL) { 2310 async_answer_0(c allid, ENOTSUP);2310 async_answer_0(chandle, ENOTSUP); 2311 2311 return; 2312 2312 } … … 2316 2316 2317 2317 errno_t rc = nic_iface->wol_virtue_get_caps(dev, type, &count); 2318 async_answer_1(c allid, rc, (sysarg_t) count);2318 async_answer_1(chandle, rc, (sysarg_t) count); 2319 2319 } 2320 2320 2321 2321 static void remote_nic_wol_load_info(ddf_fun_t *dev, void *iface, 2322 cap_call_handle_t c allid, ipc_call_t *call)2322 cap_call_handle_t chandle, ipc_call_t *call) 2323 2323 { 2324 2324 nic_iface_t *nic_iface = (nic_iface_t *) iface; 2325 2325 if (nic_iface->wol_load_info == NULL) { 2326 async_answer_0(c allid, ENOTSUP);2326 async_answer_0(chandle, ENOTSUP); 2327 2327 return; 2328 2328 } … … 2336 2336 data = malloc(max_length); 2337 2337 if (data == NULL) { 2338 async_answer_0(c allid, ENOMEM);2338 async_answer_0(chandle, ENOMEM); 2339 2339 return; 2340 2340 } … … 2346 2346 &frame_length); 2347 2347 if (rc == EOK) { 2348 cap_call_handle_t data_c allid;2348 cap_call_handle_t data_chandle; 2349 2349 size_t req_length; 2350 if (!async_data_read_receive(&data_c allid, &req_length)) {2351 async_answer_0(data_c allid, EINVAL);2352 async_answer_0(c allid, EINVAL);2350 if (!async_data_read_receive(&data_chandle, &req_length)) { 2351 async_answer_0(data_chandle, EINVAL); 2352 async_answer_0(chandle, EINVAL); 2353 2353 free(data); 2354 2354 return; … … 2357 2357 req_length = req_length > max_length ? max_length : req_length; 2358 2358 req_length = req_length > frame_length ? frame_length : req_length; 2359 async_data_read_finalize(data_c allid, data, req_length);2360 } 2361 2362 async_answer_2(c allid, rc, (sysarg_t) type, (sysarg_t) frame_length);2359 async_data_read_finalize(data_chandle, data, req_length); 2360 } 2361 2362 async_answer_2(chandle, rc, (sysarg_t) type, (sysarg_t) frame_length); 2363 2363 free(data); 2364 2364 } 2365 2365 2366 2366 static void remote_nic_offload_probe(ddf_fun_t *dev, void *iface, 2367 cap_call_handle_t c allid, ipc_call_t *call)2367 cap_call_handle_t chandle, ipc_call_t *call) 2368 2368 { 2369 2369 nic_iface_t *nic_iface = (nic_iface_t *) iface; 2370 2370 if (nic_iface->offload_probe == NULL) { 2371 async_answer_0(c allid, ENOTSUP);2371 async_answer_0(chandle, ENOTSUP); 2372 2372 return; 2373 2373 } … … 2377 2377 2378 2378 errno_t rc = nic_iface->offload_probe(dev, &supported, &active); 2379 async_answer_2(c allid, rc, supported, active);2379 async_answer_2(chandle, rc, supported, active); 2380 2380 } 2381 2381 2382 2382 static void remote_nic_offload_set(ddf_fun_t *dev, void *iface, 2383 cap_call_handle_t c allid, ipc_call_t *call)2383 cap_call_handle_t chandle, ipc_call_t *call) 2384 2384 { 2385 2385 nic_iface_t *nic_iface = (nic_iface_t *) iface; 2386 2386 if (nic_iface->offload_set == NULL) { 2387 async_answer_0(c allid, ENOTSUP);2387 async_answer_0(chandle, ENOTSUP); 2388 2388 return; 2389 2389 } … … 2393 2393 2394 2394 errno_t rc = nic_iface->offload_set(dev, mask, active); 2395 async_answer_0(c allid, rc);2395 async_answer_0(chandle, rc); 2396 2396 } 2397 2397 2398 2398 static void remote_nic_poll_get_mode(ddf_fun_t *dev, void *iface, 2399 cap_call_handle_t c allid, ipc_call_t *call)2399 cap_call_handle_t chandle, ipc_call_t *call) 2400 2400 { 2401 2401 nic_iface_t *nic_iface = (nic_iface_t *) iface; 2402 2402 if (nic_iface->poll_get_mode == NULL) { 2403 async_answer_0(c allid, ENOTSUP);2403 async_answer_0(chandle, ENOTSUP); 2404 2404 return; 2405 2405 } … … 2415 2415 if ((rc == EOK) && (request_data)) { 2416 2416 size_t max_len; 2417 cap_call_handle_t data_c allid;2418 2419 if (!async_data_read_receive(&data_c allid, &max_len)) {2420 async_answer_0(data_c allid, EINVAL);2421 async_answer_0(c allid, EINVAL);2417 cap_call_handle_t data_chandle; 2418 2419 if (!async_data_read_receive(&data_chandle, &max_len)) { 2420 async_answer_0(data_chandle, EINVAL); 2421 async_answer_0(chandle, EINVAL); 2422 2422 return; 2423 2423 } 2424 2424 2425 2425 if (max_len != sizeof(struct timeval)) { 2426 async_answer_0(data_c allid, ELIMIT);2427 async_answer_0(c allid, ELIMIT);2428 return; 2429 } 2430 2431 async_data_read_finalize(data_c allid, &period,2426 async_answer_0(data_chandle, ELIMIT); 2427 async_answer_0(chandle, ELIMIT); 2428 return; 2429 } 2430 2431 async_data_read_finalize(data_chandle, &period, 2432 2432 sizeof(struct timeval)); 2433 2433 } 2434 2434 2435 async_answer_1(c allid, rc, (sysarg_t) mode);2435 async_answer_1(chandle, rc, (sysarg_t) mode); 2436 2436 } 2437 2437 2438 2438 static void remote_nic_poll_set_mode(ddf_fun_t *dev, void *iface, 2439 cap_call_handle_t c allid, ipc_call_t *call)2439 cap_call_handle_t chandle, ipc_call_t *call) 2440 2440 { 2441 2441 nic_iface_t *nic_iface = (nic_iface_t *) iface; … … 2448 2448 2449 2449 if (has_period) { 2450 cap_call_handle_t data_c allid;2451 if (!async_data_write_receive(&data_c allid, &length)) {2452 async_answer_0(data_c allid, EINVAL);2453 async_answer_0(c allid, EINVAL);2450 cap_call_handle_t data_chandle; 2451 if (!async_data_write_receive(&data_chandle, &length)) { 2452 async_answer_0(data_chandle, EINVAL); 2453 async_answer_0(chandle, EINVAL); 2454 2454 return; 2455 2455 } 2456 2456 2457 2457 if (length != sizeof(struct timeval)) { 2458 async_answer_0(data_c allid, ELIMIT);2459 async_answer_0(c allid, ELIMIT);2458 async_answer_0(data_chandle, ELIMIT); 2459 async_answer_0(chandle, ELIMIT); 2460 2460 return; 2461 2461 } 2462 2462 2463 2463 period = &period_buf; 2464 if (async_data_write_finalize(data_c allid, period,2464 if (async_data_write_finalize(data_chandle, period, 2465 2465 length) != EOK) { 2466 async_answer_0(c allid, EINVAL);2466 async_answer_0(chandle, EINVAL); 2467 2467 return; 2468 2468 } … … 2471 2471 if (nic_iface->poll_set_mode != NULL) { 2472 2472 errno_t rc = nic_iface->poll_set_mode(dev, mode, period); 2473 async_answer_0(c allid, rc);2473 async_answer_0(chandle, rc); 2474 2474 } else 2475 async_answer_0(c allid, ENOTSUP);2475 async_answer_0(chandle, ENOTSUP); 2476 2476 } 2477 2477 2478 2478 static void remote_nic_poll_now(ddf_fun_t *dev, void *iface, 2479 cap_call_handle_t c allid, ipc_call_t *call)2479 cap_call_handle_t chandle, ipc_call_t *call) 2480 2480 { 2481 2481 nic_iface_t *nic_iface = (nic_iface_t *) iface; 2482 2482 if (nic_iface->poll_now == NULL) { 2483 async_answer_0(c allid, ENOTSUP);2483 async_answer_0(chandle, ENOTSUP); 2484 2484 return; 2485 2485 } 2486 2486 2487 2487 errno_t rc = nic_iface->poll_now(dev); 2488 async_answer_0(c allid, rc);2488 async_answer_0(chandle, rc); 2489 2489 } 2490 2490
Note:
See TracChangeset
for help on using the changeset viewer.