events: Rename SecretEncryptionAlgorithm::SecretStorageV1AesHmacSha2 to SecretStorageEncryptionAlgorithm::V1AesHmacSha2
It follows better the namespacing of the algorithm
This commit is contained in:
		
							parent
							
								
									18bede42a4
								
							
						
					
					
						commit
						22a668e461
					
				| @ -38,6 +38,8 @@ Breaking changes: | |||||||
|   - The `unstable-sanitize` cargo feature was renamed to `html` |   - The `unstable-sanitize` cargo feature was renamed to `html` | ||||||
| - Make `via` required in `Space(Child|Parent)EventContent` according to a spec clarification | - Make `via` required in `Space(Child|Parent)EventContent` according to a spec clarification | ||||||
| - Make `name` required in `RoomNameEventContent`, the wording of the spec was confusing | - Make `name` required in `RoomNameEventContent`, the wording of the spec was confusing | ||||||
|  | - Rename `SecretEncryptionAlgorithm` to `SecretStorageEncryptionAlgorithm` and its | ||||||
|  |   `SecretStorageV1AesHmacSha2` variant to `V1AesHmacSha2` | ||||||
| 
 | 
 | ||||||
| Improvements: | Improvements: | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -62,7 +62,7 @@ pub struct SecretStorageKeyEventContent { | |||||||
|     ///
 |     ///
 | ||||||
|     /// Currently, only `m.secret_storage.v1.aes-hmac-sha2` is supported.
 |     /// Currently, only `m.secret_storage.v1.aes-hmac-sha2` is supported.
 | ||||||
|     #[serde(flatten)] |     #[serde(flatten)] | ||||||
|     pub algorithm: SecretEncryptionAlgorithm, |     pub algorithm: SecretStorageEncryptionAlgorithm, | ||||||
| 
 | 
 | ||||||
|     /// The passphrase from which to generate the key.
 |     /// The passphrase from which to generate the key.
 | ||||||
|     #[serde(skip_serializing_if = "Option::is_none")] |     #[serde(skip_serializing_if = "Option::is_none")] | ||||||
| @ -71,7 +71,7 @@ pub struct SecretStorageKeyEventContent { | |||||||
| 
 | 
 | ||||||
| impl SecretStorageKeyEventContent { | impl SecretStorageKeyEventContent { | ||||||
|     /// Creates a `KeyDescription` with the given name.
 |     /// Creates a `KeyDescription` with the given name.
 | ||||||
|     pub fn new(key_id: String, algorithm: SecretEncryptionAlgorithm) -> Self { |     pub fn new(key_id: String, algorithm: SecretStorageEncryptionAlgorithm) -> Self { | ||||||
|         Self { key_id, name: None, algorithm, passphrase: None } |         Self { key_id, name: None, algorithm, passphrase: None } | ||||||
|     } |     } | ||||||
| } | } | ||||||
| @ -80,13 +80,13 @@ impl SecretStorageKeyEventContent { | |||||||
| #[derive(Debug, Clone, Deserialize, Serialize)] | #[derive(Debug, Clone, Deserialize, Serialize)] | ||||||
| #[serde(tag = "algorithm")] | #[serde(tag = "algorithm")] | ||||||
| #[cfg_attr(not(feature = "unstable-exhaustive-types"), non_exhaustive)] | #[cfg_attr(not(feature = "unstable-exhaustive-types"), non_exhaustive)] | ||||||
| pub enum SecretEncryptionAlgorithm { | pub enum SecretStorageEncryptionAlgorithm { | ||||||
|     #[serde(rename = "m.secret_storage.v1.aes-hmac-sha2")] |     #[serde(rename = "m.secret_storage.v1.aes-hmac-sha2")] | ||||||
|     /// Encrypted using the `m.secrect_storage.v1.aes-hmac-sha2` algorithm.
 |     /// Encrypted using the `m.secrect_storage.v1.aes-hmac-sha2` algorithm.
 | ||||||
|     ///
 |     ///
 | ||||||
|     /// Secrets using this method are encrypted using AES-CTR-256 and authenticated using
 |     /// Secrets using this method are encrypted using AES-CTR-256 and authenticated using
 | ||||||
|     /// HMAC-SHA-256.
 |     /// HMAC-SHA-256.
 | ||||||
|     SecretStorageV1AesHmacSha2 { |     V1AesHmacSha2 { | ||||||
|         /// The 16-byte initialization vector, encoded as base64.
 |         /// The 16-byte initialization vector, encoded as base64.
 | ||||||
|         iv: Base64, |         iv: Base64, | ||||||
| 
 | 
 | ||||||
| @ -105,14 +105,14 @@ mod tests { | |||||||
|         value::to_raw_value as to_raw_json_value, |         value::to_raw_value as to_raw_json_value, | ||||||
|     }; |     }; | ||||||
| 
 | 
 | ||||||
|     use super::{PassPhrase, SecretEncryptionAlgorithm, SecretStorageKeyEventContent}; |     use super::{PassPhrase, SecretStorageEncryptionAlgorithm, SecretStorageKeyEventContent}; | ||||||
|     use crate::{EventContentFromType, GlobalAccountDataEvent}; |     use crate::{EventContentFromType, GlobalAccountDataEvent}; | ||||||
| 
 | 
 | ||||||
|     #[test] |     #[test] | ||||||
|     fn test_key_description_serialization() { |     fn test_key_description_serialization() { | ||||||
|         let mut content = SecretStorageKeyEventContent::new( |         let mut content = SecretStorageKeyEventContent::new( | ||||||
|             "my_key".into(), |             "my_key".into(), | ||||||
|             SecretEncryptionAlgorithm::SecretStorageV1AesHmacSha2 { |             SecretStorageEncryptionAlgorithm::V1AesHmacSha2 { | ||||||
|                 iv: Base64::parse("YWJjZGVmZ2hpamtsbW5vcA").unwrap(), |                 iv: Base64::parse("YWJjZGVmZ2hpamtsbW5vcA").unwrap(), | ||||||
|                 mac: Base64::parse("aWRvbnRrbm93d2hhdGFtYWNsb29rc2xpa2U").unwrap(), |                 mac: Base64::parse("aWRvbnRrbm93d2hhdGFtYWNsb29rc2xpa2U").unwrap(), | ||||||
|             }, |             }, | ||||||
| @ -146,7 +146,7 @@ mod tests { | |||||||
| 
 | 
 | ||||||
|         assert_matches!( |         assert_matches!( | ||||||
|             content.algorithm, |             content.algorithm, | ||||||
|             SecretEncryptionAlgorithm::SecretStorageV1AesHmacSha2 { iv, mac } |             SecretStorageEncryptionAlgorithm::V1AesHmacSha2 { iv, mac } | ||||||
|         ); |         ); | ||||||
|         assert_eq!(iv.encode(), "YWJjZGVmZ2hpamtsbW5vcA"); |         assert_eq!(iv.encode(), "YWJjZGVmZ2hpamtsbW5vcA"); | ||||||
|         assert_eq!(mac.encode(), "aWRvbnRrbm93d2hhdGFtYWNsb29rc2xpa2U"); |         assert_eq!(mac.encode(), "aWRvbnRrbm93d2hhdGFtYWNsb29rc2xpa2U"); | ||||||
| @ -168,7 +168,7 @@ mod tests { | |||||||
| 
 | 
 | ||||||
|         assert_matches!( |         assert_matches!( | ||||||
|             content.algorithm, |             content.algorithm, | ||||||
|             SecretEncryptionAlgorithm::SecretStorageV1AesHmacSha2 { iv, mac } |             SecretStorageEncryptionAlgorithm::V1AesHmacSha2 { iv, mac } | ||||||
|         ); |         ); | ||||||
|         assert_eq!(iv.encode(), "YWJjZGVmZ2hpamtsbW5vcA"); |         assert_eq!(iv.encode(), "YWJjZGVmZ2hpamtsbW5vcA"); | ||||||
|         assert_eq!(mac.encode(), "aWRvbnRrbm93d2hhdGFtYWNsb29rc2xpa2U"); |         assert_eq!(mac.encode(), "aWRvbnRrbm93d2hhdGFtYWNsb29rc2xpa2U"); | ||||||
| @ -180,7 +180,7 @@ mod tests { | |||||||
|             passphrase: Some(PassPhrase::new("rocksalt".into(), uint!(8))), |             passphrase: Some(PassPhrase::new("rocksalt".into(), uint!(8))), | ||||||
|             ..SecretStorageKeyEventContent::new( |             ..SecretStorageKeyEventContent::new( | ||||||
|                 "my_key".into(), |                 "my_key".into(), | ||||||
|                 SecretEncryptionAlgorithm::SecretStorageV1AesHmacSha2 { |                 SecretStorageEncryptionAlgorithm::V1AesHmacSha2 { | ||||||
|                     iv: Base64::parse("YWJjZGVmZ2hpamtsbW5vcA").unwrap(), |                     iv: Base64::parse("YWJjZGVmZ2hpamtsbW5vcA").unwrap(), | ||||||
|                     mac: Base64::parse("aWRvbnRrbm93d2hhdGFtYWNsb29rc2xpa2U").unwrap(), |                     mac: Base64::parse("aWRvbnRrbm93d2hhdGFtYWNsb29rc2xpa2U").unwrap(), | ||||||
|                 }, |                 }, | ||||||
| @ -231,7 +231,7 @@ mod tests { | |||||||
| 
 | 
 | ||||||
|         assert_matches!( |         assert_matches!( | ||||||
|             content.algorithm, |             content.algorithm, | ||||||
|             SecretEncryptionAlgorithm::SecretStorageV1AesHmacSha2 { iv, mac } |             SecretStorageEncryptionAlgorithm::V1AesHmacSha2 { iv, mac } | ||||||
|         ); |         ); | ||||||
|         assert_eq!(iv.encode(), "YWJjZGVmZ2hpamtsbW5vcA"); |         assert_eq!(iv.encode(), "YWJjZGVmZ2hpamtsbW5vcA"); | ||||||
|         assert_eq!(mac.encode(), "aWRvbnRrbm93d2hhdGFtYWNsb29rc2xpa2U"); |         assert_eq!(mac.encode(), "aWRvbnRrbm93d2hhdGFtYWNsb29rc2xpa2U"); | ||||||
| @ -241,7 +241,7 @@ mod tests { | |||||||
|     fn test_event_serialization() { |     fn test_event_serialization() { | ||||||
|         let mut content = SecretStorageKeyEventContent::new( |         let mut content = SecretStorageKeyEventContent::new( | ||||||
|             "my_key_id".into(), |             "my_key_id".into(), | ||||||
|             SecretEncryptionAlgorithm::SecretStorageV1AesHmacSha2 { |             SecretStorageEncryptionAlgorithm::V1AesHmacSha2 { | ||||||
|                 iv: Base64::parse("YWJjZGVmZ2hpamtsbW5vcA").unwrap(), |                 iv: Base64::parse("YWJjZGVmZ2hpamtsbW5vcA").unwrap(), | ||||||
|                 mac: Base64::parse("aWRvbnRrbm93d2hhdGFtYWNsb29rc2xpa2U").unwrap(), |                 mac: Base64::parse("aWRvbnRrbm93d2hhdGFtYWNsb29rc2xpa2U").unwrap(), | ||||||
|             }, |             }, | ||||||
| @ -278,7 +278,7 @@ mod tests { | |||||||
| 
 | 
 | ||||||
|         assert_matches!( |         assert_matches!( | ||||||
|             ev.content.algorithm, |             ev.content.algorithm, | ||||||
|             SecretEncryptionAlgorithm::SecretStorageV1AesHmacSha2 { iv, mac } |             SecretStorageEncryptionAlgorithm::V1AesHmacSha2 { iv, mac } | ||||||
|         ); |         ); | ||||||
|         assert_eq!(iv.encode(), "YWJjZGVmZ2hpamtsbW5vcA"); |         assert_eq!(iv.encode(), "YWJjZGVmZ2hpamtsbW5vcA"); | ||||||
|         assert_eq!(mac.encode(), "aWRvbnRrbm93d2hhdGFtYWNsb29rc2xpa2U"); |         assert_eq!(mac.encode(), "aWRvbnRrbm93d2hhdGFtYWNsb29rc2xpa2U"); | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user