[haiku-commits] r37938 - in haiku/trunk/src/add-ons/kernel/network: datalink_protocols/arp protocols/ipv4

  • From: axeld@xxxxxxxxxxxxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Fri, 6 Aug 2010 13:13:01 +0200 (CEST)

Author: axeld
Date: 2010-08-06 13:13:00 +0200 (Fri, 06 Aug 2010)
New Revision: 37938
Changeset: http://dev.haiku-os.org/changeset/37938

Modified:
   haiku/trunk/src/add-ons/kernel/network/datalink_protocols/arp/arp.cpp
   haiku/trunk/src/add-ons/kernel/network/protocols/ipv4/ipv4.cpp
Log:
* Further improved debug output.


Modified: haiku/trunk/src/add-ons/kernel/network/datalink_protocols/arp/arp.cpp
===================================================================
--- haiku/trunk/src/add-ons/kernel/network/datalink_protocols/arp/arp.cpp       
2010-08-06 09:59:55 UTC (rev 37937)
+++ haiku/trunk/src/add-ons/kernel/network/datalink_protocols/arp/arp.cpp       
2010-08-06 11:13:00 UTC (rev 37938)
@@ -386,6 +386,9 @@
        uint32 flags, arp_entry **_entry = NULL)
 {
        ASSERT_LOCKED_MUTEX(&sCacheLock);
+       TRACE(("%s(%s, %s, flags 0x%" B_PRIx32 ")\n", __FUNCTION__,
+               inet_to_string(protocolAddress), 
mac_to_string(LLADDR(hardwareAddress)),
+               flags));
 
        arp_entry *entry = arp_entry::Lookup(protocolAddress);
        if (entry != NULL) {
@@ -398,11 +401,10 @@
                        && entry->hardware_address.sdl_alen != 0
                        && memcmp(LLADDR(&entry->hardware_address),
                                LLADDR(hardwareAddress), ETHER_ADDRESS_LENGTH)) 
{
+                       uint8* data = LLADDR(hardwareAddress);
                        dprintf("ARP host %08x updated with different hardware 
address "
                                "%02x:%02x:%02x:%02x:%02x:%02x.\n", 
protocolAddress,
-                               hardwareAddress->sdl_data[0], 
hardwareAddress->sdl_data[1],
-                               hardwareAddress->sdl_data[2], 
hardwareAddress->sdl_data[3],
-                               hardwareAddress->sdl_data[4], 
hardwareAddress->sdl_data[5]);
+                               data[0], data[1], data[2], data[3], data[4], 
data[5]);
                        return B_ERROR;
                }
 
@@ -1061,7 +1063,12 @@
                        memcpy(buffer->destination, &entry->hardware_address,
                                entry->hardware_address.sdl_len);
                }
+               // the broadcast address is set in the ethernet frame module
        }
+       TRACE(("%s(%p): from %s\n", __FUNCTION__, buffer,
+               mac_to_string(LLADDR((sockaddr_dl*)buffer->source))));
+       TRACE(("  to %s\n",
+               mac_to_string(LLADDR((sockaddr_dl*)buffer->destination))));
 
        return protocol->next->module->send_data(protocol->next, buffer);
 }

Modified: haiku/trunk/src/add-ons/kernel/network/protocols/ipv4/ipv4.cpp
===================================================================
--- haiku/trunk/src/add-ons/kernel/network/protocols/ipv4/ipv4.cpp      
2010-08-06 09:59:55 UTC (rev 37937)
+++ haiku/trunk/src/add-ons/kernel/network/protocols/ipv4/ipv4.cpp      
2010-08-06 11:13:00 UTC (rev 37938)
@@ -1691,8 +1691,8 @@
 status_t
 ipv4_error_received(net_error error, net_buffer* buffer)
 {
-       TRACE("  ipv4_error_received(code %" B_PRIx32 ", buffer %p [%zu 
bytes])",
-               error, buffer, buffer->size);
+       TRACE("  ipv4_error_received(error %d, buffer %p [%zu bytes])", 
(int)error,
+               buffer, buffer->size);
 
        NetBufferHeaderReader<ipv4_header> bufferHeader(buffer);
        if (bufferHeader.Status() != B_OK)


Other related posts:

  • » [haiku-commits] r37938 - in haiku/trunk/src/add-ons/kernel/network: datalink_protocols/arp protocols/ipv4 - axeld