Package dns :: Module util
[hide private]
[frames] | no frames]

Source Code for Module dns.util

 1  # Copyright (C) 2011 Nominum, Inc. 
 2  # 
 3  # Permission to use, copy, modify, and distribute this software and its 
 4  # documentation for any purpose with or without fee is hereby granted, 
 5  # provided that the above copyright notice and this permission notice 
 6  # appear in all copies. 
 7  # 
 8  # THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES 
 9  # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 
10  # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR 
11  # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 
12  # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 
13  # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT 
14  # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 
15   
16  """Miscellaneous Implementation Helpers""" 
17   
18  import struct 
19   
20 -def cmp(x, y):
21 """The cmp() function from Python 2""" 22 if x > y: 23 return 1 24 elif x < y: 25 return -1 26 else: 27 return 0
28
29 -def write_uint8(bfile, value):
30 """Write an unsigned 8-bit integer to an io.BytesIO file 31 """ 32 bfile.write(struct.pack('B', value))
33 34
35 -def write_uint16(bfile, value):
36 """Write an unsigned 16-bit integer to an io.BytesIO file 37 """ 38 bfile.write(struct.pack('!H', value))
39
40 -def write_uint32(bfile, value):
41 """Write an unsigned 32-bit integer to an io.BytesIO file 42 """ 43 bfile.write(struct.pack('!L', value))
44 45
46 -def write_uint64(bfile, value):
47 """Write an unsigned 64-bit integer to an io.BytesIO file 48 """ 49 bfile.write(struct.pack('!Q', value))
50