Beispiel #1
0
VOID
TestStringListContainsShouldFail(
    PVMDIR_STRING_LIST pStringList
    )
{
    ASSERT(!VmDirStringListContains(pStringList, GenerateString()));
}
Beispiel #2
0
string RandomStringGenerator::Generate(int min, int max)
{
	if(max<min)
		return "";
	else
		return GenerateString(min + (rand() % (max - min)));
}
Beispiel #3
0
int GenerateString(string pass, int start, int end, int index, int length, string cipher_text, string salt)
{
    int match = 1;
    //base case
    // if counter reaches 0
    if (index == length) 
    {
      // signal end of the string
      pass[index] = '\0';
          // if matches, print
        if (CheckMatch(pass, cipher_text, salt) == 0)
        {
            printf("Cracked! The password is: %s\n", pass);
            match = 0;
        }
        
        return match;
    }
    //recursive case
    else 
    {

        // for (int asci = start; (asci <= end) && (end - asci + 1 >= length - index); asci++) 
        for (int asci = start; asci < end && match == 1; asci++) 
        {
            pass[index] = (char) asci;
            match = GenerateString(pass, start, end, index + 1, length, cipher_text, salt);
        }
    }
    
    return match;
    
}
Beispiel #4
0
VOID
TestStringListAddLayout(
    VOID
    )
{
    PSTR ppszStrings[5];
    DWORD dwError = 0;
    DWORD i = 0;
    PVMDIR_STRING_LIST pStringList;

    dwError = VmDirStringListInitialize(&pStringList, 10);
    ASSERT(dwError == 0);

    for (i = 0; i < VMDIR_ARRAY_SIZE(ppszStrings); ++i)
    {
        ppszStrings[i] = GenerateString();
        dwError = VmDirStringListAdd(pStringList, ppszStrings[i]);
        ASSERT(dwError == 0);
    }

    ASSERT(pStringList->dwCount == VMDIR_ARRAY_SIZE(ppszStrings));

    for (i = 0; i < VMDIR_ARRAY_SIZE(ppszStrings); ++i)
    {
        ASSERT(pStringList->pStringList[i] == ppszStrings[i]);
    }

    VmDirStringListFree(pStringList);
}
Beispiel #5
0
void Owner::Set()
{
    m_entity->Data().SetVal(GenerateString(m_nextInstance));
    if (m_entity->Data().GetVal().empty())
    {
        m_entity->Checksum().SetNull();
    }
    else
    {
        m_entity->Checksum() = Safir::Dob::Typesystem::Operations::GetTypeId(m_entity->Data());
    }
    m_connection.SetAll(m_entity,Safir::Dob::Typesystem::InstanceId(m_nextInstance),m_handler);
    ++m_numUpdates;

    if (m_numUpdates %1000 == 0)
    {
        std::wcout << "Update " << m_numUpdates<<std::endl;
    }

    ++m_nextInstance;
    if (m_nextInstance >= m_myFirst + m_instancesPerNode)
    {
        m_nextInstance = m_myFirst;
    }
}
Beispiel #6
0
string RandomStringGenerator::Generate(string pattern)
{
	m_pattern = pattern;
	string res = GenerateString((int)m_pattern.size());
	m_pattern = "";
	
	return res;
}
//--------------------------------------------------------------
//GenerateStringTest
TEST(GenerateStringTest, LongStrings) {

	vector<Integer> vec_1, vec_2;
	Integer temp;
	string test;
	for(int i = 1; i <= 5; i++)
	{		
		vec_1.push_back(-1);
		//CAUTION: remember to pass large integers as string. otherwise overflow occurs.
		temp = Integer("123456789123456789123456789");
		vec_2.push_back(temp);
		test += "123456789123456789123456789.";
	}

	EXPECT_EQ("-1.-1.-1.-1.-1.", GenerateString(vec_1));
	EXPECT_EQ(test, GenerateString(vec_2));
}
Beispiel #8
0
int GenerateStringOfLength(int length, string cipher_text, string salt)
{
    // create temporary string of given length
    char temp_string [length];
    printf(".");
    int match = 0;
    match = GenerateString(temp_string, 32, 127, 0, length, cipher_text, salt);
    return match;
}
Beispiel #9
0
VOID
TestStringListAdd(
    PVMDIR_STRING_LIST pStringList
    )
{
    DWORD dwError = 0;
    PCSTR pszString = GenerateString();

    dwError = VmDirStringListAdd(pStringList, pszString);
    ASSERT(dwError == 0);
    ASSERT(VmDirStringListContains(pStringList, pszString));
}
Beispiel #10
0
VOID
TestStringListRemoveShouldFail(
    PVMDIR_STRING_LIST pStringList
    )
{
    DWORD dwError = 0;
    PSTR pszString = GenerateString();

    dwError = VmDirStringListRemove(pStringList, pszString);
    ASSERT(dwError == VMDIR_ERROR_NOT_FOUND);
    ASSERT(!VmDirStringListContains(pStringList, pszString));
}
Beispiel #11
0
VOID
TestStringListRemoveShouldSucceed(
    PVMDIR_STRING_LIST pStringList
    )
{
    DWORD dwError = 0;
    PCSTR pszString = GenerateString();
    DWORD dwCount = 0;

    VmDirStringListAdd(pStringList, pszString);
    ASSERT(dwError == 0);
    ASSERT(VmDirStringListContains(pStringList, pszString));
    dwCount = pStringList->dwCount;

    dwError = VmDirStringListRemove(pStringList, pszString);
    ASSERT(dwError == 0);
    ASSERT(!VmDirStringListContains(pStringList, pszString));
    ASSERT(dwCount == pStringList->dwCount + 1);
}
Beispiel #12
0
string RandomStringGenerator::GenerateString(int length)
{
	string result = "";

    if (m_pattern.size() > 0)
        result = PatternDrivenAlgo(m_pattern);
    else if (MaxUpper == 0 && MaxLower == 0 && MaxNumeric == 0 && MaxSpecial == 0)
        result = SimpleGenerateAlgo(length);
    else
        result = GenerateAlgoWithLimits(length);
    
	for(unsigned int i=0; i<ExistingStrings.size(); i++)
	{
		if(ExistingStrings.at(i).find(result) != string::npos)
			return GenerateString(length);
	}
		
	AddExistingString(result);
    return result;
}
Beispiel #13
0
int main()
{
   int n, c;
   scanf("%d", &n);
   /*
    * Вы неверно определяли размер итоговой строчки, поэтому free падал с ошибкой. Убрав очистку памяти вы проблему не решили.
    */
   c= (1 << (n + 1)) + 1;
   char *string;
   string = (char*)malloc(c); 
   if(n == 0)
   {
      printf("a\n");
   }
   else 
   {
      GenerateString(n, string);
      printf("%s\n",string);
   }
   free(string);
   return 0;
}
Beispiel #14
0
VOID
TestStringListAddWithReallocation(
    PVMDIR_STRING_LIST pStringList
    )
{
    UINT i = 0;
    DWORD dwMaxSize = 0;
    DWORD dwError = 0;

    dwMaxSize = pStringList->dwSize + 5;
    for (i = pStringList->dwCount; i < dwMaxSize; ++i)
    {
        dwError = VmDirStringListAdd(
                    pStringList,
                    GenerateString());
        ASSERT(dwError == 0);
    }

    ASSERT(pStringList->dwSize > pStringList->dwCount);
    ASSERT(pStringList->dwSize > dwMaxSize);
    ASSERT(pStringList->dwCount >= dwMaxSize);
}
Beispiel #15
0
string RandomStringGenerator::Generate(int fixed)
{
	return GenerateString(fixed);
}