From 65fe94c9ba0b2814c78a116f00d60e904003b6b1 Mon Sep 17 00:00:00 2001 From: Wouter Wijngaards Date: Mon, 3 Feb 2014 15:46:50 +0000 Subject: [PATCH] more loc tests (and print 2.3 precision like in the RFC). git-svn-id: file:///svn/unbound/trunk@3069 be551aaa-1e26-0410-a405-d3ace91eadb9 --- ldns/wire2str.c | 4 ++-- testdata/test_ldnsrr.5 | 20 ++++++++++++++++++++ testdata/test_ldnsrr.c3 | 8 ++++---- testdata/test_ldnsrr.c5 | 38 ++++++++++++++++++++++++++++++++++++-- 4 files changed, 62 insertions(+), 8 deletions(-) diff --git a/ldns/wire2str.c b/ldns/wire2str.c index 06155d45b..76920c17f 100644 --- a/ldns/wire2str.c +++ b/ldns/wire2str.c @@ -1358,7 +1358,7 @@ int sldns_wire2str_loc_scan(uint8_t** d, size_t* dl, char** str, size_t* sl) m = latitude / (1000 * 60); latitude = latitude % (1000 * 60); s = (double) latitude / 1000.0; - w += sldns_str_print(str, sl, "%02u %02u %0.3f %c ", + w += sldns_str_print(str, sl, "%02u %02u %06.3f %c ", h, m, s, northerness); if (longitude > equator) { @@ -1373,7 +1373,7 @@ int sldns_wire2str_loc_scan(uint8_t** d, size_t* dl, char** str, size_t* sl) m = longitude / (1000 * 60); longitude = longitude % (1000 * 60); s = (double) longitude / (1000.0); - w += sldns_str_print(str, sl, "%02u %02u %0.3f %c ", + w += sldns_str_print(str, sl, "%02u %02u %06.3f %c ", h, m, s, easterness); s = ((double) altitude) / 100; diff --git a/testdata/test_ldnsrr.5 b/testdata/test_ldnsrr.5 index c99d2a65f..c574a1853 100644 --- a/testdata/test_ldnsrr.5 +++ b/testdata/test_ldnsrr.5 @@ -119,3 +119,23 @@ txt1 TXT "a" "bb" "ccc" txt2 TXT ( "a" "bb" "ccc" ) txt3 TXT "a b" "bb" " cc c " " " txt4 TXT ( "a b" "bb" " cc c " " " ) + +; LOC tests +abbey.example.com. 3600 IN LOC 40 32 24.716 N 105 4 25.770 W 1208.00m 600000m 2000m 1m +abram.example.com. 3600 IN LOC 40 32 24.716 N 105 4 25.770 W 42849672.91m 1000m 500000m 2000m +addie.example.com. 3600 IN LOC 90 0 0.000 S 180 0 0.000 E 42849672.91m 9000000m 9000000m 9000000m +addie.example.com. 3600 IN LOC 90 0 0.000 S 180 0 0.000 E 42849672.91m 90000000m 90000000m 80000000m +alfrac.example.com. 3600 IN LOC 40 0 0.000 N 105 0 0.000 W 1208.64m 1m 10000m 1m +allspec.example.com. 3600 IN LOC 40 32 24.716 N 105 4 25.770 W 1208.00m 600000m 2000m 20m +curtin.edu.au.example.com. 3600 IN LOC 32 7 19.000 S 116 2 25.000 E 10.00m 1m 10000m 1m +rwy04l.logan-airport.boston.example.com. 3600 IN LOC 42 21 28.764 N 71 0 51.617 W -44.00m 2000m 10000m 1m +cambridge-net.kei.com.example.com. 3600 IN LOC 42 21 54.000 N 71 6 18.000 W -24.00m 30m 10000m 1m +loiosh.kei.com.example.com. 3600 IN LOC 42 21 43.952 N 71 5 6.344 W -24.00m 1m 200m 1m +morefrac.example.com. 3600 IN LOC 40 0 0.000 N 105 0 0.000 W 1208.64m 0.30m 5m 4m +negative.example.com. 3600 IN LOC 40 0 0.000 S 105 0 0.000 E -9978.85m 1m 10000m 1m +pipex.net.example.com. 3600 IN LOC 52 14 5.000 N 0 8 50.000 E 10.00m 1m 10000m 1m +nohpvp.example.com. 3600 IN LOC 40 32 24.716 N 105 4 25.770 W 1208.00m 600000m 10000m 1m +nominnosec.example.com. 3600 IN LOC 40 0 0.000 N 105 0 0.000 W 1208.00m 1m 10000m 1m +nosec.example.com. 3600 IN LOC 40 32 0.000 N 105 4 0.000 W 1208.00m 1m 10000m 1m +noszhpvp.example.com. 3600 IN LOC 40 32 24.716 N 105 4 25.770 W 1208.00m 1m 10000m 1m + diff --git a/testdata/test_ldnsrr.c3 b/testdata/test_ldnsrr.c3 index 6353cd613..8a6d163ce 100644 --- a/testdata/test_ldnsrr.c3 +++ b/testdata/test_ldnsrr.c3 @@ -281,7 +281,7 @@ l64.types-signed.wb.sidnlabs.nl. 3600 IN NSEC loc.types-signed.wb.sidnlabs.nl. R 036C36340C74797065732D7369676E6564027762087369646E6C616273026E6C00002E000100000E1000AF002F080500000E1052EC3900524963DCF35A0C74797065732D7369676E6564027762087369646E6C616273026E6C003023888603877FDEC33CA964AEC98A491C65C570570BC883696C61E792C249F294E206799178F30984A2725376D7138756C7D3CCD7EB42833E728B8248C75A0BC5B62C097BF92332A988AC6DBC91D77D2B231FD0567A2484F3F85C8C9A4AA0D5596CE94A5457D782E3585B9B175E19F8D53DB9796717F8803134FCDDFB470BD1 l64.types-signed.wb.sidnlabs.nl. 3600 IN RRSIG NSEC 8 5 3600 20140201000000 20130930114324 62298 types-signed.wb.sidnlabs.nl. MCOIhgOHf97DPKlkrsmKSRxlxXBXC8iDaWxh55LCSfKU4gZ5kXjzCYSiclN21xOHVsfTzNfrQoM+couCSMdaC8W2LAl7+SMyqYisbbyR130rIx/QVnokhPP4XIyaSqDVWWzpSlRX14LjWFubF14Z+NU9uXlnF/iAMTT83ftHC9E= ;{id = 62298} 036C6F630C74797065732D7369676E6564027762087369646E6C616273026E6C00001D00010000003C0010002325238CE82360854A10A000989A68 -loc.types-signed.wb.sidnlabs.nl. 60 IN LOC 60 09 0.000 N 24 39 0.000 E 10m 20m 2000m 20m +loc.types-signed.wb.sidnlabs.nl. 60 IN LOC 60 09 00.000 N 24 39 00.000 E 10m 20m 2000m 20m 036C6F630C74797065732D7369676E6564027762087369646E6C616273026E6C00002E00010000003C00AF001D08050000003C52EC3900524963DCF35A0C74797065732D7369676E6564027762087369646E6C616273026E6C0081730F8F1A032FB7770A530916F5DFF1E56B53E72BCBFFAF3C4DD2C42E4AA3F2BD998347EE6D5C7095AAB7D53FD3F2FC8094BCF132DFAC14D739FCA8BA1C297B941CED642E63FB671BE6168CF9AF00E7D0A0F7E7E23BFCCB0CBF29B52C01BD5006CF6D85087ACBBD8A197A89BAAD7B62EC388F2CF010C84A31FDFDD09B2760A5 loc.types-signed.wb.sidnlabs.nl. 60 IN RRSIG LOC 8 5 60 20140201000000 20130930114324 62298 types-signed.wb.sidnlabs.nl. gXMPjxoDL7d3ClMJFvXf8eVrU+cry/+vPE3SxC5Ko/K9mYNH7m1ccJWqt9U/0/L8gJS88TLfrBTXOfyouhwpe5Qc7WQuY/tnG+YWjPmvAOfQoPfn4jv8ywy/KbUsAb1QBs9thQh6y72KGXqJuq17Yuw4jyzwEMhKMf390JsnYKU= ;{id = 62298} 036C6F630C74797065732D7369676E6564027762087369646E6C616273026E6C00002F000100000E10002B056C6F6330310C74797065732D7369676E6564027762087369646E6C616273026E6C000006000000040003 @@ -289,7 +289,7 @@ loc.types-signed.wb.sidnlabs.nl. 3600 IN NSEC loc01.types-signed.wb.sidnlabs.nl. 036C6F630C74797065732D7369676E6564027762087369646E6C616273026E6C00002E000100000E1000AF002F080500000E1052EC3900524963DCF35A0C74797065732D7369676E6564027762087369646E6C616273026E6C002DA87CBC56A6C94FCD24D4418C5D65B1D920883618D31E53E91346B176C330719120EC721EED5FE830CA504EBDDB131317F041D2D2C6D23C0EE0557D500B6D521718F043B015E199AC85EB3D8C386C24A69F9E519F50F620449267EF36A08D1B03E154B51B8D0B224CFCD87381DBFCA2CC7B97738B16BEB21FD704BEF62BBFD9 loc.types-signed.wb.sidnlabs.nl. 3600 IN RRSIG NSEC 8 5 3600 20140201000000 20130930114324 62298 types-signed.wb.sidnlabs.nl. Lah8vFamyU/NJNRBjF1lsdkgiDYY0x5T6RNGsXbDMHGRIOxyHu1f6DDKUE692xMTF/BB0tLG0jwO4FV9UAttUhcY8EOwFeGZrIXrPYw4bCSmn55Rn1D2IESSZ+82oI0bA+FUtRuNCyJM/Nhzgdv8osx7l3OLFr6yH9cEvvYrv9k= ;{id = 62298} 056C6F6330310C74797065732D7369676E6564027762087369646E6C616273026E6C00001D00010000003C0010002325238CE82360854A10A000989A68 -loc01.types-signed.wb.sidnlabs.nl. 60 IN LOC 60 09 0.000 N 24 39 0.000 E 10m 20m 2000m 20m +loc01.types-signed.wb.sidnlabs.nl. 60 IN LOC 60 09 00.000 N 24 39 00.000 E 10m 20m 2000m 20m 056C6F6330310C74797065732D7369676E6564027762087369646E6C616273026E6C00002E00010000003C00AF001D08050000003C52EC3900524963DCF35A0C74797065732D7369676E6564027762087369646E6C616273026E6C00128D516F8CE942540EE7A0DB557DC7B044C9A90C367A6F87C7826A2BAB0B955CE13FFEDB836969532ACA1492651E61EDE7BE9BF9ECBE97D36318117DD337FB82F2498D725080551831ED9D15E9F9FA7A421E168482E6483F39124BF2F8C6427FB347FBBF1C651F5E05353F5B5F8DC99C27268A6ED27D1C7DCE314A91CD8980D8 loc01.types-signed.wb.sidnlabs.nl. 60 IN RRSIG LOC 8 5 60 20140201000000 20130930114324 62298 types-signed.wb.sidnlabs.nl. Eo1Rb4zpQlQO56DbVX3HsETJqQw2em+Hx4JqK6sLlVzhP/7bg2lpUyrKFJJlHmHt576b+ey+l9NjGBF90zf7gvJJjXJQgFUYMe2dFen5+npCHhaEguZIPzkSS/L4xkJ/s0f7vxxlH14FNT9bX43JnCcmim7SfRx9zjFKkc2JgNg= ;{id = 62298} 056C6F6330310C74797065732D7369676E6564027762087369646E6C616273026E6C00002F000100000E10002B056C6F6330320C74797065732D7369676E6564027762087369646E6C616273026E6C000006000000040003 @@ -297,7 +297,7 @@ loc01.types-signed.wb.sidnlabs.nl. 3600 IN NSEC loc02.types-signed.wb.sidnlabs.n 056C6F6330310C74797065732D7369676E6564027762087369646E6C616273026E6C00002E000100000E1000AF002F080500000E1052EC3900524963DCF35A0C74797065732D7369676E6564027762087369646E6C616273026E6C000E90DD4116B8D7EE57446312864F4B54254EFF6C74C54FCA7225105700FD092C8EBFAFA0867A126AFF6E2704828A0260A4C2BC0A715F8B5E4F7DFE25D8EA8997A7D85A6417983AE45263BF9B44020B5A3FDF6D054CA77AC70E194C9542382E5CB97EB4E401AF10859052BA0E3B98CED2FD230C6EE6DECEF62B6A12895D966C33 loc01.types-signed.wb.sidnlabs.nl. 3600 IN RRSIG NSEC 8 5 3600 20140201000000 20130930114324 62298 types-signed.wb.sidnlabs.nl. DpDdQRa41+5XRGMShk9LVCVO/2x0xU/KciUQVwD9CSyOv6+ghnoSav9uJwSCigJgpMK8CnFfi15Pff4l2OqJl6fYWmQXmDrkUmO/m0QCC1o/320FTKd6xw4ZTJVCOC5cuX605AGvEIWQUroOO5jO0v0jDG7m3s72K2oSiV2WbDM= ;{id = 62298} 056C6F6330320C74797065732D7369676E6564027762087369646E6C616273026E6C00001D00010000003C0010002300138CE82360854A10A000989A68 -loc02.types-signed.wb.sidnlabs.nl. 60 IN LOC 60 09 0.000 N 24 39 0.000 E 10m 20m 0.00m 10m +loc02.types-signed.wb.sidnlabs.nl. 60 IN LOC 60 09 00.000 N 24 39 00.000 E 10m 20m 0.00m 10m 056C6F6330320C74797065732D7369676E6564027762087369646E6C616273026E6C00002E00010000003C00AF001D08050000003C52EC3900524963DCF35A0C74797065732D7369676E6564027762087369646E6C616273026E6C0053D5052F1A36F741BBEA1F58930593F80F6570F1AC9963F6B960BE80912EA5865C2372DECE6C528778451C8D871BA01B2021DA7A9B7AF629EC108738410AE830DF2DEF622B35A1EB368E796897F5285E64B10F7F747796D009CBEE82E1D8A8DA0970649443E3B5363579AC9C4E6AAFD7C77328755B8B8A01A9CF73DBE4B16068 loc02.types-signed.wb.sidnlabs.nl. 60 IN RRSIG LOC 8 5 60 20140201000000 20130930114324 62298 types-signed.wb.sidnlabs.nl. U9UFLxo290G76h9YkwWT+A9lcPGsmWP2uWC+gJEupYZcI3LezmxSh3hFHI2HG6AbICHaept69insEIc4QQroMN8t72IrNaHrNo55aJf1KF5ksQ9/dHeW0AnL7oLh2KjaCXBklEPjtTY1eaycTmqv18dzKHVbi4oBqc9z2+SxYGg= ;{id = 62298} 056C6F6330320C74797065732D7369676E6564027762087369646E6C616273026E6C00002F000100000E100028026C700C74797065732D7369676E6564027762087369646E6C616273026E6C000006000000040003 @@ -875,7 +875,7 @@ type28.types-signed.wb.sidnlabs.nl. 3600 IN NSEC type29.types-signed.wb.sidnlabs 067479706532380C74797065732D7369676E6564027762087369646E6C616273026E6C00002E000100000E1000AF002F080500000E1052EC3900524963DCF35A0C74797065732D7369676E6564027762087369646E6C616273026E6C0044B6B17BB55C82073DC54D291632081B6486C5A743118D087DC012E962033FF5492A413106B452EB1F0687A174FA95E251F88D6CF177FCCC4B6B99CA73646978B526DE12CAFFA14B8078FCF354C009A85E6AD84DC7C5BBD4F0BABD43B487F282CB9EC4D157C4773C377388BE840C0C0D933308E0E30AA7377BB7AD488D22BFA9 type28.types-signed.wb.sidnlabs.nl. 3600 IN RRSIG NSEC 8 5 3600 20140201000000 20130930114324 62298 types-signed.wb.sidnlabs.nl. RLaxe7Vcggc9xU0pFjIIG2SGxadDEY0IfcAS6WIDP/VJKkExBrRS6x8Gh6F0+pXiUfiNbPF3/MxLa5nKc2RpeLUm3hLK/6FLgHj881TACaheathNx8W71PC6vUO0h/KCy57E0VfEdzw3c4i+hAwMDZMzCODjCqc3e7etSI0iv6k= ;{id = 62298} 067479706532390C74797065732D7369676E6564027762087369646E6C616273026E6C00001D00010000003C0010002325238CE82360854A10A000989A68 -type29.types-signed.wb.sidnlabs.nl. 60 IN LOC 60 09 0.000 N 24 39 0.000 E 10m 20m 2000m 20m +type29.types-signed.wb.sidnlabs.nl. 60 IN LOC 60 09 00.000 N 24 39 00.000 E 10m 20m 2000m 20m 067479706532390C74797065732D7369676E6564027762087369646E6C616273026E6C00002E00010000003C00AF001D08050000003C52EC3900524963DCF35A0C74797065732D7369676E6564027762087369646E6C616273026E6C00773797EE5E6DFECA51B59E29778C2A298852D0C43ECF4881F669C3D6899167DCBCA965B2CDEE827C8A3FD56B8B15A18B667FDEE9F26776F1FFA32587C0707707FD8F27F035D4F94114EAD802A35654E7E2F300F7FA1D9EC9B7693CFDF6655BCB3C70D6FB2C19CC4D4FA7DC2AD97531CA030F8F18F1393268A20E7581461B87FE type29.types-signed.wb.sidnlabs.nl. 60 IN RRSIG LOC 8 5 60 20140201000000 20130930114324 62298 types-signed.wb.sidnlabs.nl. dzeX7l5t/spRtZ4pd4wqKYhS0MQ+z0iB9mnD1omRZ9y8qWWyze6CfIo/1WuLFaGLZn/e6fJndvH/oyWHwHB3B/2PJ/A11PlBFOrYAqNWVOfi8wD3+h2eybdpPP32ZVvLPHDW+ywZzE1Pp9wq2XUxygMPjxjxOTJoog51gUYbh/4= ;{id = 62298} 067479706532390C74797065732D7369676E6564027762087369646E6C616273026E6C00002F000100000E10002B0574797065330C74797065732D7369676E6564027762087369646E6C616273026E6C000006000000040003 diff --git a/testdata/test_ldnsrr.c5 b/testdata/test_ldnsrr.c5 index 45414eaa3..b65b316c2 100644 --- a/testdata/test_ldnsrr.c5 +++ b/testdata/test_ldnsrr.c5 @@ -65,9 +65,9 @@ 00001D000100000E1000100033161389172DD070BE15F000988D20 . 3600 IN LOC 42 21 54.000 N 71 06 18.000 W -24m 30m 10000m 10m 00001D000100000E100010001224138917069070BF2DD800988CEE -. 3600 IN LOC 42 21 43.952 N 71 05 6.344 W -24.50m 1m 200m 10m +. 3600 IN LOC 42 21 43.952 N 71 05 06.344 W -24.50m 1m 200m 10m 00001D000100000E100010001216138B3556C88008165000989A89 -. 3600 IN LOC 52 14 5.000 N 00 08 50.000 E 10.33m 1m 10000m 10m +. 3600 IN LOC 52 14 05.000 N 00 08 50.000 E 10.33m 1m 10000m 10m 00001D000100000E10001000121613791B7D2898E64C4F00989A68 . 3600 IN LOC 32 07 19.000 S 116 02 25.999 E 10m 1m 10000m 10m 00001D000100000E100010002516138916CB3C70C310DF009884ED @@ -136,3 +136,37 @@ txt2. 3600 IN TXT "a" "bb" "ccc" txt3. 3600 IN TXT "a b" "bb" " cc c " " " 0474787434000010000100000E10001003612062026262062063632063200120 txt4. 3600 IN TXT "a b" "bb" " cc c " " " +056162626579076578616D706C6503636F6D00001D000100000E1000100067251288B2F08C69741F56009A6E60 +abbey.example.com. 3600 IN LOC 40 32 24.716 N 105 04 25.770 W 1208m 600000m 2000m 1m +05616272616D076578616D706C6503636F6D00001D000100000E1000100015572588B2F08C69741F56FFFFFFFB +abram.example.com. 3600 IN LOC 40 32 24.716 N 105 04 25.770 W 42849672.91m 1000m 500000m 2000m +056164646965076578616D706C6503636F6D00001D000100000E100010009898986CB02700A69FB200FFFFFFFB +addie.example.com. 3600 IN LOC 90 00 00.000 S 180 00 00.000 E 42849672.91m 9000000m 9000000m 9000000m +056164646965076578616D706C6503636F6D00001D000100000E100010009999896CB02700A69FB200FFFFFFFB +addie.example.com. 3600 IN LOC 90 00 00.000 S 180 00 00.000 E 42849672.91m 90000000m 90000000m 80000000m +06616C66726163076578616D706C6503636F6D00001D000100000E100010001216128895440069782D80009A6EA0 +alfrac.example.com. 3600 IN LOC 40 00 00.000 N 105 00 00.000 W 1208.64m 1m 10000m 1m +07616C6C73706563076578616D706C6503636F6D00001D000100000E1000100067252388B2F08C69741F56009A6E60 +allspec.example.com. 3600 IN LOC 40 32 24.716 N 105 04 25.770 W 1208m 600000m 2000m 20m +0663757274696E03656475026175076578616D706C6503636F6D00001D000100000E10001000121612791B7D2898E6486800989A68 +curtin.edu.au.example.com. 3600 IN LOC 32 07 19.000 S 116 02 25.000 E 10m 1m 10000m 1m +0672777930346C0D6C6F67616E2D616972706F727406626F73746F6E076578616D706C6503636F6D00001D000100000E100010002516128916CB3C70C310DF00988550 +rwy04l.logan-airport.boston.example.com. 3600 IN LOC 42 21 28.764 N 71 00 51.617 W -44m 2000m 10000m 1m +0D63616D6272696467652D6E6574036B656903636F6D076578616D706C6503636F6D00001D000100000E1000100033161289172DD070BE15F000988D20 +cambridge-net.kei.com.example.com. 3600 IN LOC 42 21 54.000 N 71 06 18.000 W -24m 30m 10000m 1m +066C6F696F7368036B656903636F6D076578616D706C6503636F6D00001D000100000E100010001224128917069070BF2DD800988D20 +loiosh.kei.com.example.com. 3600 IN LOC 42 21 43.952 N 71 05 06.344 W -24m 1m 200m 1m +086D6F726566726163076578616D706C6503636F6D00001D000100000E100010003152428895440069782D80009A6EA0 +morefrac.example.com. 3600 IN LOC 40 00 00.000 N 105 00 00.000 W 1208.64m 0.30m 5m 4m +086E65676174697665076578616D706C6503636F6D00001D000100000E10001000121612776ABC009687D28000895C83 +negative.example.com. 3600 IN LOC 40 00 00.000 S 105 00 00.000 E -9978.85m 1m 10000m 1m +057069706578036E6574076578616D706C6503636F6D00001D000100000E100010001216128B3556C88008165000989A68 +pipex.net.example.com. 3600 IN LOC 52 14 05.000 N 00 08 50.000 E 10m 1m 10000m 1m +066E6F68707670076578616D706C6503636F6D00001D000100000E1000100067161288B2F08C69741F56009A6E60 +nohpvp.example.com. 3600 IN LOC 40 32 24.716 N 105 04 25.770 W 1208m 600000m 10000m 1m +0A6E6F6D696E6E6F736563076578616D706C6503636F6D00001D000100000E100010001216128895440069782D80009A6E60 +nominnosec.example.com. 3600 IN LOC 40 00 00.000 N 105 00 00.000 W 1208m 1m 10000m 1m +056E6F736563076578616D706C6503636F6D00001D000100000E1000100012161288B2900069748400009A6E60 +nosec.example.com. 3600 IN LOC 40 32 00.000 N 105 04 00.000 W 1208m 1m 10000m 1m +086E6F737A68707670076578616D706C6503636F6D00001D000100000E1000100012161288B2F08C69741F56009A6E60 +noszhpvp.example.com. 3600 IN LOC 40 32 24.716 N 105 04 25.770 W 1208m 1m 10000m 1m -- 2.47.2