This archive is retained to ensure existing URLs remain functional. It will not contain any emails sent to this mailing list after July 1, 2024. For all messages, including those sent before and after this date, please visit the new location of the archive at https://mailman.ripe.net/archives/list/[email protected]/
[atlas] Upcoming change to DNS IN/TXT query result
- Previous message (by thread): [atlas] Get the list of all probes?
- Next message (by thread): [atlas] unable to delete measurements
Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Philip Homburg
philip.homburg at ripe.net
Tue Jul 7 17:29:55 CEST 2015
Hi, This is to inform you about a change in a future release of the RIPE Atlas firmware that changes how 'IN TXT' records get decoded in DNS measurements. Currently, the JSON generated by the probe for TXT query looks like this: { "fw" : -1 , "time" : 1436282373 , "lts" : -1 , "name" : "stereo.hq.phicoh.net" , "dst_addr" : "130.37.15.35" , "af" : 4 , "src_addr" : "193.0.10.226" , "proto" : "UDP" ,"result" : { "rt" : 12.172,"size" : 219 , "ID" : 45298 , "ANCOUNT" : 1 , "QDCOUNT" : 1 , "NSCOUNT" : 2 , "ARCOUNT" : 2,"abuf" : "sPKEAAABAAEAAgACB2RyYWdvbnMEYWlveQJldQAAEAABB2RyYWdvbnMEYWlveQJldQAAEAABAAAOEABPJUhlcmUgYmUg/yBkcmFnb25zISBXaXRoIFwgYW5kICIgYW5kIH8IYXMgd2VsbC4fVGhyb3dpbmcgaW4ggCBmb3IgZ29vZCBtZWFzdXJlLsApAAIAAQAADhAABgNuczHAKcApAAIAAQAADhAABgNuczLAKcCXAAEAAQAADhAABIIlDyPAqQAcAAEAAA4QABAgAQRw0WoAEAKgyf/+nxep","answers" : [ {"TYPE" : "TXT" , "NAME" : "dragons.aioy.eu" , "RDATA" : "Here be \u00FF dragons! With \\ and \" and \u0008as well.\u001FThrowing in \u0080 for good measure."} ] } } Note that the '\u' escape sequence is used escape characters outside the safe ASCII range and that the code fails to support more than one string (the actual reply contains 3 strings). The '\u' notation seemed like a good idea at the time, but because it is valid JSON it is not always transparent and it triggered bugs in other software. The plan is to move to the following format: { "fw" : -1 , "time" : 1436282575 , "lts" : -1 , "name" : "stereo.hq.phicoh.net" , "dst_addr" : "130.37.15.35" , "af" : 4 , "src_addr" : "193.0.10.226" , "proto" : "UDP" ,"result" : { "rt" : 13.186,"size" : 219 , "ID" : 45298 , "ANCOUNT" : 1 , "QDCOUNT" : 1 , "NSCOUNT" : 2 , "ARCOUNT" : 2,"abuf" : "sPKEAAABAAEAAgACB2RyYWdvbnMEYWlveQJldQAAEAABB2RyYWdvbnMEYWlveQJldQAAEAABAAAOEABPJUhlcmUgYmUg/yBkcmFnb25zISBXaXRoIFwgYW5kICIgYW5kIH8IYXMgd2VsbC4fVGhyb3dpbmcgaW4ggCBmb3IgZ29vZCBtZWFzdXJlLsApAAIAAQAADhAABgNuczHAKcApAAIAAQAADhAABgNuczLAKcCXAAEAAQAADhAABIIlDyPAqQAcAAEAAA4QABAgAQRw0WoAEAKgyf/+nxep","answers" : [ {"TYPE" : "TXT" , "NAME" : "dragons.aioy.eu" , "RDATA" : [ "Here be \\255 dragons! With \\092 and \\034 and \\127", "as well.", "Throwing in \\128 for good measure." ] } ] } } Here the escape sequence is similar to the one in DNS zone files. Except that the backslash has to be doubled in JSON. Furthermore, after RDATA comes a list of strings instead of a single string directly. For anyone who parses the JSON output directly, the change from a single string to a list of strings is probably the biggest change. Similar changes will be made in the Sagan package. There, python tricks may hide the list if the result is used in a string context. Philip
- Previous message (by thread): [atlas] Get the list of all probes?
- Next message (by thread): [atlas] unable to delete measurements
Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]