Example #1
0
extern int main( int argc, char **argv )
{
	char password[12];
	int passwordData[5];
	int containsUpper;
	int containsLower;
	int containsNumber;	
	int differentCharacters;
	int i=1;
	while(i==1){
		printf("Please input your password.\nPassword:"******"%s",password);
		checkPassword(password,passwordData);
		containsUpper=passwordData[1];
		containsLower=passwordData[2];
		containsNumber=passwordData[3];					
		containsUpper=numberToOne(containsUpper);
		containsLower=numberToOne(containsLower);
		containsNumber=numberToOne(containsNumber);
		differentCharacters=containsUpper+containsLower+containsNumber;
		if((passwordData[0]<=12) && (passwordData[0]>=6))
		{
			//password length is 'just right'
			if(passwordData[4]==0)
			{
				//password contains no bad characters
				if(differentCharacters==1)
				{
					printf("Your password is WEAK");
				}
				if(differentCharacters==2)
				{
					printf("Your password is MEDIUM");
				}
				if(differentCharacters==3)
				{
					printf("Your password is STRONG");
				}
				confirmPassword(password);
			}
			else
			{
				printf("Only letters and numbers are allowed!");
			}
		}
		else
		{
			if(passwordData[0]<6)
			{
				printf("Your password is too short!");
			}
			else
			{
				printf("Your password is too long!");
			}
		printf(" It needs to be between 6 and 12 characters long.\n");
		}
	}
	return 0;
}
void changePassword(std::shared_ptr<WalletInfo> walletInfo)
{
    /* Check the user knows the current password */
    confirmPassword(walletInfo->walletPass, "Confirm your current password: "******"Enter your new password: "******"Your password has been changed!") << std::endl;
}
bool confirmTransaction(CryptoNote::TransactionParameters t,
                        std::shared_ptr<WalletInfo> walletInfo)
{
    std::cout << std::endl
              << InformationMsg("Confirm Transaction?") << std::endl;

    std::cout << "You are sending "
              << SuccessMsg(formatAmount(t.destinations[0].amount))
              << ", with a fee of " << SuccessMsg(formatAmount(t.fee))
              << ", " << std::endl;

    std::string paymentID = getPaymentID(t.extra);

    if (paymentID != "")
    {
        std::cout << "A mixin of " << SuccessMsg(std::to_string(t.mixIn))
                  << " and a Payment ID of " << SuccessMsg(paymentID);
    }
    else
    {
        std::cout << "And a mixin of " << SuccessMsg(std::to_string(t.mixIn));
    }
    
    std::cout << std::endl << std::endl
              << "FROM: " << SuccessMsg(walletInfo->walletFileName)
              << std::endl
              << "TO: " << SuccessMsg(t.destinations[0].address)
              << std::endl << std::endl;

    if (confirm("Is this correct?"))
    {
        confirmPassword(walletInfo->walletPass);
        return true;
    }
    else
    {
        return false;
    }
}
void exportKeys(std::shared_ptr<WalletInfo> walletInfo)
{
    confirmPassword(walletInfo->walletPass);
    printPrivateKeys(walletInfo->wallet, walletInfo->viewWallet);
}