From 52abace67922a1da7c99334a2352817721fb1f42 Mon Sep 17 00:00:00 2001 From: Jeffrey Altman Date: Fri, 2 Apr 2004 07:56:24 +0000 Subject: [PATCH] windows-server-config-20040402 Corrections to the libadmin interface for the Windows Server Configurator ==================== This delta was composed from multiple commits as part of the CVS->Git migration. The checkin message with each commit was inconsistent. The following are the additional commit messages. ==================== Use lanahelper.lib for the server configurator as well --- src/WINNT/afssvrcfg/NTMakefile | 4 ++-- src/WINNT/afssvrcfg/afscfg.cpp | 33 +++++++++------------------------ src/libadmin/cfg/cfgdb.c | 8 +++++--- src/libadmin/cfg/cfghost.c | 2 +- src/libadmin/cfg/cfginternal.c | 31 +++++++++++++++++++++++-------- src/libadmin/cfg/cfgservers.c | 11 +++++++---- src/libadmin/pts/afs_ptsAdmin.c | 2 +- 7 files changed, 48 insertions(+), 43 deletions(-) diff --git a/src/WINNT/afssvrcfg/NTMakefile b/src/WINNT/afssvrcfg/NTMakefile index b8f2c8c07..257130f24 100644 --- a/src/WINNT/afssvrcfg/NTMakefile +++ b/src/WINNT/afssvrcfg/NTMakefile @@ -58,8 +58,8 @@ EXELIBS =\ $(DESTDIR)\lib\afs\afsbosadmin.lib \ $(DESTDIR)\lib\afs\afsvosadmin.lib \ $(DESTDIR)\lib\afs\afsclientadmin.lib \ - $(DESTDIR)\lib\afs\afsadminutil.lib - + $(DESTDIR)\lib\afs\afsadminutil.lib \ + $(DESTDIR)\lib\lanahelper.lib $(EXEFILE): $(EXEOBJS) $(EXELIBS) $(EXEGUILINK) $(VCLIBS) diff --git a/src/WINNT/afssvrcfg/afscfg.cpp b/src/WINNT/afssvrcfg/afscfg.cpp index f3742564f..511a43543 100644 --- a/src/WINNT/afssvrcfg/afscfg.cpp +++ b/src/WINNT/afssvrcfg/afscfg.cpp @@ -27,6 +27,7 @@ extern "C" { #include #include } +#include /* @@ -259,19 +260,10 @@ LPTSTR GetSalvageLogFileName() { return g_CfgData.szSalvageLogFileName; } LPTSTR GetClientNetbiosName() { - static TCHAR szValue[MAX_MACHINE_NAME_LEN + 1]; + static TCHAR szValue[MAX_MACHINE_NAME_LEN + 1] = ""; - lstrcpy(szValue, g_CfgData.szLocalName); - - szValue[11] = TEXT('\0'); - - for (LPTSTR pch = szValue; *pch != TEXT('\0'); pch++) { - if (*pch == TEXT('.')) { - *pch = TEXT('\0'); - break; - } - } - lstrcat(szValue, TEXT("-AFS")); + if ( szValue[0] == 0 ) + CopyAnsiToString(GetClientNetbiosNameA(), szValue); return szValue; } @@ -389,19 +381,12 @@ char *GetClientCellNameA() char *GetClientNetbiosNameA() { - static char szValueA[MAX_MACHINE_NAME_LEN + 1]; - char *dotp; - - CopyStringToAnsi(szValueA, g_CfgData.szLocalName); - - szValueA[11] = '\0'; - - if ((dotp = strchr(szValueA, '.')) != NULL) { - *dotp = '\0'; - } - strcat(szValueA, "-AFS"); + static char szValueA[MAX_MACHINE_NAME_LEN + 1]=""; + + if ( szValueA[0] == 0 ) + lana_GetNetbiosName(szValueA, LANA_NETBIOS_NAME_FULL); - return szValueA; + return szValueA; } char *GetSalvageLogFileNameA() diff --git a/src/libadmin/cfg/cfgdb.c b/src/libadmin/cfg/cfgdb.c index 81c4152fd..9f3f084e8 100644 --- a/src/libadmin/cfg/cfgdb.c +++ b/src/libadmin/cfg/cfgdb.c @@ -316,6 +316,7 @@ cfg_CellServDbEnumerate(const char *fsDbHost, /* fileserver or database host */ if (*cellName == NULL) { free(*cellDbHosts); + *cellDbHosts = NULL; tst = ADMNOMEM; } else { strcpy(*cellName, dbhostCell); @@ -347,7 +348,8 @@ int ADMINAPI cfg_CellServDbStatusDeallocate(cfg_cellServDbStatus_t * statusItempP, afs_status_p st) { - free((void *)statusItempP); + if ( statusItempP ) + free((void *)statusItempP); if (st != NULL) { *st = 0; @@ -427,7 +429,7 @@ CellServDbUpdate(int updateOp, void *hostHandle, const char *sysControlHost, */ if (tst == 0) { - cfg_csdb_update_ctrl_t *ctrlBlockp; + cfg_csdb_update_ctrl_t *ctrlBlockp = NULL; *maxUpdates = 0; @@ -494,7 +496,7 @@ CellServDbUpdate(int updateOp, void *hostHandle, const char *sysControlHost, &tst2)) { tst = tst2; } else { - cfg_csdb_update_name_t *nameBlockp; + cfg_csdb_update_name_t *nameBlockp = NULL; short nameBlockDone = 0; while (!nameBlockDone) { diff --git a/src/libadmin/cfg/cfghost.c b/src/libadmin/cfg/cfghost.c index cecff9b4d..610e58e74 100644 --- a/src/libadmin/cfg/cfghost.c +++ b/src/libadmin/cfg/cfghost.c @@ -961,7 +961,7 @@ cfg_HostPartitionTableEnumerate(void *hostHandle, /* host config handle */ free(metaTablep); } } else { - free(metaTablep); + free(metaTablep); } } } diff --git a/src/libadmin/cfg/cfginternal.c b/src/libadmin/cfg/cfginternal.c index b417a3607..aad5d62b6 100644 --- a/src/libadmin/cfg/cfginternal.c +++ b/src/libadmin/cfg/cfginternal.c @@ -241,7 +241,7 @@ cfgutil_HostNameIsAlias(const char *hostName1, const char *hostName2, int rc = 1; afs_status_t tst2, tst = 0; int addrCount1, addrCount2; - afs_int32 *addrList1, *addrList2; + afs_int32 *addrList1 = NULL, *addrList2 = NULL; /* get all addrs for first host */ @@ -256,7 +256,10 @@ cfgutil_HostNameIsAlias(const char *hostName1, const char *hostName2, if (!cfgutil_HostAddressFetchAll (hostName2, &addrCount2, &addrList2, &tst2)) { tst = tst2; - free(addrList1); + if (addrList1) { + free(addrList1); + addrList1 = NULL; + } } } @@ -275,8 +278,14 @@ cfgutil_HostNameIsAlias(const char *hostName1, const char *hostName2, } } } - free(addrList1); - free(addrList2); + if (addrList1) { + free(addrList1); + addrList1 = NULL; + } + if (addrList2) { + free(addrList2); + addrList2 = NULL; + } } if (tst != 0) { @@ -419,7 +428,7 @@ cfgutil_HostNameGetAddressString(const char *hostName, const char **hostAddr, int rc = 1; afs_status_t tst2, tst = 0; int addrCount; - afs_int32 *addrList; + afs_int32 *addrList = NULL; /* get address list for host */ @@ -440,7 +449,10 @@ cfgutil_HostNameGetAddressString(const char *hostName, const char **hostAddr, } else { *hostAddr = inaString; } - free(addrList); + if (addrList) { + free(addrList); + addrList = NULL; + } } if (tst != 0) { @@ -531,7 +543,7 @@ cfgutil_HostAddressIsValid(const char *hostName, int hostAddr, short *isValid, int rc = 1; afs_status_t tst2, tst = 0; int addrCount; - afs_int32 *addrList; + afs_int32 *addrList = NULL; *isValid = 0; @@ -552,7 +564,10 @@ cfgutil_HostAddressIsValid(const char *hostName, int hostAddr, short *isValid, break; } } - free(addrList); + if (addrList) { + free(addrList); + addrList = NULL; + } } if (tst != 0) { diff --git a/src/libadmin/cfg/cfgservers.c b/src/libadmin/cfg/cfgservers.c index 070dadc73..723feb178 100644 --- a/src/libadmin/cfg/cfgservers.c +++ b/src/libadmin/cfg/cfgservers.c @@ -1038,7 +1038,7 @@ cfg_FileServerStop(void *hostHandle, /* host config handle */ } else { /* file server instance deleted; remove its addresses from VLDB */ int addrCount, i; - afs_int32 *addrList; + afs_int32 *addrList = NULL; /* note: ignore any errors since address removal is optional; * e.g., a common source of errors will be attempting to remove @@ -1052,7 +1052,10 @@ cfg_FileServerStop(void *hostHandle, /* host config handle */ NULL, addrList[i], &tst2); } - free(addrList); + if (addrList) { + free(addrList); + addrList = NULL; + } } } } @@ -1207,7 +1210,7 @@ cfg_UpdateServerStart(void *hostHandle, /* host config handle */ } if (args != NULL && args != argsBuf) { - free(args); + free(args); } } } @@ -1471,7 +1474,7 @@ cfg_UpdateClientStart(void *hostHandle, /* host config handle */ } if (args != argsBuf) { - free(args); + free(args); } } } diff --git a/src/libadmin/pts/afs_ptsAdmin.c b/src/libadmin/pts/afs_ptsAdmin.c index 4acef0bf7..02b5a7075 100644 --- a/src/libadmin/pts/afs_ptsAdmin.c +++ b/src/libadmin/pts/afs_ptsAdmin.c @@ -388,7 +388,7 @@ pts_GroupMemberAdd(const void *cellHandle, const char *userName, int rc = 0; afs_status_t tst = 0; afs_cell_handle_p c_handle = (afs_cell_handle_p) cellHandle; - idlist ids; + idlist ids = {0,0}; /* * Validate arguments -- 2.39.5