diff --git a/parser/mount.cc b/parser/mount.cc index 31f38c825..c7f11f4aa 100644 --- a/parser/mount.cc +++ b/parser/mount.cc @@ -570,6 +570,8 @@ ostream &mnt_rule::dump(ostream &os) { prefix_rule_t::dump(os); + std::ios::fmtflags fmt(os.flags()); + if (perms & AA_MAY_MOUNT) os << "mount"; else if (perms & AA_MAY_UMOUNT) @@ -603,6 +605,7 @@ ostream &mnt_rule::dump(ostream &os) os << " " << "(0x" << hex << perms << "/0x" << (audit != AUDIT_UNSPECIFIED ? perms : 0) << ")"; os << ",\n"; + os.flags(fmt); return os; } diff --git a/parser/rule.h b/parser/rule.h index 6a0bec8ae..7d86e3d1d 100644 --- a/parser/rule.h +++ b/parser/rule.h @@ -431,11 +431,14 @@ public: ostream &dump(ostream &os) override { class_rule_t::dump(os); + std::ios::fmtflags fmt(os.flags()); + if (saved) os << "(0x" << std::hex << perms << "/orig " << saved << ") "; else os << "(0x" << std::hex << perms << ") "; + os.flags(fmt); return os; } @@ -460,7 +463,11 @@ public: ostream &dump(ostream &os) override { class_rule_t::dump(os); + std::ios::fmtflags fmt(os.flags()); + os << "(0x" << std::hex << perms << ") "; + + os.flags(fmt); return os; }