Changeset a1a101d in mainline for uspace/srv/net/ethip
- Timestamp:
- 2012-08-17T16:58:51Z (14 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- bc0ccab
- Parents:
- 920d0fc
- Location:
- uspace/srv/net/ethip
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/net/ethip/arp.c
r920d0fc ra1a101d 59 59 ethip_link_addr_t *laddr; 60 60 61 log_msg(L VL_DEBUG, "arp_received()");61 log_msg(LOG_DEFAULT, LVL_DEBUG, "arp_received()"); 62 62 63 63 rc = arp_pdu_decode(frame->data, frame->size, &packet); … … 65 65 return; 66 66 67 log_msg(L VL_DEBUG, "ARP PDU decoded, opcode=%d, tpa=%x",67 log_msg(LOG_DEFAULT, LVL_DEBUG, "ARP PDU decoded, opcode=%d, tpa=%x", 68 68 packet.opcode, packet.target_proto_addr.ipv4); 69 69 70 70 laddr = ethip_nic_addr_find(nic, &packet.target_proto_addr); 71 71 if (laddr != NULL) { 72 log_msg(L VL_DEBUG, "Request/reply to my address");72 log_msg(LOG_DEFAULT, LVL_DEBUG, "Request/reply to my address"); 73 73 74 74 (void) atrans_add(&packet.sender_proto_addr, … … 122 122 size_t fsize; 123 123 124 log_msg(L VL_DEBUG, "arp_send_packet()");124 log_msg(LOG_DEFAULT, LVL_DEBUG, "arp_send_packet()"); 125 125 126 126 rc = arp_pdu_encode(packet, &pdata, &psize); -
uspace/srv/net/ethip/ethip.c
r920d0fc ra1a101d 77 77 int rc = loc_server_register(NAME); 78 78 if (rc != EOK) { 79 log_msg(L VL_ERROR, "Failed registering server.");79 log_msg(LOG_DEFAULT, LVL_ERROR, "Failed registering server."); 80 80 return rc; 81 81 } … … 96 96 char *svc_name = NULL; 97 97 98 log_msg(L VL_DEBUG, "ethip_iplink_init()");98 log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_iplink_init()"); 99 99 100 100 iplink_srv_init(&nic->iplink); … … 104 104 rc = asprintf(&svc_name, "net/eth%u", ++link_num); 105 105 if (rc < 0) { 106 log_msg(L VL_ERROR, "Out of memory.");106 log_msg(LOG_DEFAULT, LVL_ERROR, "Out of memory."); 107 107 goto error; 108 108 } … … 110 110 rc = loc_service_register(svc_name, &sid); 111 111 if (rc != EOK) { 112 log_msg(L VL_ERROR, "Failed registering service %s.", svc_name);112 log_msg(LOG_DEFAULT, LVL_ERROR, "Failed registering service %s.", svc_name); 113 113 goto error; 114 114 } … … 118 118 rc = loc_category_get_id("iplink", &iplink_cat, IPC_FLAG_BLOCKING); 119 119 if (rc != EOK) { 120 log_msg(L VL_ERROR, "Failed resolving category 'iplink'.");120 log_msg(LOG_DEFAULT, LVL_ERROR, "Failed resolving category 'iplink'."); 121 121 goto error; 122 122 } … … 124 124 rc = loc_service_add_to_cat(sid, iplink_cat); 125 125 if (rc != EOK) { 126 log_msg(L VL_ERROR, "Failed adding %s to category.", svc_name);126 log_msg(LOG_DEFAULT, LVL_ERROR, "Failed adding %s to category.", svc_name); 127 127 goto error; 128 128 } … … 142 142 143 143 sid = (service_id_t)IPC_GET_ARG1(*icall); 144 log_msg(L VL_DEBUG, "ethip_client_conn(%u)", (unsigned)sid);144 log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_client_conn(%u)", (unsigned)sid); 145 145 nic = ethip_nic_find_by_iplink_sid(sid); 146 146 if (nic == NULL) { 147 log_msg(L VL_WARN, "Uknown service ID.");147 log_msg(LOG_DEFAULT, LVL_WARN, "Uknown service ID."); 148 148 return; 149 149 } … … 154 154 static int ethip_open(iplink_srv_t *srv) 155 155 { 156 log_msg(L VL_DEBUG, "ethip_open()");156 log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_open()"); 157 157 return EOK; 158 158 } … … 160 160 static int ethip_close(iplink_srv_t *srv) 161 161 { 162 log_msg(L VL_DEBUG, "ethip_close()");162 log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_close()"); 163 163 return EOK; 164 164 } … … 173 173 int rc; 174 174 175 log_msg(L VL_DEBUG, "ethip_send()");175 log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_send()"); 176 176 177 177 rc = arp_translate(nic, &sdu->lsrc, &sdu->ldest, &dest_mac_addr); 178 178 if (rc != EOK) { 179 log_msg(L VL_WARN, "Failed to look up IP address 0x%" PRIx32,179 log_msg(LOG_DEFAULT, LVL_WARN, "Failed to look up IP address 0x%" PRIx32, 180 180 sdu->ldest.ipv4); 181 181 return rc; … … 200 200 int ethip_received(iplink_srv_t *srv, void *data, size_t size) 201 201 { 202 log_msg(L VL_DEBUG, "ethip_received(): srv=%p", srv);202 log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_received(): srv=%p", srv); 203 203 ethip_nic_t *nic = (ethip_nic_t *)srv->arg; 204 204 eth_frame_t frame; … … 206 206 int rc; 207 207 208 log_msg(L VL_DEBUG, "ethip_received()");209 210 log_msg(L VL_DEBUG, " - eth_pdu_decode");208 log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_received()"); 209 210 log_msg(LOG_DEFAULT, LVL_DEBUG, " - eth_pdu_decode"); 211 211 rc = eth_pdu_decode(data, size, &frame); 212 212 if (rc != EOK) { 213 log_msg(L VL_DEBUG, " - eth_pdu_decode failed");213 log_msg(LOG_DEFAULT, LVL_DEBUG, " - eth_pdu_decode failed"); 214 214 return rc; 215 215 } … … 220 220 break; 221 221 case ETYPE_IP: 222 log_msg(L VL_DEBUG, " - construct SDU");222 log_msg(LOG_DEFAULT, LVL_DEBUG, " - construct SDU"); 223 223 sdu.lsrc.ipv4 = (192 << 24) | (168 << 16) | (0 << 8) | 1; 224 224 sdu.ldest.ipv4 = (192 << 24) | (168 << 16) | (0 << 8) | 4; 225 225 sdu.data = frame.data; 226 226 sdu.size = frame.size; 227 log_msg(L VL_DEBUG, " - call iplink_ev_recv");227 log_msg(LOG_DEFAULT, LVL_DEBUG, " - call iplink_ev_recv"); 228 228 rc = iplink_ev_recv(&nic->iplink, &sdu); 229 229 break; 230 230 default: 231 log_msg(L VL_DEBUG, "Unknown ethertype 0x%" PRIx16,231 log_msg(LOG_DEFAULT, LVL_DEBUG, "Unknown ethertype 0x%" PRIx16, 232 232 frame.etype_len); 233 233 } … … 239 239 static int ethip_get_mtu(iplink_srv_t *srv, size_t *mtu) 240 240 { 241 log_msg(L VL_DEBUG, "ethip_get_mtu()");241 log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_get_mtu()"); 242 242 *mtu = 1500; 243 243 return EOK; … … 248 248 ethip_nic_t *nic = (ethip_nic_t *)srv->arg; 249 249 250 log_msg(L VL_DEBUG, "ethip_addr_add(0x%" PRIx32 ")", addr->ipv4);250 log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_addr_add(0x%" PRIx32 ")", addr->ipv4); 251 251 return ethip_nic_addr_add(nic, addr); 252 252 } … … 256 256 ethip_nic_t *nic = (ethip_nic_t *)srv->arg; 257 257 258 log_msg(L VL_DEBUG, "ethip_addr_remove(0x%" PRIx32 ")", addr->ipv4);258 log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_addr_remove(0x%" PRIx32 ")", addr->ipv4); 259 259 return ethip_nic_addr_add(nic, addr); 260 260 } -
uspace/srv/net/ethip/ethip_nic.c
r920d0fc ra1a101d 68 68 rc = loc_category_get_id("nic", &iplink_cat, IPC_FLAG_BLOCKING); 69 69 if (rc != EOK) { 70 log_msg(L VL_ERROR, "Failed resolving category 'nic'.");70 log_msg(LOG_DEFAULT, LVL_ERROR, "Failed resolving category 'nic'."); 71 71 fibril_mutex_unlock(ðip_discovery_lock); 72 72 return ENOENT; … … 75 75 rc = loc_category_get_svcs(iplink_cat, &svcs, &count); 76 76 if (rc != EOK) { 77 log_msg(L VL_ERROR, "Failed getting list of IP links.");77 log_msg(LOG_DEFAULT, LVL_ERROR, "Failed getting list of IP links."); 78 78 fibril_mutex_unlock(ðip_discovery_lock); 79 79 return EIO; … … 93 93 94 94 if (!already_known) { 95 log_msg(L VL_DEBUG, "Found NIC '%lu'",95 log_msg(LOG_DEFAULT, LVL_DEBUG, "Found NIC '%lu'", 96 96 (unsigned long) svcs[i]); 97 97 rc = ethip_nic_open(svcs[i]); 98 98 if (rc != EOK) 99 log_msg(L VL_ERROR, "Could not open NIC.");99 log_msg(LOG_DEFAULT, LVL_ERROR, "Could not open NIC."); 100 100 } 101 101 } … … 110 110 111 111 if (nic == NULL) { 112 log_msg(L VL_ERROR, "Failed allocating NIC structure. "112 log_msg(LOG_DEFAULT, LVL_ERROR, "Failed allocating NIC structure. " 113 113 "Out of memory."); 114 114 return NULL; … … 126 126 127 127 if (laddr == NULL) { 128 log_msg(L VL_ERROR, "Failed allocating NIC address structure. "128 log_msg(LOG_DEFAULT, LVL_ERROR, "Failed allocating NIC address structure. " 129 129 "Out of memory."); 130 130 return NULL; … … 153 153 nic_address_t nic_address; 154 154 155 log_msg(L VL_DEBUG, "ethip_nic_open()");155 log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_nic_open()"); 156 156 ethip_nic_t *nic = ethip_nic_new(); 157 157 if (nic == NULL) … … 160 160 int rc = loc_service_get_name(sid, &nic->svc_name); 161 161 if (rc != EOK) { 162 log_msg(L VL_ERROR, "Failed getting service name.");162 log_msg(LOG_DEFAULT, LVL_ERROR, "Failed getting service name."); 163 163 goto error; 164 164 } … … 166 166 nic->sess = loc_service_connect(EXCHANGE_SERIALIZE, sid, 0); 167 167 if (nic->sess == NULL) { 168 log_msg(L VL_ERROR, "Failed connecting '%s'", nic->svc_name);168 log_msg(LOG_DEFAULT, LVL_ERROR, "Failed connecting '%s'", nic->svc_name); 169 169 goto error; 170 170 } … … 174 174 rc = nic_callback_create(nic->sess, ethip_nic_cb_conn, nic); 175 175 if (rc != EOK) { 176 log_msg(L VL_ERROR, "Failed creating callback connection "176 log_msg(LOG_DEFAULT, LVL_ERROR, "Failed creating callback connection " 177 177 "from '%s'", nic->svc_name); 178 178 goto error; 179 179 } 180 180 181 log_msg(L VL_DEBUG, "Opened NIC '%s'", nic->svc_name);181 log_msg(LOG_DEFAULT, LVL_DEBUG, "Opened NIC '%s'", nic->svc_name); 182 182 list_append(&nic->nic_list, ðip_nic_list); 183 183 in_list = true; … … 189 189 rc = nic_get_address(nic->sess, &nic_address); 190 190 if (rc != EOK) { 191 log_msg(L VL_ERROR, "Error getting MAC address of NIC '%s'.",191 log_msg(LOG_DEFAULT, LVL_ERROR, "Error getting MAC address of NIC '%s'.", 192 192 nic->svc_name); 193 193 goto error; … … 198 198 rc = nic_set_state(nic->sess, NIC_STATE_ACTIVE); 199 199 if (rc != EOK) { 200 log_msg(L VL_ERROR, "Error activating NIC '%s'.",200 log_msg(LOG_DEFAULT, LVL_ERROR, "Error activating NIC '%s'.", 201 201 nic->svc_name); 202 202 goto error; 203 203 } 204 204 205 log_msg(L VL_DEBUG, "Initialized IP link service, MAC = 0x%" PRIx64,205 log_msg(LOG_DEFAULT, LVL_DEBUG, "Initialized IP link service, MAC = 0x%" PRIx64, 206 206 nic->mac_addr.addr); 207 207 … … 225 225 ipc_call_t *call) 226 226 { 227 log_msg(L VL_DEBUG, "ethip_nic_addr_changed()");227 log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_nic_addr_changed()"); 228 228 async_answer_0(callid, ENOTSUP); 229 229 } … … 236 236 size_t size; 237 237 238 log_msg(L VL_DEBUG, "ethip_nic_received() nic=%p", nic);238 log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_nic_received() nic=%p", nic); 239 239 240 240 rc = async_data_write_accept(&data, false, 0, 0, 0, &size); 241 241 if (rc != EOK) { 242 log_msg(L VL_DEBUG, "data_write_accept() failed");242 log_msg(LOG_DEFAULT, LVL_DEBUG, "data_write_accept() failed"); 243 243 return; 244 244 } 245 245 246 log_msg(L VL_DEBUG, "Ethernet PDU contents (%zu bytes)",246 log_msg(LOG_DEFAULT, LVL_DEBUG, "Ethernet PDU contents (%zu bytes)", 247 247 size); 248 248 249 log_msg(L VL_DEBUG, "call ethip_received");249 log_msg(LOG_DEFAULT, LVL_DEBUG, "call ethip_received"); 250 250 rc = ethip_received(&nic->iplink, data, size); 251 log_msg(L VL_DEBUG, "free data");251 log_msg(LOG_DEFAULT, LVL_DEBUG, "free data"); 252 252 free(data); 253 253 254 log_msg(L VL_DEBUG, "ethip_nic_received() done, rc=%d", rc);254 log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_nic_received() done, rc=%d", rc); 255 255 async_answer_0(callid, rc); 256 256 } … … 259 259 ipc_call_t *call) 260 260 { 261 log_msg(L VL_DEBUG, "ethip_nic_device_state()");261 log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_nic_device_state()"); 262 262 async_answer_0(callid, ENOTSUP); 263 263 } … … 267 267 ethip_nic_t *nic = (ethip_nic_t *)arg; 268 268 269 log_msg(L VL_DEBUG, "ethnip_nic_cb_conn()");269 log_msg(LOG_DEFAULT, LVL_DEBUG, "ethnip_nic_cb_conn()"); 270 270 271 271 while (true) { … … 298 298 int rc = loc_register_cat_change_cb(ethip_nic_cat_change_cb); 299 299 if (rc != EOK) { 300 log_msg(L VL_ERROR, "Failed registering callback for NIC "300 log_msg(LOG_DEFAULT, LVL_ERROR, "Failed registering callback for NIC " 301 301 "discovery (%d).", rc); 302 302 return rc; … … 308 308 ethip_nic_t *ethip_nic_find_by_iplink_sid(service_id_t iplink_sid) 309 309 { 310 log_msg(L VL_DEBUG, "ethip_nic_find_by_iplink_sid(%u)",310 log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_nic_find_by_iplink_sid(%u)", 311 311 (unsigned) iplink_sid); 312 312 313 313 list_foreach(ethip_nic_list, link) { 314 log_msg(L VL_DEBUG, "ethip_nic_find_by_iplink_sid - element");314 log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_nic_find_by_iplink_sid - element"); 315 315 ethip_nic_t *nic = list_get_instance(link, ethip_nic_t, 316 316 nic_list); 317 317 318 318 if (nic->iplink_sid == iplink_sid) { 319 log_msg(L VL_DEBUG, "ethip_nic_find_by_iplink_sid - found %p", nic);319 log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_nic_find_by_iplink_sid - found %p", nic); 320 320 return nic; 321 321 } 322 322 } 323 323 324 log_msg(L VL_DEBUG, "ethip_nic_find_by_iplink_sid - not found");324 log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_nic_find_by_iplink_sid - not found"); 325 325 return NULL; 326 326 } … … 329 329 { 330 330 int rc; 331 log_msg(L VL_DEBUG, "ethip_nic_send(size=%zu)", size);331 log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_nic_send(size=%zu)", size); 332 332 rc = nic_send_frame(nic->sess, data, size); 333 log_msg(L VL_DEBUG, "nic_send_frame -> %d", rc);333 log_msg(LOG_DEFAULT, LVL_DEBUG, "nic_send_frame -> %d", rc); 334 334 return rc; 335 335 } … … 339 339 ethip_link_addr_t *laddr; 340 340 341 log_msg(L VL_DEBUG, "ethip_nic_addr_add()");341 log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_nic_addr_add()"); 342 342 laddr = ethip_nic_addr_new(addr); 343 343 if (laddr == NULL) … … 352 352 ethip_link_addr_t *laddr; 353 353 354 log_msg(L VL_DEBUG, "ethip_nic_addr_remove()");354 log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_nic_addr_remove()"); 355 355 356 356 laddr = ethip_nic_addr_find(nic, addr); … … 366 366 iplink_srv_addr_t *addr) 367 367 { 368 log_msg(L VL_DEBUG, "ethip_nic_addr_find()");368 log_msg(LOG_DEFAULT, LVL_DEBUG, "ethip_nic_addr_find()"); 369 369 370 370 list_foreach(nic->addr_list, link) { -
uspace/srv/net/ethip/pdu.c
r920d0fc ra1a101d 69 69 frame->size); 70 70 71 log_msg(L VL_DEBUG, "Encoding Ethernet frame src=%llx dest=%llx etype=%x",71 log_msg(LOG_DEFAULT, LVL_DEBUG, "Encoding Ethernet frame src=%llx dest=%llx etype=%x", 72 72 frame->src, frame->dest, frame->etype_len); 73 log_msg(L VL_DEBUG, "Encoded Ethernet frame (%zu bytes)", size);73 log_msg(LOG_DEFAULT, LVL_DEBUG, "Encoded Ethernet frame (%zu bytes)", size); 74 74 75 75 *rdata = data; … … 83 83 eth_header_t *hdr; 84 84 85 log_msg(L VL_DEBUG, "eth_pdu_decode()");85 log_msg(LOG_DEFAULT, LVL_DEBUG, "eth_pdu_decode()"); 86 86 87 87 if (size < sizeof(eth_header_t)) { 88 log_msg(L VL_DEBUG, "PDU too short (%zu)", size);88 log_msg(LOG_DEFAULT, LVL_DEBUG, "PDU too short (%zu)", size); 89 89 return EINVAL; 90 90 } … … 104 104 frame->size); 105 105 106 log_msg(L VL_DEBUG, "Decoding Ethernet frame src=%llx dest=%llx etype=%x",106 log_msg(LOG_DEFAULT, LVL_DEBUG, "Decoding Ethernet frame src=%llx dest=%llx etype=%x", 107 107 frame->src, frame->dest, frame->etype_len); 108 log_msg(L VL_DEBUG, "Decoded Ethernet frame payload (%zu bytes)", frame->size);108 log_msg(LOG_DEFAULT, LVL_DEBUG, "Decoded Ethernet frame payload (%zu bytes)", frame->size); 109 109 110 110 return EOK; … … 143 143 uint16_t fopcode; 144 144 145 log_msg(L VL_DEBUG, "arp_pdu_encode()");145 log_msg(LOG_DEFAULT, LVL_DEBUG, "arp_pdu_encode()"); 146 146 147 147 size = sizeof(arp_eth_packet_fmt_t); … … 183 183 arp_eth_packet_fmt_t *pfmt; 184 184 185 log_msg(L VL_DEBUG, "arp_pdu_decode()");185 log_msg(LOG_DEFAULT, LVL_DEBUG, "arp_pdu_decode()"); 186 186 187 187 if (size < sizeof(arp_eth_packet_fmt_t)) { 188 log_msg(L VL_DEBUG, "ARP PDU too short (%zu)", size);188 log_msg(LOG_DEFAULT, LVL_DEBUG, "ARP PDU too short (%zu)", size); 189 189 return EINVAL; 190 190 } … … 193 193 194 194 if (uint16_t_be2host(pfmt->hw_addr_space) != AHRD_ETHERNET) { 195 log_msg(L VL_DEBUG, "HW address space != %u (%" PRIu16 ")",195 log_msg(LOG_DEFAULT, LVL_DEBUG, "HW address space != %u (%" PRIu16 ")", 196 196 AHRD_ETHERNET, uint16_t_be2host(pfmt->hw_addr_space)); 197 197 return EINVAL; … … 199 199 200 200 if (uint16_t_be2host(pfmt->proto_addr_space) != 0x0800) { 201 log_msg(L VL_DEBUG, "Proto address space != %u (%" PRIu16 ")",201 log_msg(LOG_DEFAULT, LVL_DEBUG, "Proto address space != %u (%" PRIu16 ")", 202 202 ETYPE_IP, uint16_t_be2host(pfmt->proto_addr_space)); 203 203 return EINVAL; … … 205 205 206 206 if (pfmt->hw_addr_size != ETH_ADDR_SIZE) { 207 log_msg(L VL_DEBUG, "HW address size != %zu (%zu)",207 log_msg(LOG_DEFAULT, LVL_DEBUG, "HW address size != %zu (%zu)", 208 208 (size_t)ETH_ADDR_SIZE, (size_t)pfmt->hw_addr_size); 209 209 return EINVAL; … … 211 211 212 212 if (pfmt->proto_addr_size != IPV4_ADDR_SIZE) { 213 log_msg(L VL_DEBUG, "Proto address size != %zu (%zu)",213 log_msg(LOG_DEFAULT, LVL_DEBUG, "Proto address size != %zu (%zu)", 214 214 (size_t)IPV4_ADDR_SIZE, (size_t)pfmt->proto_addr_size); 215 215 return EINVAL; … … 220 220 case AOP_REPLY: packet->opcode = aop_reply; break; 221 221 default: 222 log_msg(L VL_DEBUG, "Invalid ARP opcode (%" PRIu16 ")",222 log_msg(LOG_DEFAULT, LVL_DEBUG, "Invalid ARP opcode (%" PRIu16 ")", 223 223 uint16_t_be2host(pfmt->opcode)); 224 224 return EINVAL; … … 231 231 packet->target_proto_addr.ipv4 = 232 232 uint32_t_be2host(pfmt->target_proto_addr); 233 log_msg(L VL_DEBUG, "packet->tpa = %x\n", pfmt->target_proto_addr);233 log_msg(LOG_DEFAULT, LVL_DEBUG, "packet->tpa = %x\n", pfmt->target_proto_addr); 234 234 235 235 return EOK;
Note:
See TracChangeset
for help on using the changeset viewer.
