]> git.ipfire.org Git - thirdparty/dnspython.git/commitdiff
dns/hash: keep module for backward compatibility, add deprecation warning 319/head
authorTomas Krizek <tomas.krizek@nic.cz>
Wed, 18 Jul 2018 11:17:39 +0000 (13:17 +0200)
committerTomas Krizek <tomas.krizek@nic.cz>
Fri, 20 Jul 2018 14:24:17 +0000 (16:24 +0200)
ChangeLog
dns/__init__.py
dns/hash.py [new file with mode: 0644]

index 0c76f96956855c701b819c17d5c0b40c978a0a78..b43537d456eccf153e3d675b4c83588225804ef2 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2018-07-18  Tomas Krizek  <tomas.krizek@nic.cz>
+
+       * dns/hash.py: added deprecation warning. Module is no longer
+         necessary and will be removed in future versions.
+
 2017-12-21  Daniel Robbins  <drobbins@funtoo.org>
 
        * dns/dnssec.py: migrated code from pycrypto (apparently no
index 3852729b71d6854dea29b0eabe1b90d4d438947a..c848e485813bb14badba05b2449436adbd85b1ee 100644 (file)
@@ -22,6 +22,7 @@ __all__ = [
     'entropy',
     'exception',
     'flags',
+    'hash',
     'inet',
     'ipv4',
     'ipv6',
diff --git a/dns/hash.py b/dns/hash.py
new file mode 100644 (file)
index 0000000..5176137
--- /dev/null
@@ -0,0 +1,35 @@
+# Copyright (C) 2011 Nominum, Inc.
+#
+# Permission to use, copy, modify, and distribute this software and its
+# documentation for any purpose with or without fee is hereby granted,
+# provided that the above copyright notice and this permission notice
+# appear in all copies.
+#
+# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES
+# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR
+# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
+# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+"""Hashing backwards compatibility wrapper"""
+
+import hashlib
+import warnings
+
+warnings.warn(
+    "dns.hash module will be removed in future versions. Please use hashlib instead.",
+    DeprecationWarning)
+
+hashes = {}
+hashes['MD5'] = hashlib.md5
+hashes['SHA1'] = hashlib.sha1
+hashes['SHA224'] = hashlib.sha224
+hashes['SHA256'] = hashlib.sha256
+hashes['SHA384'] = hashlib.sha384
+hashes['SHA512'] = hashlib.sha512
+
+
+def get(algorithm):
+    return hashes[algorithm.upper()]