ssb: Better errors for failing to decrypt private messages.
	
		
			
	
		
	
	
		
	
		
			All checks were successful
		
		
	
	
		
			
				
	
				Build Tilde Friends / Build-All (push) Successful in 22m32s
				
			
		
		
	
	
				
					
				
			
		
			All checks were successful
		
		
	
	Build Tilde Friends / Build-All (push) Successful in 22m32s
				
			This commit is contained in:
		@@ -2238,6 +2238,8 @@ static void _tf_ssb_private_message_decrypt_work(tf_ssb_t* ssb, void* user_data)
 | 
				
			|||||||
	tf_ssb_release_db_reader(ssb, db);
 | 
						tf_ssb_release_db_reader(ssb, db);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (found)
 | 
						if (found)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							if (work->message_size >= strlen(".box") && memcmp(work->message + work->message_size - strlen(".box"), ".box", strlen(".box")) == 0)
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			uint8_t* decoded = tf_malloc(work->message_size);
 | 
								uint8_t* decoded = tf_malloc(work->message_size);
 | 
				
			||||||
			int decoded_length = tf_base64_decode(work->message, work->message_size - strlen(".box"), decoded, work->message_size);
 | 
								int decoded_length = tf_base64_decode(work->message, work->message_size - strlen(".box"), decoded, work->message_size);
 | 
				
			||||||
@@ -2283,11 +2285,16 @@ static void _tf_ssb_private_message_decrypt_work(tf_ssb_t* ssb, void* user_data)
 | 
				
			|||||||
			}
 | 
								}
 | 
				
			||||||
			else
 | 
								else
 | 
				
			||||||
			{
 | 
								{
 | 
				
			||||||
			work->error = "Encrypted message was not long enough to contains its one-time public key.";
 | 
									work->error = "Encrypted message was not long enough to contain its one-time public key.";
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
			tf_free(decoded);
 | 
								tf_free(decoded);
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		else
 | 
							else
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								work->error = "Message does not end in \".box\".";
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		work->error = "Private key not found for user.";
 | 
							work->error = "Private key not found for user.";
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user