Changes in uspace/lib/net/nil/nil_remote.c [77a69ea:8d7ec69d] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/net/nil/nil_remote.c
r77a69ea r8d7ec69d 44 44 #include <ipc/nil.h> 45 45 46 /** Notify the network interface layer about the device state change.47 *48 * @param[in] sess Network interface layer session.49 * @param[in] device_id Device identifier.50 * @param[in] state New device state.51 *52 * @return EOK on success.53 * @return Other error codes as defined for each specific module54 * device state function.55 *56 */57 int nil_device_state_msg(async_sess_t *sess, nic_device_id_t device_id,58 sysarg_t state)59 {60 return generic_device_state_msg_remote(sess, NET_NIL_DEVICE_STATE,61 device_id, state, 0);62 }63 64 /** Pass the packet queue to the network interface layer.65 *66 * Process and redistribute the received packet queue to the registered67 * upper layers.68 *69 * @param[in] sess Network interface layer session.70 * @param[in] device_id Source device identifier.71 * @param[in] packet Received packet or the received packet queue.72 * @param[in] target Target service. Ignored parameter.73 *74 * @return EOK on success.75 * @return Other error codes as defined for each specific module76 * received function.77 *78 */79 int nil_received_msg(async_sess_t *sess, nic_device_id_t device_id,80 void *data, size_t size)81 {82 async_exch_t *exch = async_exchange_begin(sess);83 84 ipc_call_t answer;85 aid_t req = async_send_1(exch, NET_NIL_RECEIVED, (sysarg_t) device_id,86 &answer);87 sysarg_t retval = async_data_write_start(exch, data, size);88 89 async_exchange_end(exch);90 91 if (retval != EOK) {92 async_wait_for(req, NULL);93 return retval;94 }95 96 async_wait_for(req, &retval);97 return retval;98 }99 100 /** Notify upper layers that device address has changed101 *102 */103 int nil_addr_changed_msg(async_sess_t *sess, nic_device_id_t device_id,104 const nic_address_t *address)105 {106 assert(sess);107 108 async_exch_t *exch = async_exchange_begin(sess);109 110 aid_t message_id = async_send_1(exch, NET_NIL_ADDR_CHANGED,111 (sysarg_t) device_id, NULL);112 int rc = async_data_write_start(exch, address, sizeof (nic_address_t));113 114 async_exchange_end(exch);115 116 sysarg_t res;117 async_wait_for(message_id, &res);118 119 if (rc != EOK)120 return rc;121 122 return (int) res;123 }124 125 46 int nil_device_req(async_sess_t *sess, nic_device_id_t device_id, 126 47 service_id_t sid, size_t mtu)
Note:
See TracChangeset
for help on using the changeset viewer.