diff options
| author | David Lönnhager <david.l@mullvad.net> | 2025-02-27 11:28:02 +0100 |
|---|---|---|
| committer | David Lönnhager <david.l@mullvad.net> | 2025-03-06 00:09:21 +0100 |
| commit | be871bb0e53cc6524ff1e8b10607f38f4b9f3d9c (patch) | |
| tree | a22c9377b1078acb64b057df2c69cf3ac46ec921 | |
| parent | 1dad2d4bad5f8ee3b13145118d65268b1987a477 (diff) | |
| download | mullvadvpn-be871bb0e53cc6524ff1e8b10607f38f4b9f3d9c.tar.xz mullvadvpn-be871bb0e53cc6524ff1e8b10607f38f4b9f3d9c.zip | |
Use fs::Metadata instead of seek
| -rw-r--r-- | mullvad-update/meta/src/artifacts.rs | 20 |
1 files changed, 6 insertions, 14 deletions
diff --git a/mullvad-update/meta/src/artifacts.rs b/mullvad-update/meta/src/artifacts.rs index 898ca6200a..907b49bbe7 100644 --- a/mullvad-update/meta/src/artifacts.rs +++ b/mullvad-update/meta/src/artifacts.rs @@ -2,10 +2,7 @@ use anyhow::Context; use std::path::Path; -use tokio::{ - fs, - io::{AsyncSeekExt, BufReader}, -}; +use tokio::{fs, io::BufReader}; use mullvad_update::{format, hash}; @@ -18,19 +15,14 @@ pub async fn generate_installer_details( base_urls: &[String], artifact: &Path, ) -> anyhow::Result<format::Installer> { - let mut file = fs::File::open(artifact) + let file = fs::File::open(artifact) .await .with_context(|| format!("Failed to open file at {}", artifact.display()))?; - file.seek(std::io::SeekFrom::End(0)) + let metadata = file + .metadata() .await - .context("Failed to seek to end")?; - let file_size = file - .stream_position() - .await - .context("Failed to get file size")?; - file.seek(std::io::SeekFrom::Start(0)) - .await - .context("Failed to reset file pos")?; + .context("Failed to retrieve file metadata")?; + let file_size = metadata.len(); let file = BufReader::new(file); println!("Generating checksum for {}", artifact.display()); |
