You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
38 lines
897 B
38 lines
897 B
package dns |
|
|
|
// StringToType is the reverse of TypeToString, needed for string parsing. |
|
var StringToType = reverseInt16(TypeToString) |
|
|
|
// StringToClass is the reverse of ClassToString, needed for string parsing. |
|
var StringToClass = reverseInt16(ClassToString) |
|
|
|
// StringToOpcode is a map of opcodes to strings. |
|
var StringToOpcode = reverseInt(OpcodeToString) |
|
|
|
// StringToRcode is a map of rcodes to strings. |
|
var StringToRcode = reverseInt(RcodeToString) |
|
|
|
// Reverse a map |
|
func reverseInt8(m map[uint8]string) map[string]uint8 { |
|
n := make(map[string]uint8, len(m)) |
|
for u, s := range m { |
|
n[s] = u |
|
} |
|
return n |
|
} |
|
|
|
func reverseInt16(m map[uint16]string) map[string]uint16 { |
|
n := make(map[string]uint16, len(m)) |
|
for u, s := range m { |
|
n[s] = u |
|
} |
|
return n |
|
} |
|
|
|
func reverseInt(m map[int]string) map[string]int { |
|
n := make(map[string]int, len(m)) |
|
for u, s := range m { |
|
n[s] = u |
|
} |
|
return n |
|
}
|
|
|