Merge pull request #277 from gradido/login_check_user_send_themself_gradidos

add validation, check if user has tried to send themself gradidos
This commit is contained in:
Ulf Gebhardt 2021-05-11 15:16:11 +02:00 committed by GitHub
commit ccbe61300d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 11 additions and 7 deletions

View File

@ -67,7 +67,7 @@ namespace model {
const static char functionName[] = { "GroupMemberUpdate::validate" };
if (mProtoMemberUpdate.user_pubkey().size() != KeyPairEd25519::getPublicKeySize()) {
addError(new Error(functionName, "pubkey not set or wrong size"));
return TRANSCATION_VALID_INVALID_PUBKEY;
return TRANSACTION_VALID_INVALID_PUBKEY;
}
if (mProtoMemberUpdate.member_update_type() != proto::gradido::GroupMemberUpdate::ADD_USER) {

View File

@ -590,7 +590,7 @@ namespace model {
auto result = validate();
if (TRANSACTION_VALID_OK != result) {
if ( TRANSACTION_VALID_MISSING_SIGN == result || TRANSACTION_VALID_CODE_ERROR == result
|| TRANSACTION_VALID_MISSING_PARAM == result || TRANSCATION_VALID_INVALID_PUBKEY == result
|| TRANSACTION_VALID_MISSING_PARAM == result || TRANSACTION_VALID_INVALID_PUBKEY == result
|| TRANSACTION_VALID_INVALID_SIGN == result) {
addError(new ParamError(function_name, "code error", TransactionValidationToString(result)));
//sendErrorsAsEmail();

View File

@ -17,7 +17,7 @@ namespace model {
case TRANSACTION_VALID_INVALID_TARGET_DATE: return "invalid target date";
case TRANSACTION_VALID_CREATION_OUT_OF_BORDER: return "creation out of border";
case TRANSACTION_VALID_INVALID_AMOUNT: return "invalid amount";
case TRANSCATION_VALID_INVALID_PUBKEY: return "invalid pubkey";
case TRANSACTION_VALID_INVALID_PUBKEY: return "invalid pubkey";
case TRANSACTION_VALID_INVALID_GROUP_ALIAS: return "invalid group alias";
case TRANSACTION_VALID_INVALID_SIGN: return "invalid sign";
}

View File

@ -29,7 +29,7 @@ namespace model {
TRANSACTION_VALID_INVALID_TARGET_DATE,
TRANSACTION_VALID_CREATION_OUT_OF_BORDER,
TRANSACTION_VALID_INVALID_AMOUNT,
TRANSCATION_VALID_INVALID_PUBKEY,
TRANSACTION_VALID_INVALID_PUBKEY,
TRANSACTION_VALID_INVALID_GROUP_ALIAS,
TRANSACTION_VALID_INVALID_SIGN
};

View File

@ -108,7 +108,7 @@ namespace model {
if (mProtoCreation.receiver().pubkey().size() != KeyPairEd25519::getPublicKeySize()) {
addError(new Error(function_name, "receiver pubkey has invalid size"));
return TRANSCATION_VALID_INVALID_PUBKEY;
return TRANSACTION_VALID_INVALID_PUBKEY;
}
// TODO: check creation amount from last 3 month from node server

View File

@ -176,11 +176,15 @@ namespace model {
}
if (receiver_pubkey->size() != KeyPairEd25519::getPublicKeySize()) {
addError(new Error(function_name, "invalid size of receiver pubkey"));
return TRANSCATION_VALID_INVALID_PUBKEY;
return TRANSACTION_VALID_INVALID_PUBKEY;
}
if (sender->pubkey().size() != KeyPairEd25519::getPublicKeySize()) {
addError(new Error(function_name, "invalid size of sender pubkey"));
return TRANSCATION_VALID_INVALID_PUBKEY;
return TRANSACTION_VALID_INVALID_PUBKEY;
}
if(0 == memcmp(sender->pubkey().data(), receiver_pubkey->data(), KeyPairEd25519::getPublicKeySize())) {
addError(new Error(function_name, "sender and receiver are the same"));
return TRANSACTION_VALID_INVALID_PUBKEY;
}
return TRANSACTION_VALID_OK;
}