@@ -7,14 +7,14 @@ use zeroize::{Zeroize, ZeroizeOnDrop};
77use super :: Session ;
88use crate :: { Key , Secret , crypto, dbus:: Error , secret:: ContentType } ;
99
10- #[ derive( Debug , Serialize , Deserialize , Type ) ]
10+ #[ derive( Debug , Serialize , Deserialize , Type , Zeroize , ZeroizeOnDrop ) ]
1111#[ zvariant( signature = "(oayays)" ) ]
1212/// Same as [`DBusSecret`] without tying the session path to a [`Session`] type.
1313pub struct DBusSecretInner (
14- pub OwnedObjectPath ,
14+ # [ zeroize ( skip ) ] pub OwnedObjectPath ,
1515 #[ serde( with = "serde_bytes" ) ] pub Vec < u8 > ,
1616 #[ serde( with = "serde_bytes" ) ] pub Vec < u8 > ,
17- pub ContentType ,
17+ # [ zeroize ( skip ) ] pub ContentType ,
1818) ;
1919
2020#[ derive( Debug , Type , Zeroize , ZeroizeOnDrop ) ]
@@ -58,9 +58,9 @@ impl DBusSecret {
5858
5959 pub async fn from_inner ( cnx : & zbus:: Connection , inner : DBusSecretInner ) -> Result < Self , Error > {
6060 Ok ( Self {
61- session : Arc :: new ( Session :: new ( cnx, inner. 0 ) . await ?) ,
62- parameters : inner. 1 ,
63- value : inner. 2 ,
61+ session : Arc :: new ( Session :: new ( cnx, inner. 0 . clone ( ) ) . await ?) ,
62+ parameters : inner. 1 . clone ( ) ,
63+ value : inner. 2 . clone ( ) ,
6464 content_type : inner. 3 ,
6565 } )
6666 }
0 commit comments