From 3ac21ab532d6133015f3e782a784bd3ff13eb4f9 Mon Sep 17 00:00:00 2001 From: Ondrej Kozina Date: Mon, 24 Feb 2014 17:40:46 +0100 Subject: [PATCH] - use template to search through ACL signatures --- snapper/Acls.cc | 8 ++------ snapper/File.cc | 2 +- snapper/XAttributes.cc | 21 +++++---------------- 3 files changed, 8 insertions(+), 23 deletions(-) diff --git a/snapper/Acls.cc b/snapper/Acls.cc index 83821cb2..ed9a66d5 100644 --- a/snapper/Acls.cc +++ b/snapper/Acls.cc @@ -26,18 +26,14 @@ #include "snapper/AppUtil.h" #include "snapper/Exception.h" #include "snapper/Log.h" +#include "snapper/SnapperTmpl.h" namespace snapper { bool is_acl_signature(const std::string& name) { - for (std::vector::const_iterator cit = _acl_signatures.begin(); cit != _acl_signatures.end(); cit++) - { - if (name == *cit) - return true; - } - return false; + return contains(_acl_signatures, name); } Acls::Acls(const string& path) diff --git a/snapper/File.cc b/snapper/File.cc index 4e0fee5c..7865ffb8 100644 --- a/snapper/File.cc +++ b/snapper/File.cc @@ -572,7 +572,7 @@ namespace snapper ret_val = true; } - catch (const SnapperException& e) + catch (const AclException& e) { ret_val = false; } diff --git a/snapper/XAttributes.cc b/snapper/XAttributes.cc index bcf8c6f6..ccb8509a 100644 --- a/snapper/XAttributes.cc +++ b/snapper/XAttributes.cc @@ -36,6 +36,7 @@ #include "snapper/Log.h" #include "snapper/XAttributes.h" #include "snapper/Acls.h" +#include "snapper/SnapperTmpl.h" namespace snapper @@ -47,18 +48,12 @@ namespace snapper bool operator()(const xa_pair_t& pair) { - for (vector::const_iterator cit = acl_sigs.begin(); cit != acl_sigs.end(); cit++) - if (pair.first == *cit) - return true; - return false; + return contains(acl_sigs, pair.first); } bool operator()(const string& name) { - for (vector::const_iterator cit = acl_sigs.begin(); cit != acl_sigs.end(); cit++) - if (name == *cit) - return true; - return false; + return contains(acl_sigs, name); } const vector& acl_sigs; @@ -71,14 +66,8 @@ namespace snapper : map(xamap), acl_sigs(acl_sigs) {} void operator()(const xa_pair_t& xapair) { - for (vector::const_iterator cit = acl_sigs.begin(); cit != acl_sigs.end(); cit++) - { - if (*cit == xapair.first) - { - map.insert(xapair); - break; - } - } + if (contains(acl_sigs, xapair.first)) + map.insert(xapair); } xa_map_t& map; -- 2.47.3