summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemko Tronçon <git@el-tramo.be>2011-05-18 13:45:41 (GMT)
committerRemko Tronçon <git@el-tramo.be>2011-05-18 14:24:28 (GMT)
commit23fa0f462ddd0c686c677bfe5d4d743621432b7e (patch)
treeb8f0ea1860640f89eafba2460cc5d45bf28fc77c /Swiften/Base/Algorithm.h
parent2456a8b12163b3249b6b9164b601c36772eb05a1 (diff)
downloadswift-23fa0f462ddd0c686c677bfe5d4d743621432b7e.zip
swift-23fa0f462ddd0c686c677bfe5d4d743621432b7e.tar.bz2
Introduce safe containers for storing passwords.
Diffstat (limited to 'Swiften/Base/Algorithm.h')
-rw-r--r--Swiften/Base/Algorithm.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/Swiften/Base/Algorithm.h b/Swiften/Base/Algorithm.h
index 4d7f1de..4694823 100644
--- a/Swiften/Base/Algorithm.h
+++ b/Swiften/Base/Algorithm.h
@@ -88,8 +88,8 @@ namespace Swift {
Detail::eraseIfImpl(container, predicate, typename Detail::ContainerTraits<C>::Category());
}
- template<typename C>
- void append(C& target, const C& source) {
+ template<typename Source, typename Target>
+ void append(Target& target, const Source& source) {
target.insert(target.end(), source.begin(), source.end());
}
@@ -104,6 +104,11 @@ namespace Swift {
}
}
+ template<typename Container>
+ void nullify(Container& c) {
+ std::fill(c.begin(), c.end(), 0);
+ }
+
/*
* Functors
*/