diff --git a/Usermode/Applications/dhcpclient_src/main.c b/Usermode/Applications/dhcpclient_src/main.c
index afe7bf7e3d161bf65c5c56fccc14f951c63be8fe..d6f4cda0565ecaa2a1cbe04f30282162024bb990 100644
--- a/Usermode/Applications/dhcpclient_src/main.c
+++ b/Usermode/Applications/dhcpclient_src/main.c
@@ -333,7 +333,8 @@ void Send_DHCPREQUEST(tInterface *Iface, void *OfferPacket, int TypeOffset)
 	 int	i;
 	msg = (void*) ((char*)OfferPacket) + 8;
 
-	if( msg->xid != Iface->TransactionID ) {
+	if( msg->xid != htonl(Iface->TransactionID) ) {
+		_SysDebug("DHCPREQUEST: Transaction ID mismatch");
 		return ;
 	}
 
@@ -505,7 +506,9 @@ void Update_State(tInterface *Iface, int newState)
 		// TODO: Exponential backoff
 		Iface->Timeout = _SysTimestamp() + 3000;
 		Iface->nTimeouts ++;
-		_SysDebug("State %i repeated, timeout is 3000ms now", newState);
+		_SysDebug("%s: State %i repeated, timeout is 3000ms now",
+			Iface->Adapter,
+			newState);
 	}
 }