forked from lavina/lavina
				
			
		
			
				
	
	
		
			21 lines
		
	
	
		
			591 B
		
	
	
	
		
			Rust
		
	
	
	
			
		
		
	
	
			21 lines
		
	
	
		
			591 B
		
	
	
	
		
			Rust
		
	
	
	
| use anyhow::Result;
 | |
| 
 | |
| use crate::repo::Storage;
 | |
| 
 | |
| impl Storage {
 | |
|     #[tracing::instrument(skip(self), name = "Storage::set_argon2_challenge")]
 | |
|     pub async fn set_argon2_challenge(&self, user_id: u32, hash: &str) -> Result<()> {
 | |
|         let mut executor = self.conn.lock().await;
 | |
|         sqlx::query(
 | |
|             "insert into challenges_argon2_password(user_id, hash)
 | |
|             values (?, ?)
 | |
|             on conflict(user_id) do update set hash = excluded.hash;",
 | |
|         )
 | |
|         .bind(user_id)
 | |
|         .bind(hash)
 | |
|         .execute(&mut *executor)
 | |
|         .await?;
 | |
|         Ok(())
 | |
|     }
 | |
| }
 |