summaryrefslogtreecommitdiff
path: root/project2/proj2_s4498062/dns/resource.py
diff options
context:
space:
mode:
Diffstat (limited to 'project2/proj2_s4498062/dns/resource.py')
-rw-r--r--project2/proj2_s4498062/dns/resource.py13
1 files changed, 5 insertions, 8 deletions
diff --git a/project2/proj2_s4498062/dns/resource.py b/project2/proj2_s4498062/dns/resource.py
index 71f09be..adce3e7 100644
--- a/project2/proj2_s4498062/dns/resource.py
+++ b/project2/proj2_s4498062/dns/resource.py
@@ -30,15 +30,12 @@ class ResourceRecord(object):
def to_bytes(self, offset, composer):
""" Convert ResourceRecord to bytes """
- name = composer.to_bytes(offset, [self.name])
- offset += len(name)
+ record = composer.to_bytes(offset, [self.name])
+ record += struct.pack("!HHI", self.type_, self.class_, self.ttl)
+ offset += len(record) + 2
rdata = self.rdata.to_bytes(offset, composer)
- return (name + struct.pack(
- "!HHIH",
- self.type_,
- self.class_,
- self.ttl,
- len(rdata)) + rdata)
+ record += struct.pack("!H", len(rdata)) + rdata
+ return record
@classmethod
def from_bytes(cls, packet, offset, parser):