コード例 #1
0
ファイル: passwdfile.c プロジェクト: tcbabu/lina
void CleanUsersInfo(LINACONFIG *lc) {
   USERINFO *Usr;
   if(lc->Ulist==NULL) return;
   Resetlink(lc->Ulist);
   while ((Usr=(USERINFO *)Getrecord(lc->Ulist))!= NULL) {
      FreeUserInfo(Usr);
   }
   Dempty(lc->Ulist);
   lc->Ulist=NULL;
}
コード例 #2
0
/*
 * ValidateForInvalidParams
 * 
 * Function validates the API for Invalid function parameters.
 * 
 */
static
DWORD 
ValidateForInvalidParams(
    HANDLE hLsaConnection,
    PTESTDATA pTestData
    )
{
    DWORD dwError = LW_ERROR_SUCCESS;
    DWORD dwLocalError = LW_ERROR_SUCCESS;
    DWORD dwTest = 0;
    CHAR  szTestMsg[256] = { 0 };
    PLWTFAILDATA pInvalidData = NULL;
    PVOID pUserInfo = NULL;
    PCSTR pszTestAPIs = "LsaFindUserByName";
    PCSTR pszTestDescription = 
            "API returns invalid parameter error for invalid function parameters";

    if ( !pTestData || !pTestData->pInvalidDataIface )
    {
        dwLocalError = LW_ERROR_TEST_SKIPPED;
        BAIL_ON_TEST_BROKE(dwLocalError);
    }

    for ( dwTest = 0; dwTest < pTestData->dwNumInvalidDataSet; dwTest++ )
    {
        dwLocalError = GetInvalidDataRecord( pTestData, 
                                             dwTest, 
                                             &pInvalidData);
        BAIL_ON_TEST_BROKE(dwLocalError);

        if ( LWTUSER_INVALID == pInvalidData->Field )
        {
            dwLocalError = LsaFindUserByName(
                                hLsaConnection,
                                pInvalidData->pszUserName,
                                pInvalidData->dwLevel,
                                &pUserInfo
                                );

            if ( dwLocalError != pInvalidData->dwErrorCode )
            {
                dwError = LW_ERROR_TEST_FAILED;
                snprintf( szTestMsg, 
                          sizeof(szTestMsg), 
                          "API returned with error code (%lu) for invalid user name parameter",
                          (unsigned long)dwLocalError);
                LWT_LOG_TEST(szTestMsg);
            }

            FreeUserInfo(pInvalidData->dwLevel, pUserInfo);
        }

        if ( LWTUSERINFOLEVEL_INVALID == pInvalidData->Field )
        {
            dwLocalError = LsaFindUserByName(
                                hLsaConnection,
                                pInvalidData->pszUserName,
                                pInvalidData->dwLevel,
                                &pUserInfo
                                );

            if ( dwLocalError != pInvalidData->dwErrorCode )
            {
                dwError = LW_ERROR_TEST_FAILED;
                snprintf( szTestMsg, 
                          sizeof(szTestMsg), 
                          "API returned with error code (%lu) for invalid user name parameter",
                          (unsigned long)dwLocalError);
                LWT_LOG_TEST(szTestMsg);
            }

            FreeUserInfo(pInvalidData->dwLevel, pUserInfo);
        }

        FreeInvalidDataRecord(pInvalidData);
    }

error:
    return dwError;
}