diff options
| author | Bob Halley <halley@dnspython.org> | 2016-12-18 11:22:18 -0800 |
|---|---|---|
| committer | Bob Halley <halley@dnspython.org> | 2016-12-18 11:22:18 -0800 |
| commit | 59f63a7a708dfeca234945118e4f0d33809d9d7e (patch) | |
| tree | 7341a50fe9bcfd68ad72a61007581b74240a8182 /examples | |
| parent | 4aa198983c45e2987aa6b7675011704d0595899f (diff) | |
| download | dnspython-59f63a7a708dfeca234945118e4f0d33809d9d7e.tar.gz | |
add example of receiving notify messages
Diffstat (limited to 'examples')
| -rw-r--r-- | examples/receive_notify.py | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/examples/receive_notify.py b/examples/receive_notify.py new file mode 100644 index 0000000..76976f7 --- /dev/null +++ b/examples/receive_notify.py @@ -0,0 +1,27 @@ +#!/usr/bin/env python3 + +import socket + +import dns.flags +import dns.message +import dns.rdataclass +import dns.rdatatype + +address = '127.0.0.1' +port = 53535 + +s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) +s.bind((address, port)) +while True: + (wire, address) = s.recvfrom(512) + notify = dns.message.from_wire(wire) + soa = notify.find_rrset(notify.answer, notify.question[0].name, + dns.rdataclass.IN, dns.rdatatype.SOA) + + # Do something with the SOA RR here + print('The serial number for', soa.name, 'is', soa[0].serial) + + response = dns.message.make_response(notify) + response.flags |= dns.flags.AA + wire = response.to_wire(response) + s.sendto(wire, address) |
