windows-afs-svrmgr-20070719
[openafs.git] / src / WINNT / afsclass / c_svr.cpp
index 65387d0..2cad619 100644 (file)
@@ -1,3 +1,15 @@
+/*
+ * Copyright 2000, International Business Machines Corporation and others.
+ * All Rights Reserved.
+ * 
+ * This software has been released under the terms of the IBM Public
+ * License.  For details, see the LICENSE file in the top-level source
+ * directory or online at http://www.openafs.org/dl/license10.html
+ */
+
+#include <winsock2.h>
+#include <ws2tcpip.h>
+
 extern "C" {
 #include <afs/param.h>
 #include <afs/stds.h>
@@ -80,6 +92,7 @@ SERVER::SERVER (LPCELL lpCellParent, LPTSTR pszName)
    m_fDelete = FALSE;
    m_lastStatus = 0;
 
+   m_fVLDBOutOfDate = FALSE; /* FIXME: added because it was missing */
    m_fStatusOutOfDate = TRUE;
    memset (&m_ss, 0x00, sizeof(SERVERSTATUS));
 }
@@ -148,7 +161,8 @@ void SERVER::FreeServices (void)
 
 void SERVER::SendDeleteNotifications (void)
 {
-   for (LPENUM pEnum = m_lAggregates->FindFirst(); pEnum; pEnum = pEnum->FindNext())
+   LPENUM pEnum;
+   for (pEnum = m_lAggregates->FindFirst(); pEnum; pEnum = pEnum->FindNext())
       {
       LPAGGREGATE lpAggregate = (LPAGGREGATE)(pEnum->GetObject());
       lpAggregate->SendDeleteNotifications ();
@@ -362,7 +376,8 @@ BOOL SERVER::RefreshAggregates (BOOL fNotify, ULONG *pStatus)
          // First thing is to forget about what aggregates we think we have
          // now.
          //
-         for (LPENUM pEnum = m_lAggregates->FindLast(); pEnum; pEnum = pEnum->FindPrevious())
+         LPENUM pEnum;
+         for (pEnum = m_lAggregates->FindLast(); pEnum; pEnum = pEnum->FindPrevious())
             {
             LPAGGREGATE lpAggregate = (LPAGGREGATE)(pEnum->GetObject());
             lpAggregate->SendDeleteNotifications();
@@ -455,7 +470,8 @@ BOOL SERVER::RefreshServices (BOOL fNotify, ULONG *pStatus)
 
          // First thing is to forget about what services we think we have now.
          //
-         for (LPENUM pEnum = m_lServices->FindLast(); pEnum; pEnum = pEnum->FindPrevious())
+         LPENUM pEnum;
+         for (pEnum = m_lServices->FindLast(); pEnum; pEnum = pEnum->FindPrevious())
             {
             LPSERVICE lpService = (LPSERVICE)(pEnum->GetObject());
             lpService->SendDeleteNotifications();
@@ -747,7 +763,7 @@ void AfsClass_SkipRefresh (int idSection)
 
 DWORD WINAPI SERVER::CanTalkToServer_ThreadProc (PVOID lp)
 {
-   int idSection = (int)lp;
+   int idSection = PtrToInt(lp);
 
    // Until we post a notification saying that we've entered
    // a section, we don't need to worry about the aRefSec[] entry
@@ -770,8 +786,8 @@ DWORD WINAPI SERVER::CanTalkToServer_ThreadProc (PVOID lp)
    // the lpServer pointer won't have been freed.)
    // 
    PVOID hCell;
-   PVOID hBOS;
-   PVOID hVOS;
+   PVOID hBOS = NULL;
+   PVOID hVOS = NULL;
 
    TCHAR szServer[ cchNAME ];
 
@@ -929,7 +945,8 @@ BOOL SERVER::CanTalkToServer (ULONG *pStatus)
    AfsClass_InitRefreshSections();
    EnterCriticalSection (pcsRefSec);
 
-   for (int idSection = 0; idSection < (int)cRefSec; ++idSection)
+   int idSection;
+   for (idSection = 0; idSection < (int)cRefSec; ++idSection)
       {
       if (!aRefSec[ idSection ].fInUse)
          break;
@@ -970,7 +987,7 @@ BOOL SERVER::CanTalkToServer (ULONG *pStatus)
    //
    DWORD dwThreadID;
    HANDLE hThread;
-   if ((hThread = CreateThread (NULL, 0, (LPTHREAD_START_ROUTINE)CanTalkToServer_ThreadProc, (PVOID)idSection, 0, &dwThreadID)) == NULL)
+   if ((hThread = CreateThread (NULL, 0, (LPTHREAD_START_ROUTINE)CanTalkToServer_ThreadProc, IntToPtr(idSection), 0, &dwThreadID)) == NULL)
       {
       EnterCriticalSection (pcsRefSec);
       aRefSec[ idSection ].fInUse = FALSE;
@@ -984,7 +1001,8 @@ BOOL SERVER::CanTalkToServer (ULONG *pStatus)
    // Wait for that thread to terminate, or for our
    // newly-allocated RefSec entry to be marked Canceled.
    //
-   for (DWORD dw = STILL_ACTIVE; dw == STILL_ACTIVE; )
+   DWORD dw;
+   for (dw = STILL_ACTIVE; dw == STILL_ACTIVE; )
       {
       EnterCriticalSection (pcsRefSec);
 
@@ -1062,7 +1080,8 @@ BOOL SERVER::RefreshAll (ULONG *pStatus, double dInit, double dFactor)
             size_t nAggregates = 0;
             size_t iAggregate = 0;
             HENUM hEnum;
-            for (LPAGGREGATE lpAggregate = AggregateFindFirst (&hEnum); lpAggregate; lpAggregate = AggregateFindNext (&hEnum))
+            LPAGGREGATE lpAggregate;
+            for (lpAggregate = AggregateFindFirst (&hEnum); lpAggregate; lpAggregate = AggregateFindNext (&hEnum))
                {
                ++nAggregates;
                lpAggregate->Close();
@@ -1093,7 +1112,8 @@ BOOL SERVER::RefreshAll (ULONG *pStatus, double dInit, double dFactor)
             size_t nServices = 0;
             size_t iService = 0;
             HENUM hEnum;
-            for (LPSERVICE lpService = ServiceFindFirst (&hEnum); lpService; lpService = ServiceFindNext (&hEnum))
+            LPSERVICE lpService;
+            for (lpService = ServiceFindFirst (&hEnum); lpService; lpService = ServiceFindNext (&hEnum))
                {
                ++nServices;
                lpService->Close();