summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorandroid-build-team Robot <android-build-team-robot@google.com>2021-06-12 03:39:21 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2021-06-12 03:39:21 +0000
commit5defa71f47a0ba95809b70e1ee431252e484894d (patch)
treebb2d12fcb00260a05a06fd9dde7c12b7e21c53b9
parentf972ed287824d29d4fb737c4ded789c5d9577b58 (diff)
parentc7a4d5c6e695c53f0bc8a181371b91d7f9f4fbde (diff)
downloadextras-5defa71f47a0ba95809b70e1ee431252e484894d.tar.gz
Snap for 7450397 from 2a8f28f46094672eec33ae234ed97a8b63c483c4 to sc-release am: c7a4d5c6e6
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/extras/+/14950899 Change-Id: I6fa4d728942173f5c9f9ce29a7b0776847617fce
-rw-r--r--profcollectd/libprofcollectd/report.rs11
1 files changed, 7 insertions, 4 deletions
diff --git a/profcollectd/libprofcollectd/report.rs b/profcollectd/libprofcollectd/report.rs
index f3b8fe12..c37993b7 100644
--- a/profcollectd/libprofcollectd/report.rs
+++ b/profcollectd/libprofcollectd/report.rs
@@ -19,9 +19,9 @@
use anyhow::{anyhow, Result};
use lazy_static::lazy_static;
use macaddr::MacAddr6;
-use std::fs::{self, File};
+use std::fs::{self, File, Permissions};
use std::io::{Read, Write};
-use std::os::unix::fs::OpenOptionsExt;
+use std::os::unix::fs::PermissionsExt;
use std::path::{Path, PathBuf};
use std::time::SystemTime;
use uuid::v1::{Context, Timestamp};
@@ -45,11 +45,14 @@ pub fn pack_report(profile: &Path, report: &Path, config: &Config) -> Result<Str
// Remove the current report file if exists.
fs::remove_file(&report).ok();
+ let report_file = fs::OpenOptions::new().create_new(true).write(true).open(&report)?;
+
// Set report file ACL bits to 644, so that this can be shared to uploaders.
// Who has permission to actually read the file is protected by SELinux policy.
- let report = fs::OpenOptions::new().create_new(true).write(true).mode(0o644).open(&report)?;
+ fs::set_permissions(&report, Permissions::from_mode(0o644))?;
+
let options = FileOptions::default().compression_method(Deflated);
- let mut zip = ZipWriter::new(report);
+ let mut zip = ZipWriter::new(report_file);
fs::read_dir(profile)?
.filter_map(|e| e.ok())