From: Ondrej Kozina Date: Mon, 24 Feb 2014 16:40:46 +0000 (+0100) Subject: - use template to search through ACL signatures X-Git-Tag: v0.2.2~18^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F49%2Fhead;p=thirdparty%2Fsnapper.git - use template to search through ACL signatures --- 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;