From c319a3c9bb320695d3fac463187549ecef8d9654 Mon Sep 17 00:00:00 2001 From: Cameron Gutman Date: Sat, 8 Aug 2009 03:18:41 +0000 Subject: [PATCH] - Stop trying to find more adapters if it failed to avoid spamming the debug log - Should fix buildbot test 2nd stage svn path=/trunk/; revision=42491 --- reactos/base/services/dhcp/adapter.c | 9 +++++++-- reactos/base/services/dhcp/dispatch.c | 5 ++++- reactos/base/services/dhcp/include/rosdhcp.h | 3 ++- 3 files changed, 13 insertions(+), 4 deletions(-) diff --git a/reactos/base/services/dhcp/adapter.c b/reactos/base/services/dhcp/adapter.c index 4394733aebc..4de0d5d9761 100644 --- a/reactos/base/services/dhcp/adapter.c +++ b/reactos/base/services/dhcp/adapter.c @@ -229,12 +229,13 @@ InterfaceConnected(MIB_IFROW IfEntry) /* * XXX Figure out the way to bind a specific adapter to a socket. */ -void AdapterDiscover() { +BOOLEAN AdapterDiscover() { PMIB_IFTABLE Table = (PMIB_IFTABLE) malloc(sizeof(MIB_IFTABLE)); DWORD Error, Size = sizeof(MIB_IFTABLE); PDHCP_ADAPTER Adapter = NULL; struct interface_info *ifi = NULL; int i; + BOOLEAN ret = TRUE; DH_DbgPrint(MID_TRACE,("Getting Adapter List...\n")); @@ -245,7 +246,10 @@ void AdapterDiscover() { Table = (PMIB_IFTABLE) malloc( Size ); } - if( Error != NO_ERROR ) goto term; + if( Error != NO_ERROR ) { + ret = FALSE; + goto term; + } DH_DbgPrint(MID_TRACE,("Got Adapter List (%d entries)\n", Table->dwNumEntries)); @@ -335,6 +339,7 @@ void AdapterDiscover() { term: if( Table ) free( Table ); + return ret; } void AdapterStop() { diff --git a/reactos/base/services/dhcp/dispatch.c b/reactos/base/services/dhcp/dispatch.c index 3839c20bdfb..76ac90e9ca0 100644 --- a/reactos/base/services/dhcp/dispatch.c +++ b/reactos/base/services/dhcp/dispatch.c @@ -77,7 +77,10 @@ dispatch(void) * a timeout registered, time out the select call then. */ another: - AdapterDiscover(); + if (!AdapterDiscover()) { + AdapterStop(); + break; + } for (l = protocols, nfds = 0; l; l = l->next) nfds++; diff --git a/reactos/base/services/dhcp/include/rosdhcp.h b/reactos/base/services/dhcp/include/rosdhcp.h index ce24ae8edb4..159a5adfa82 100644 --- a/reactos/base/services/dhcp/include/rosdhcp.h +++ b/reactos/base/services/dhcp/include/rosdhcp.h @@ -73,7 +73,8 @@ typedef DWORD (*PipeSendFunc)( COMM_DHCP_REPLY *Reply ); #define srandom srand void AdapterInit(VOID); -void AdapterDiscover(VOID); +BOOLEAN AdapterDiscover(VOID); +void AdapterStop(VOID); HANDLE PipeInit(VOID); extern PDHCP_ADAPTER AdapterGetFirst(); extern PDHCP_ADAPTER AdapterGetNext(PDHCP_ADAPTER); -- 2.17.1