summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbastiak <martin.basti@gmail.com>2014-02-20 13:41:15 +0100
committerbastiak <martin.basti@gmail.com>2014-02-20 13:41:15 +0100
commit433ee1de939442469ae2514f3c3e68c3b50e59a9 (patch)
treedf9adff81f1ff6b2759eb4d33ed3a8a303922a19
parent0b2b985c0b4b0781ddafe74ec435362a026ebf63 (diff)
downloaddnspython-433ee1de939442469ae2514f3c3e68c3b50e59a9.tar.gz
Allows to copy dns.name.Name objects
-rw-r--r--dns/name.py7
1 files changed, 7 insertions, 0 deletions
diff --git a/dns/name.py b/dns/name.py
index 293ab95..5f8f213 100644
--- a/dns/name.py
+++ b/dns/name.py
@@ -24,6 +24,7 @@
import cStringIO
import struct
import sys
+import copy
if sys.hexversion >= 0x02030000:
import encodings.idna
@@ -149,6 +150,12 @@ class Name(object):
def __setattr__(self, name, value):
raise TypeError("object doesn't support attribute assignment")
+ def __copy__(self):
+ return Name(self.labels)
+
+ def __deepcopy__(self, memo):
+ return Name(copy.deepcopy(self.labels, memo))
+
def is_absolute(self):
"""Is the most significant label of this name the root label?
@rtype: bool