commit 2bc6282179705a58e4ed114b0895c2ab2d83ab01 Author: Damian Johnson atagar@torproject.org Date: Fri Apr 29 11:44:08 2016 -0700
Drop nickname from fallback directories
Tor commit 8b90d45 complicates how fallback_dirs.inc is generated. Now that it no longer has hand-managed headers we don't have the nicknames. Dropping this attribute from the class. --- cache_fallback_directories.py | 1 - stem/descriptor/fallback_directories.cfg | 408 ++++++++++++++++++++++--------- stem/descriptor/remote.py | 75 +++--- test/unit/descriptor/remote.py | 18 +- 4 files changed, 323 insertions(+), 179 deletions(-)
diff --git a/cache_fallback_directories.py b/cache_fallback_directories.py index 138f767..21d9fcf 100755 --- a/cache_fallback_directories.py +++ b/cache_fallback_directories.py @@ -59,6 +59,5 @@ if __name__ == '__main__': conf.set('%s.address' % fingerprint, directory.address) conf.set('%s.or_port' % fingerprint, str(directory.or_port)) conf.set('%s.dir_port' % fingerprint, str(directory.dir_port)) - conf.set('%s.nickname' % fingerprint, directory.nickname)
conf.save(stem.descriptor.remote.CACHE_PATH) diff --git a/stem/descriptor/fallback_directories.cfg b/stem/descriptor/fallback_directories.cfg index d420fb5..50ad27b 100644 --- a/stem/descriptor/fallback_directories.cfg +++ b/stem/descriptor/fallback_directories.cfg @@ -1,130 +1,302 @@ -tor_commit e2202146d16af22502fd4166ac926fefa6528dff -stem_commit a96ec510539f2918bf93c50d63ce68e919f71209 -8FA37B93397015B2BC5A525C908485260BE9F422.address 178.254.44.135 -8FA37B93397015B2BC5A525C908485260BE9F422.or_port 9001 -8FA37B93397015B2BC5A525C908485260BE9F422.dir_port 9030 -8FA37B93397015B2BC5A525C908485260BE9F422.nickname Doedel22 -855BC2DABE24C861CD887DB9B2E950424B49FC34.address 84.219.173.60 -855BC2DABE24C861CD887DB9B2E950424B49FC34.or_port 443 -855BC2DABE24C861CD887DB9B2E950424B49FC34.dir_port 9030 -855BC2DABE24C861CD887DB9B2E950424B49FC34.nickname Logforme +tor_commit 1fd4340f827065485f8ce3fd03c5573f89880893 +stem_commit b5661f160a393984fd99b2cb67438ee4eb76e3a9 +9504CB22EEB25D344DE63CB7A6F2C46F895C3686.address 46.101.102.71 +9504CB22EEB25D344DE63CB7A6F2C46F895C3686.or_port 443 +9504CB22EEB25D344DE63CB7A6F2C46F895C3686.dir_port 80 +823AA81E277F366505545522CEDC2F529CE4DC3F.address 192.160.102.164 +823AA81E277F366505545522CEDC2F529CE4DC3F.or_port 9001 +823AA81E277F366505545522CEDC2F529CE4DC3F.dir_port 80 +AEA43CB1E47BE5F8051711B2BF01683DB1568E05.address 37.187.7.74 +AEA43CB1E47BE5F8051711B2BF01683DB1568E05.or_port 443 +AEA43CB1E47BE5F8051711B2BF01683DB1568E05.dir_port 80 +86C281AD135058238D7A337D546C902BE8505DDE.address 185.96.88.29 +86C281AD135058238D7A337D546C902BE8505DDE.or_port 443 +86C281AD135058238D7A337D546C902BE8505DDE.dir_port 80 +8664DC892540F3C789DB37008236C096C871734D.address 163.172.138.22 +8664DC892540F3C789DB37008236C096C871734D.or_port 443 +8664DC892540F3C789DB37008236C096C871734D.dir_port 80 +387B065A38E4DAA16D9D41C2964ECBC4B31D30FF.address 62.210.92.11 +387B065A38E4DAA16D9D41C2964ECBC4B31D30FF.or_port 9101 +387B065A38E4DAA16D9D41C2964ECBC4B31D30FF.dir_port 9130 +DE134FC8E5CC4EC8A5DE66934E70AC9D70267197.address 195.191.233.221 +DE134FC8E5CC4EC8A5DE66934E70AC9D70267197.or_port 443 +DE134FC8E5CC4EC8A5DE66934E70AC9D70267197.dir_port 80 +5714542DCBEE1DD9864824723638FD44B2122CEA.address 109.163.234.9 +5714542DCBEE1DD9864824723638FD44B2122CEA.or_port 443 +5714542DCBEE1DD9864824723638FD44B2122CEA.dir_port 80 +50586E25BE067FD1F739998550EDDCB1A14CA5B2.address 212.51.134.123 +50586E25BE067FD1F739998550EDDCB1A14CA5B2.or_port 9001 +50586E25BE067FD1F739998550EDDCB1A14CA5B2.dir_port 9030 +BCEDF6C193AA687AE471B8A22EBF6BC57C2D285E.address 198.96.155.3 +BCEDF6C193AA687AE471B8A22EBF6BC57C2D285E.or_port 5001 +BCEDF6C193AA687AE471B8A22EBF6BC57C2D285E.dir_port 8080 +F65E0196C94DFFF48AFBF2F5F9E3E19AAE583FD0.address 94.242.246.23 +F65E0196C94DFFF48AFBF2F5F9E3E19AAE583FD0.or_port 9001 +F65E0196C94DFFF48AFBF2F5F9E3E19AAE583FD0.dir_port 443 +616081EC829593AF4232550DE6FFAA1D75B37A90.address 95.128.43.164 +616081EC829593AF4232550DE6FFAA1D75B37A90.or_port 443 +616081EC829593AF4232550DE6FFAA1D75B37A90.dir_port 80 +58ED9C9C35E433EE58764D62892B4FFD518A3CD0.address 185.21.100.50 +58ED9C9C35E433EE58764D62892B4FFD518A3CD0.or_port 9001 +58ED9C9C35E433EE58764D62892B4FFD518A3CD0.dir_port 9030 +35E8B344F661F4F2E68B17648F35798B44672D7E.address 146.0.32.144 +35E8B344F661F4F2E68B17648F35798B44672D7E.or_port 9001 +35E8B344F661F4F2E68B17648F35798B44672D7E.dir_port 9030 +14419131033443AE6E21DA82B0D307F7CAE42BDB.address 144.76.14.145 +14419131033443AE6E21DA82B0D307F7CAE42BDB.or_port 143 +14419131033443AE6E21DA82B0D307F7CAE42BDB.dir_port 110 +79E169B25E4C7CE99584F6ED06F379478F23E2B8.address 62.210.129.246 +79E169B25E4C7CE99584F6ED06F379478F23E2B8.or_port 443 +79E169B25E4C7CE99584F6ED06F379478F23E2B8.dir_port 80 +FD1871854BFC06D7B02F10742073069F0528B5CC.address 192.187.124.98 +FD1871854BFC06D7B02F10742073069F0528B5CC.or_port 9001 +FD1871854BFC06D7B02F10742073069F0528B5CC.dir_port 9030 +EBE718E1A49EE229071702964F8DB1F318075FF8.address 131.188.40.188 +EBE718E1A49EE229071702964F8DB1F318075FF8.or_port 80 +EBE718E1A49EE229071702964F8DB1F318075FF8.dir_port 443 +489D94333DF66D57FFE34D9D59CC2D97E2CB0053.address 37.187.102.186 +489D94333DF66D57FFE34D9D59CC2D97E2CB0053.or_port 9001 +489D94333DF66D57FFE34D9D59CC2D97E2CB0053.dir_port 9030 +99E246DB480B313A3012BC3363093CC26CD209C7.address 81.7.10.93 +99E246DB480B313A3012BC3363093CC26CD209C7.or_port 31337 +99E246DB480B313A3012BC3363093CC26CD209C7.dir_port 31336 +3D7E274A87D9A89AF064C13D1EE4CA1F184F2600.address 176.10.107.180 +3D7E274A87D9A89AF064C13D1EE4CA1F184F2600.or_port 9001 +3D7E274A87D9A89AF064C13D1EE4CA1F184F2600.dir_port 9030 +D5039E1EBFD96D9A3F9846BF99EC9F75EDDE902A.address 37.187.115.157 +D5039E1EBFD96D9A3F9846BF99EC9F75EDDE902A.or_port 9001 +D5039E1EBFD96D9A3F9846BF99EC9F75EDDE902A.dir_port 9030 AE6A8C18E7499B586CD36246AC4BCAFFBBF93AB2.address 178.254.44.135 AE6A8C18E7499B586CD36246AC4BCAFFBBF93AB2.or_port 443 AE6A8C18E7499B586CD36246AC4BCAFFBBF93AB2.dir_port 80 -AE6A8C18E7499B586CD36246AC4BCAFFBBF93AB2.nickname Doedel21 -6FB38EB22E57EF7ED5EF00238F6A48E553735D88.address 212.47.237.95 -6FB38EB22E57EF7ED5EF00238F6A48E553735D88.or_port 9101 -6FB38EB22E57EF7ED5EF00238F6A48E553735D88.dir_port 9130 -6FB38EB22E57EF7ED5EF00238F6A48E553735D88.nickname kitten4 -3F5D8A879C58961BB45A3D26AC41B543B40236D6.address 212.47.237.95 -3F5D8A879C58961BB45A3D26AC41B543B40236D6.or_port 9001 -3F5D8A879C58961BB45A3D26AC41B543B40236D6.dir_port 9030 -3F5D8A879C58961BB45A3D26AC41B543B40236D6.nickname kitten3 -943C0C6841C1E914B9FCA796C6846620A5AF9BC7.address 217.12.210.214 -943C0C6841C1E914B9FCA796C6846620A5AF9BC7.or_port 443 -943C0C6841C1E914B9FCA796C6846620A5AF9BC7.dir_port 80 -943C0C6841C1E914B9FCA796C6846620A5AF9BC7.nickname Unnamed -A360C21FA87FFA2046D92C17086A6B47E5C68109.address 51.255.33.237 -A360C21FA87FFA2046D92C17086A6B47E5C68109.or_port 9001 -A360C21FA87FFA2046D92C17086A6B47E5C68109.dir_port 9091 -A360C21FA87FFA2046D92C17086A6B47E5C68109.nickname coby +262B66AD25C79588AD1FC8ED0E966395B47E5C1D.address 51.254.215.121 +262B66AD25C79588AD1FC8ED0E966395B47E5C1D.or_port 443 +262B66AD25C79588AD1FC8ED0E966395B47E5C1D.dir_port 80 +01A9258A46E97FF8B2CAC7910577862C14F2C524.address 193.171.202.146 +01A9258A46E97FF8B2CAC7910577862C14F2C524.or_port 9001 +01A9258A46E97FF8B2CAC7910577862C14F2C524.dir_port 9030 +9007C1D8E4F03D506A4A011B907A9E8D04E3C605.address 151.80.42.103 +9007C1D8E4F03D506A4A011B907A9E8D04E3C605.or_port 9001 +9007C1D8E4F03D506A4A011B907A9E8D04E3C605.dir_port 9030 +B143D439B72D239A419F8DCE07B8A8EB1B486FA7.address 212.129.62.232 +B143D439B72D239A419F8DCE07B8A8EB1B486FA7.or_port 443 +B143D439B72D239A419F8DCE07B8A8EB1B486FA7.dir_port 80 +32EE911D968BE3E016ECA572BB1ED0A9EE43FC2F.address 109.105.109.162 +32EE911D968BE3E016ECA572BB1ED0A9EE43FC2F.or_port 60784 +32EE911D968BE3E016ECA572BB1ED0A9EE43FC2F.dir_port 52860 +39F096961ED2576975C866D450373A9913AFDC92.address 198.50.191.95 +39F096961ED2576975C866D450373A9913AFDC92.or_port 443 +39F096961ED2576975C866D450373A9913AFDC92.dir_port 80 +64186650FFE4469EBBE52B644AE543864D32F43C.address 89.187.142.208 +64186650FFE4469EBBE52B644AE543864D32F43C.or_port 443 +64186650FFE4469EBBE52B644AE543864D32F43C.dir_port 80 +D64366987CB39F61AD21DBCF8142FA0577B92811.address 37.221.162.226 +D64366987CB39F61AD21DBCF8142FA0577B92811.or_port 9001 +D64366987CB39F61AD21DBCF8142FA0577B92811.dir_port 9030 +BC630CBBB518BE7E9F4E09712AB0269E9DC7D626.address 197.231.221.211 +BC630CBBB518BE7E9F4E09712AB0269E9DC7D626.or_port 9001 +BC630CBBB518BE7E9F4E09712AB0269E9DC7D626.dir_port 9030 +AC66FFA4AB35A59EBBF5BF4C70008BF24D8A7A5C.address 195.154.164.243 +AC66FFA4AB35A59EBBF5BF4C70008BF24D8A7A5C.or_port 443 +AC66FFA4AB35A59EBBF5BF4C70008BF24D8A7A5C.dir_port 80 +A10C4F666D27364036B562823E5830BC448E046A.address 171.25.193.77 +A10C4F666D27364036B562823E5830BC448E046A.or_port 443 +A10C4F666D27364036B562823E5830BC448E046A.dir_port 80 +CBEE0F3303C8C50462A12107CA2AE061831931BC.address 91.121.54.8 +CBEE0F3303C8C50462A12107CA2AE061831931BC.or_port 9001 +CBEE0F3303C8C50462A12107CA2AE061831931BC.dir_port 9030 +CBEFF7BA4A4062045133C053F2D70524D8BBE5BE.address 178.62.199.226 +CBEFF7BA4A4062045133C053F2D70524D8BBE5BE.or_port 443 +CBEFF7BA4A4062045133C053F2D70524D8BBE5BE.dir_port 80 +B87C84E38DAECFFFFDE98E5AEE5786AFDC748F2C.address 178.62.36.64 +B87C84E38DAECFFFFDE98E5AEE5786AFDC748F2C.or_port 9001 +B87C84E38DAECFFFFDE98E5AEE5786AFDC748F2C.dir_port 9030 +EC413181CEB1C8EDC17608BBB177CD5FD8535E99.address 91.219.236.222 +EC413181CEB1C8EDC17608BBB177CD5FD8535E99.or_port 443 +EC413181CEB1C8EDC17608BBB177CD5FD8535E99.dir_port 80 +49E7AD01BB96F6FE3AB8C3B15BD2470B150354DF.address 188.165.194.195 +49E7AD01BB96F6FE3AB8C3B15BD2470B150354DF.or_port 9001 +49E7AD01BB96F6FE3AB8C3B15BD2470B150354DF.dir_port 9030 +C697612CA5AED06B8D829FCC6065B9287212CB2F.address 195.154.79.128 +C697612CA5AED06B8D829FCC6065B9287212CB2F.or_port 443 +C697612CA5AED06B8D829FCC6065B9287212CB2F.dir_port 80 +8B7F47AE1A5D954A3E58ACDE0865D09DBA5B738D.address 178.217.184.32 +8B7F47AE1A5D954A3E58ACDE0865D09DBA5B738D.or_port 443 +8B7F47AE1A5D954A3E58ACDE0865D09DBA5B738D.dir_port 9030 +CBD0D1BD110EC52963082D839AC6A89D0AE243E7.address 37.59.46.159 +CBD0D1BD110EC52963082D839AC6A89D0AE243E7.or_port 9001 +CBD0D1BD110EC52963082D839AC6A89D0AE243E7.dir_port 9030 +322C6E3A973BC10FC36DE3037AD27BC89F14723B.address 212.83.154.33 +322C6E3A973BC10FC36DE3037AD27BC89F14723B.or_port 8443 +322C6E3A973BC10FC36DE3037AD27BC89F14723B.dir_port 8080 +DD85503F2D1F52EF9EAD621E942298F46CD2FC10.address 178.62.173.203 +DD85503F2D1F52EF9EAD621E942298F46CD2FC10.or_port 9001 +DD85503F2D1F52EF9EAD621E942298F46CD2FC10.dir_port 9030 +C414F28FD2BEC1553024299B31D4E726BEB8E788.address 188.138.112.60 +C414F28FD2BEC1553024299B31D4E726BEB8E788.or_port 1521 +C414F28FD2BEC1553024299B31D4E726BEB8E788.dir_port 1433 +FFA72BD683BC2FCF988356E6BEC1E490F313FB07.address 193.11.164.243 +FFA72BD683BC2FCF988356E6BEC1E490F313FB07.or_port 9001 +FFA72BD683BC2FCF988356E6BEC1E490F313FB07.dir_port 9030 +5665A3904C89E22E971305EE8C1997BCA4123C69.address 94.23.204.175 +5665A3904C89E22E971305EE8C1997BCA4123C69.or_port 9001 +5665A3904C89E22E971305EE8C1997BCA4123C69.dir_port 9030 +8844D87E9B038BE3270938F05AF797E1D3C74C0F.address 93.180.156.84 +8844D87E9B038BE3270938F05AF797E1D3C74C0F.or_port 9001 +8844D87E9B038BE3270938F05AF797E1D3C74C0F.dir_port 9030 +E781F4EC69671B3F1864AE2753E0890351506329.address 176.31.180.157 +E781F4EC69671B3F1864AE2753E0890351506329.or_port 22 +E781F4EC69671B3F1864AE2753E0890351506329.dir_port 143 +D62FB817B0288085FAC38A6DC8B36DCD85B70260.address 185.14.185.240 +D62FB817B0288085FAC38A6DC8B36DCD85B70260.or_port 443 +D62FB817B0288085FAC38A6DC8B36DCD85B70260.dir_port 9030 4F0DB7E687FC7C0AE55C8F243DA8B0EB27FBF1F2.address 108.53.208.157 4F0DB7E687FC7C0AE55C8F243DA8B0EB27FBF1F2.or_port 443 4F0DB7E687FC7C0AE55C8F243DA8B0EB27FBF1F2.dir_port 80 -4F0DB7E687FC7C0AE55C8F243DA8B0EB27FBF1F2.nickname Binnacle -F8D27B163B9247B232A2EEE68DD8B698695C28DE.address 78.47.18.110 -F8D27B163B9247B232A2EEE68DD8B698695C28DE.or_port 80 -F8D27B163B9247B232A2EEE68DD8B698695C28DE.dir_port 443 -F8D27B163B9247B232A2EEE68DD8B698695C28DE.nickname fluxe3 +0BEA4A88D069753218EAAAD6D22EA87B9A1319D6.address 5.39.92.199 +0BEA4A88D069753218EAAAD6D22EA87B9A1319D6.or_port 443 +0BEA4A88D069753218EAAAD6D22EA87B9A1319D6.dir_port 80 +CFECDDCA990E3EF7B7EC958B22441386B6B8D820.address 81.7.17.171 +CFECDDCA990E3EF7B7EC958B22441386B6B8D820.or_port 443 +CFECDDCA990E3EF7B7EC958B22441386B6B8D820.dir_port 80 +92ECC9E0E2AF81BB954719B189AC362E254AD4A5.address 91.219.237.244 +92ECC9E0E2AF81BB954719B189AC362E254AD4A5.or_port 443 +92ECC9E0E2AF81BB954719B189AC362E254AD4A5.dir_port 80 +D2A1703758A0FBBA026988B92C2F88BAB59F9361.address 185.13.38.75 +D2A1703758A0FBBA026988B92C2F88BAB59F9361.or_port 9001 +D2A1703758A0FBBA026988B92C2F88BAB59F9361.dir_port 9030 0756B7CD4DFC8182BE23143FAC0642F515182CEB.address 5.9.110.236 0756B7CD4DFC8182BE23143FAC0642F515182CEB.or_port 9001 0756B7CD4DFC8182BE23143FAC0642F515182CEB.dir_port 9030 -0756B7CD4DFC8182BE23143FAC0642F515182CEB.nickname rueckgrat -5BFDECCE9B4A23AE14EC767C5A2C1E10558B00B9.address 213.239.210.204 -5BFDECCE9B4A23AE14EC767C5A2C1E10558B00B9.or_port 443 -5BFDECCE9B4A23AE14EC767C5A2C1E10558B00B9.dir_port 22 -5BFDECCE9B4A23AE14EC767C5A2C1E10558B00B9.nickname Nurnberg01 -5525D0429BFE5DC4F1B0E9DE47A4CFA169661E33.address 5.175.233.86 -5525D0429BFE5DC4F1B0E9DE47A4CFA169661E33.or_port 443 -5525D0429BFE5DC4F1B0E9DE47A4CFA169661E33.dir_port 80 -5525D0429BFE5DC4F1B0E9DE47A4CFA169661E33.nickname wagner +2541759BEC04D37811C2209A88E863320271EC9C.address 185.61.138.18 +2541759BEC04D37811C2209A88E863320271EC9C.or_port 4443 +2541759BEC04D37811C2209A88E863320271EC9C.dir_port 8080 +9030DCF419F6E2FBF84F63CBACBA0097B06F557E.address 5.79.68.161 +9030DCF419F6E2FBF84F63CBACBA0097B06F557E.or_port 443 +9030DCF419F6E2FBF84F63CBACBA0097B06F557E.dir_port 81 +DAA39FC00B196B353C2A271459C305C429AF09E4.address 193.35.52.53 +DAA39FC00B196B353C2A271459C305C429AF09E4.or_port 9001 +DAA39FC00B196B353C2A271459C305C429AF09E4.dir_port 9030 +DDD7871C1B7FA32CB55061E08869A236E61BDDF8.address 5.34.183.205 +DDD7871C1B7FA32CB55061E08869A236E61BDDF8.or_port 443 +DDD7871C1B7FA32CB55061E08869A236E61BDDF8.dir_port 80 +E589316576A399C511A9781A73DA4545640B479D.address 46.252.26.2 +E589316576A399C511A9781A73DA4545640B479D.or_port 49991 +E589316576A399C511A9781A73DA4545640B479D.dir_port 45212 +A1EB8D8F1EE28DB98BBB1EAA3B4BEDD303BAB911.address 176.9.5.116 +A1EB8D8F1EE28DB98BBB1EAA3B4BEDD303BAB911.or_port 9001 +A1EB8D8F1EE28DB98BBB1EAA3B4BEDD303BAB911.dir_port 9030 +98F8D5F359949E41DE8DF3DBB1975A86E96A84A0.address 85.214.206.219 +98F8D5F359949E41DE8DF3DBB1975A86E96A84A0.or_port 9001 +98F8D5F359949E41DE8DF3DBB1975A86E96A84A0.dir_port 9030 +9F7D6E6420183C2B76D3CE99624EBC98A21A967E.address 46.28.110.244 +9F7D6E6420183C2B76D3CE99624EBC98A21A967E.or_port 443 +9F7D6E6420183C2B76D3CE99624EBC98A21A967E.dir_port 80 +A0F06C2FADF88D3A39AA3072B406F09D7095AC9E.address 46.165.230.5 +A0F06C2FADF88D3A39AA3072B406F09D7095AC9E.or_port 443 +A0F06C2FADF88D3A39AA3072B406F09D7095AC9E.dir_port 80 +844AE9CAD04325E955E2BE1521563B79FE7094B7.address 192.87.28.82 +844AE9CAD04325E955E2BE1521563B79FE7094B7.or_port 9001 +844AE9CAD04325E955E2BE1521563B79FE7094B7.dir_port 9030 +30648BC64CEDB3020F4A405E4AB2A6347FB8FA22.address 213.61.66.118 +30648BC64CEDB3020F4A405E4AB2A6347FB8FA22.or_port 9001 +30648BC64CEDB3020F4A405E4AB2A6347FB8FA22.dir_port 9031 +08DC0F3C6E3D9C527C1FC8745D35DD1B0DE1875D.address 37.187.1.149 +08DC0F3C6E3D9C527C1FC8745D35DD1B0DE1875D.or_port 9001 +08DC0F3C6E3D9C527C1FC8745D35DD1B0DE1875D.dir_port 9030 +2BA2C8E96B2590E1072AECE2BDB5C48921BF8510.address 144.76.26.175 +2BA2C8E96B2590E1072AECE2BDB5C48921BF8510.or_port 9011 +2BA2C8E96B2590E1072AECE2BDB5C48921BF8510.dir_port 9012 +7350AB9ED7568F22745198359373C04AC783C37C.address 176.31.191.26 +7350AB9ED7568F22745198359373C04AC783C37C.or_port 9001 +7350AB9ED7568F22745198359373C04AC783C37C.dir_port 9030 +794D8EA8343A4E820320265D05D4FA83AB6D1778.address 185.11.180.67 +794D8EA8343A4E820320265D05D4FA83AB6D1778.or_port 9001 +794D8EA8343A4E820320265D05D4FA83AB6D1778.dir_port 80 +6A640018EABF3DA9BAD9321AA37C2C87BBE1F907.address 144.76.73.140 +6A640018EABF3DA9BAD9321AA37C2C87BBE1F907.or_port 9001 +6A640018EABF3DA9BAD9321AA37C2C87BBE1F907.dir_port 9030 +0D3EBA17E1C78F1E9900BABDB23861D46FCAF163.address 178.62.197.82 +0D3EBA17E1C78F1E9900BABDB23861D46FCAF163.or_port 443 +0D3EBA17E1C78F1E9900BABDB23861D46FCAF163.dir_port 80 +BF0FB582E37F738CD33C3651125F2772705BB8E8.address 148.251.190.229 +BF0FB582E37F738CD33C3651125F2772705BB8E8.or_port 9010 +BF0FB582E37F738CD33C3651125F2772705BB8E8.dir_port 9030 +6FC6F08270D565BE89B7C819DD8E2D487397C073.address 94.126.23.174 +6FC6F08270D565BE89B7C819DD8E2D487397C073.or_port 9001 +6FC6F08270D565BE89B7C819DD8E2D487397C073.dir_port 9030 +75F1992FD3F403E9C082A5815EB5D12934CDF46C.address 46.101.237.246 +75F1992FD3F403E9C082A5815EB5D12934CDF46C.or_port 9001 +75F1992FD3F403E9C082A5815EB5D12934CDF46C.dir_port 9030 +855BC2DABE24C861CD887DB9B2E950424B49FC34.address 84.219.173.60 +855BC2DABE24C861CD887DB9B2E950424B49FC34.or_port 443 +855BC2DABE24C861CD887DB9B2E950424B49FC34.dir_port 9030 +29F1020B94BE25E6BE1AD13E93CE19D2131B487C.address 194.150.168.79 +29F1020B94BE25E6BE1AD13E93CE19D2131B487C.or_port 11111 +29F1020B94BE25E6BE1AD13E93CE19D2131B487C.dir_port 11112 +7A32C9519D80CA458FC8B034A28F5F6815649A98.address 82.223.21.74 +7A32C9519D80CA458FC8B034A28F5F6815649A98.or_port 9001 +7A32C9519D80CA458FC8B034A28F5F6815649A98.dir_port 9030 +0C2C599AFCB26F5CFC2C7592435924C1D63D9484.address 5.196.88.122 +0C2C599AFCB26F5CFC2C7592435924C1D63D9484.or_port 9001 +0C2C599AFCB26F5CFC2C7592435924C1D63D9484.dir_port 9030 +F960DF50F0FD4075AC9B505C1D4FFC8384C490FB.address 46.101.143.173 +F960DF50F0FD4075AC9B505C1D4FFC8384C490FB.or_port 443 +F960DF50F0FD4075AC9B505C1D4FFC8384C490FB.dir_port 80 +17898F9A2EBC7D69DAF87C00A1BD2FABF3C9E1D2.address 178.32.216.146 +17898F9A2EBC7D69DAF87C00A1BD2FABF3C9E1D2.or_port 9001 +17898F9A2EBC7D69DAF87C00A1BD2FABF3C9E1D2.dir_port 9030 +D1B8AAA98C65F3DF7D8BB3AF881CAEB84A33D8EE.address 134.119.3.164 +D1B8AAA98C65F3DF7D8BB3AF881CAEB84A33D8EE.or_port 9001 +D1B8AAA98C65F3DF7D8BB3AF881CAEB84A33D8EE.dir_port 9030 +3B33F6FCA645AD4E91428A3AF7DC736AD9FB727B.address 164.132.77.175 +3B33F6FCA645AD4E91428A3AF7DC736AD9FB727B.or_port 9001 +3B33F6FCA645AD4E91428A3AF7DC736AD9FB727B.dir_port 9030 +9231DF741915AA1630031A93026D88726877E93A.address 51.255.41.65 +9231DF741915AA1630031A93026D88726877E93A.or_port 9001 +9231DF741915AA1630031A93026D88726877E93A.dir_port 9030 2EBD117806EE43C3CC885A8F1E4DC60F207E7D3E.address 62.210.124.124 2EBD117806EE43C3CC885A8F1E4DC60F207E7D3E.or_port 9101 2EBD117806EE43C3CC885A8F1E4DC60F207E7D3E.dir_port 9130 -2EBD117806EE43C3CC885A8F1E4DC60F207E7D3E.nickname kitten2 -BEE2317AE127EB681C5AE1551C1EA0630580638A.address 213.239.220.25 -BEE2317AE127EB681C5AE1551C1EA0630580638A.or_port 443 -BEE2317AE127EB681C5AE1551C1EA0630580638A.dir_port 22 -BEE2317AE127EB681C5AE1551C1EA0630580638A.nickname Nurnberg02 -DF3AED4322B1824BF5539AE54B2D1B38E080FF05.address 217.12.199.208 -DF3AED4322B1824BF5539AE54B2D1B38E080FF05.or_port 443 -DF3AED4322B1824BF5539AE54B2D1B38E080FF05.dir_port 80 -DF3AED4322B1824BF5539AE54B2D1B38E080FF05.nickname Unnamed -6DE61A6F72C1E5418A66BFED80DFB63E4C77668F.address 85.25.138.93 -6DE61A6F72C1E5418A66BFED80DFB63E4C77668F.or_port 4029 -6DE61A6F72C1E5418A66BFED80DFB63E4C77668F.dir_port 9030 -6DE61A6F72C1E5418A66BFED80DFB63E4C77668F.nickname eriador -9F5068310818ED7C70B0BC4087AB55CB12CB4377.address 178.254.20.134 -9F5068310818ED7C70B0BC4087AB55CB12CB4377.or_port 443 -9F5068310818ED7C70B0BC4087AB55CB12CB4377.dir_port 80 -9F5068310818ED7C70B0BC4087AB55CB12CB4377.nickname Doedel26 -86E78DD3720C78DA8673182EF96C54B162CD660C.address 62.210.124.124 -86E78DD3720C78DA8673182EF96C54B162CD660C.or_port 9001 -86E78DD3720C78DA8673182EF96C54B162CD660C.dir_port 9030 -86E78DD3720C78DA8673182EF96C54B162CD660C.nickname kitten1 -92CFD9565B24646CAC2D172D3DB503D69E777B8A.address 178.16.208.57 -92CFD9565B24646CAC2D172D3DB503D69E777B8A.or_port 443 -92CFD9565B24646CAC2D172D3DB503D69E777B8A.dir_port 80 -92CFD9565B24646CAC2D172D3DB503D69E777B8A.nickname bakunin -14419131033443AE6E21DA82B0D307F7CAE42BDB.address 144.76.14.145 -14419131033443AE6E21DA82B0D307F7CAE42BDB.or_port 143 -14419131033443AE6E21DA82B0D307F7CAE42BDB.dir_port 110 -14419131033443AE6E21DA82B0D307F7CAE42BDB.nickname PedicaboMundi -CBEFF7BA4A4062045133C053F2D70524D8BBE5BE.address 178.62.199.226 -CBEFF7BA4A4062045133C053F2D70524D8BBE5BE.or_port 443 -CBEFF7BA4A4062045133C053F2D70524D8BBE5BE.dir_port 80 -CBEFF7BA4A4062045133C053F2D70524D8BBE5BE.nickname tornoderdednl -FA3415659444AE006E7E9E5375E82F29700CFDFD.address 170.130.1.7 -FA3415659444AE006E7E9E5375E82F29700CFDFD.or_port 9001 -FA3415659444AE006E7E9E5375E82F29700CFDFD.dir_port 9030 -FA3415659444AE006E7E9E5375E82F29700CFDFD.nickname ratchet -0C475BA4D3AA3C289B716F95954CAD616E50C4E5.address 178.254.13.126 -0C475BA4D3AA3C289B716F95954CAD616E50C4E5.or_port 9001 -0C475BA4D3AA3C289B716F95954CAD616E50C4E5.dir_port 9030 -0C475BA4D3AA3C289B716F95954CAD616E50C4E5.nickname Freebird32 -F9246DEF2B653807236DA134F2AEAB103D58ABFE.address 178.254.13.126 -F9246DEF2B653807236DA134F2AEAB103D58ABFE.or_port 443 -F9246DEF2B653807236DA134F2AEAB103D58ABFE.dir_port 80 -F9246DEF2B653807236DA134F2AEAB103D58ABFE.nickname Freebird31 -00C4B4731658D3B4987132A3F77100CFCB190D97.address 81.7.17.171 -00C4B4731658D3B4987132A3F77100CFCB190D97.or_port 443 -00C4B4731658D3B4987132A3F77100CFCB190D97.dir_port 80 -00C4B4731658D3B4987132A3F77100CFCB190D97.nickname 12xBTME1 -DD85503F2D1F52EF9EAD621E942298F46CD2FC10.address 178.62.173.203 -DD85503F2D1F52EF9EAD621E942298F46CD2FC10.or_port 9001 -DD85503F2D1F52EF9EAD621E942298F46CD2FC10.dir_port 9030 -DD85503F2D1F52EF9EAD621E942298F46CD2FC10.nickname kili -EBE718E1A49EE229071702964F8DB1F318075FF8.address 131.188.40.188 -EBE718E1A49EE229071702964F8DB1F318075FF8.or_port 80 -EBE718E1A49EE229071702964F8DB1F318075FF8.dir_port 443 -EBE718E1A49EE229071702964F8DB1F318075FF8.nickname fluxe4 -CE75BF0972ADD52AF8807602374E495C815DB304.address 81.7.14.246 -CE75BF0972ADD52AF8807602374E495C815DB304.or_port 443 -CE75BF0972ADD52AF8807602374E495C815DB304.dir_port 80 -CE75BF0972ADD52AF8807602374E495C815DB304.nickname pixelminer -4B9E2C56FB42B891794FE2CD2FCAD08A320CC3BB.address 88.198.38.226 -4B9E2C56FB42B891794FE2CD2FCAD08A320CC3BB.or_port 443 -4B9E2C56FB42B891794FE2CD2FCAD08A320CC3BB.dir_port 22 -4B9E2C56FB42B891794FE2CD2FCAD08A320CC3BB.nickname Nurnberg04 -F6279A203C1950ACF592322A235647A05BFBCF91.address 85.10.201.38 -F6279A203C1950ACF592322A235647A05BFBCF91.or_port 443 -F6279A203C1950ACF592322A235647A05BFBCF91.dir_port 22 -F6279A203C1950ACF592322A235647A05BFBCF91.nickname Nurnberg03 -2CE96A8A1DA032664C90F574AFFBECE18A6E8DFC.address 178.254.20.134 -2CE96A8A1DA032664C90F574AFFBECE18A6E8DFC.or_port 9001 -2CE96A8A1DA032664C90F574AFFBECE18A6E8DFC.dir_port 9030 -2CE96A8A1DA032664C90F574AFFBECE18A6E8DFC.nickname Doedel24 -E65D300F11E1DB12C534B0146BDAB6972F1A8A48.address 167.114.35.28 -E65D300F11E1DB12C534B0146BDAB6972F1A8A48.or_port 9001 -E65D300F11E1DB12C534B0146BDAB6972F1A8A48.dir_port 9030 -E65D300F11E1DB12C534B0146BDAB6972F1A8A48.nickname horizons +AD253B49E303C6AB1E048B014392AC569E8A7DAE.address 163.172.131.88 +AD253B49E303C6AB1E048B014392AC569E8A7DAE.or_port 443 +AD253B49E303C6AB1E048B014392AC569E8A7DAE.dir_port 80 +ACD889D86E02EDDAB1AFD81F598C0936238DC6D0.address 86.59.119.88 +ACD889D86E02EDDAB1AFD81F598C0936238DC6D0.or_port 443 +ACD889D86E02EDDAB1AFD81F598C0936238DC6D0.dir_port 80 +FCB6695F8F2DC240E974510A4B3A0F2B12AB5B64.address 195.154.8.111 +FCB6695F8F2DC240E974510A4B3A0F2B12AB5B64.or_port 443 +FCB6695F8F2DC240E974510A4B3A0F2B12AB5B64.dir_port 80 +20462CBA5DA4C2D963567D17D0B7249718114A68.address 212.47.229.2 +20462CBA5DA4C2D963567D17D0B7249718114A68.or_port 9001 +20462CBA5DA4C2D963567D17D0B7249718114A68.dir_port 9030 +5525D0429BFE5DC4F1B0E9DE47A4CFA169661E33.address 5.175.233.86 +5525D0429BFE5DC4F1B0E9DE47A4CFA169661E33.or_port 443 +5525D0429BFE5DC4F1B0E9DE47A4CFA169661E33.dir_port 80 +5C4DF16A0029CC4F67D3E127356E68F219269859.address 185.100.85.138 +5C4DF16A0029CC4F67D3E127356E68F219269859.or_port 46356 +5C4DF16A0029CC4F67D3E127356E68F219269859.dir_port 80 +B1726B94885CE3AC3910CA8B60622B97B98E2529.address 185.66.250.141 +B1726B94885CE3AC3910CA8B60622B97B98E2529.or_port 9001 +B1726B94885CE3AC3910CA8B60622B97B98E2529.dir_port 9030 +B83DC1558F0D34353BB992EF93AFEAFDB226A73E.address 193.11.114.46 +B83DC1558F0D34353BB992EF93AFEAFDB226A73E.or_port 9003 +B83DC1558F0D34353BB992EF93AFEAFDB226A73E.dir_port 9032 +1DBAED235E3957DE1ABD25B4206BE71406FB61F8.address 46.101.151.222 +1DBAED235E3957DE1ABD25B4206BE71406FB61F8.or_port 443 +1DBAED235E3957DE1ABD25B4206BE71406FB61F8.dir_port 80 +5A5E03355C1908EBF424CAF1F3ED70782C0D2F74.address 78.142.142.246 +5A5E03355C1908EBF424CAF1F3ED70782C0D2F74.or_port 443 +5A5E03355C1908EBF424CAF1F3ED70782C0D2F74.dir_port 80 +ABCB4965F1FEE193602B50A365425105C889D3F8.address 192.34.63.137 +ABCB4965F1FEE193602B50A365425105C889D3F8.or_port 443 +ABCB4965F1FEE193602B50A365425105C889D3F8.dir_port 9030 +5CF8AFA5E4B0BB88942A44A3F3AAE08C3BDFD60B.address 178.16.208.62 +5CF8AFA5E4B0BB88942A44A3F3AAE08C3BDFD60B.or_port 443 +5CF8AFA5E4B0BB88942A44A3F3AAE08C3BDFD60B.dir_port 80 +1ECD73B936CB6E6B3CD647CC204F108D9DF2C9F7.address 91.219.237.229 +1ECD73B936CB6E6B3CD647CC204F108D9DF2C9F7.or_port 443 +1ECD73B936CB6E6B3CD647CC204F108D9DF2C9F7.dir_port 80 +361D33C96D0F161275EE67E2C91EE10B276E778B.address 217.79.190.25 +361D33C96D0F161275EE67E2C91EE10B276E778B.or_port 9090 +361D33C96D0F161275EE67E2C91EE10B276E778B.dir_port 9030 diff --git a/stem/descriptor/remote.py b/stem/descriptor/remote.py index 08183ef..2a40d2d 100644 --- a/stem/descriptor/remote.py +++ b/stem/descriptor/remote.py @@ -709,21 +709,19 @@ class Directory(object): :var int or_port: port on which the relay services relay traffic :var int dir_port: port on which directory information is available :var str fingerprint: relay fingerprint - :var str nickname: nickname of the authority """
- def __init__(self, address, or_port, dir_port, fingerprint, nickname): + def __init__(self, address, or_port, dir_port, fingerprint): self.address = address self.or_port = or_port self.dir_port = dir_port self.fingerprint = fingerprint - self.nickname = nickname
def __eq__(self, other): if not isinstance(other, Directory): return False
- for attr in ('nickname', 'address', 'or_port', 'dir_port', 'fingerprint'): + for attr in ('address', 'or_port', 'dir_port', 'fingerprint'): if getattr(self, attr) != getattr(other, attr): return False
@@ -761,22 +759,30 @@ class DirectoryAuthority(Directory): .. versionchanged:: 1.3.0 Added the is_bandwidth_authority attribute.
+ :var str nickname: nickname of the authority :var str v3ident: identity key fingerprint used to sign votes and consensus :var bool is_bandwidth_authority: **True** if this is a bandwidth authority, **False** otherwise """
def __init__(self, address = None, or_port = None, dir_port = None, fingerprint = None, nickname = None, v3ident = None, is_bandwidth_authority = False): - super(DirectoryAuthority, self).__init__(address, or_port, dir_port, fingerprint, nickname) + super(DirectoryAuthority, self).__init__(address, or_port, dir_port, fingerprint) + self.nickname = nickname self.v3ident = v3ident self.is_bandwidth_authority = is_bandwidth_authority
def __eq__(self, other): - if isinstance(other, DirectoryAuthority) and super(DirectoryAuthority, self).__eq__(other): - return self.v3ident == other.v3ident and self.is_bandwidth_authority == other.is_bandwidth_authority - else: + if not isinstance(other, DirectoryAuthority): + return False + elif not super(DirectoryAuthority, self).__eq__(other): return False
+ for attr in ('nickname', 'v3ident', 'is_bandwidth_authority'): + if getattr(self, attr) != getattr(other, attr): + return False + + return True +
DIRECTORY_AUTHORITIES = { 'moria1': DirectoryAuthority( @@ -887,7 +893,8 @@ def get_authorities(): class FallbackDirectory(Directory): """ Particularly stable relays tor can instead of authorities when - bootstrapping. These relays are `hardcoded in tor https://gitweb.torproject.org/tor.git/tree/src/or/fallback_dirs.inc`_. + bootstrapping. These relays are `hardcoded in tor + https://gitweb.torproject.org/tor.git/tree/src/or/fallback_dirs.inc`_.
For example, the following checks the performance of tor's fallback directories...
@@ -901,23 +908,21 @@ class FallbackDirectory(Directory): for fallback_directory in FallbackDirectory.from_cache().values(): start = time.time() downloader.get_consensus(endpoints = [(fallback_directory.address, fallback_directory.dir_port)]).run() - print('Downloading the consensus took %0.2f from %s' % (time.time() - start, fallback_directory.nickname)) + print('Downloading the consensus took %0.2f from %s' % (time.time() - start, fallback_directory.fingerprint))
::
% python example.py - Downloading the consensus took 5.07 from Doedel22 - Downloading the consensus took 3.59 from tornoderdednl - Downloading the consensus took 4.16 from Logforme - Downloading the consensus took 6.76 from Doedel21 - Downloading the consensus took 5.21 from kitten4 + Downloading the consensus took 5.07 from 0AD3FA884D18F89EEA2D89C019379E0E7FD94417 + Downloading the consensus took 3.59 from C871C91489886D5E2E94C13EA1A5FDC4B6DC5204 + Downloading the consensus took 4.16 from 74A910646BCEEFBCD2E874FC1DC997430F968145 ...
.. versionadded:: 1.5.0 """
- def __init__(self, address = None, or_port = None, dir_port = None, fingerprint = None, nickname = None): - super(FallbackDirectory, self).__init__(address, or_port, dir_port, fingerprint, nickname) + def __init__(self, address = None, or_port = None, dir_port = None, fingerprint = None): + super(FallbackDirectory, self).__init__(address, or_port, dir_port, fingerprint)
@staticmethod def from_cache(): @@ -943,7 +948,7 @@ class FallbackDirectory(Directory):
attr = {}
- for attr_name in ('address', 'or_port', 'dir_port', 'nickname'): + for attr_name in ('address', 'or_port', 'dir_port'): key = '%s.%s' % (fingerprint, attr_name) attr[attr_name] = conf.get(key)
@@ -956,15 +961,12 @@ class FallbackDirectory(Directory): raise IOError("'%s.or_port' was an invalid port (%s)" % (fingerprint, attr['or_port'])) elif not connection.is_valid_port(attr['dir_port']): raise IOError("'%s.dir_port' was an invalid port (%s)" % (fingerprint, attr['dir_port'])) - elif not tor_tools.is_valid_nickname(attr['nickname']): - raise IOError("'%s.nickname' was an invalid nickname (%s)" % (fingerprint, attr['nickname']))
results[fingerprint] = FallbackDirectory( address = attr['address'], or_port = int(attr['or_port']), dir_port = int(attr['dir_port']), fingerprint = fingerprint, - nickname = attr['nickname'], )
return results @@ -1001,46 +1003,34 @@ class FallbackDirectory(Directory):
# Example of an entry... # - # /* - # wagner - # Flags: Fast Guard Running Stable V2Dir Valid - # Fallback Weight: 43680 / 491920 (8.879%) - # Consensus Weight: 62600 / 546000 (11.465%) - # Rarely used email <trff914 AT gmail DOT com> - # */ # "5.175.233.86:80 orport=443 id=5525D0429BFE5DC4F1B0E9DE47A4CFA169661E33" # " weight=43680",
- results, nickname, last_line = {}, None, None + results = {}
for line in fallback_dir_page.splitlines(): - if last_line == '/*': - nickname = line - elif line.startswith('"'): + if line.startswith('"'): addr_line_match = re.match('"([\d.]+):(\d+) orport=(\d+) id=([\dA-F]{40}).*', line)
if addr_line_match: address, dir_port, or_port, fingerprint = addr_line_match.groups()
if not connection.is_valid_ipv4_address(address): - raise IOError('%s has an invalid address: %s' % (nickname, address)) + raise IOError('%s has an invalid address: %s' % (fingerprint, address)) elif not connection.is_valid_port(or_port): - raise IOError('%s has an invalid or_port: %s' % (nickname, or_port)) + raise IOError('%s has an invalid or_port: %s' % (fingerprint, or_port)) elif not connection.is_valid_port(dir_port): - raise IOError('%s has an invalid dir_port: %s' % (nickname, dir_port)) + raise IOError('%s has an invalid dir_port: %s' % (fingerprint, dir_port)) elif not tor_tools.is_valid_fingerprint(fingerprint): - raise IOError('%s has an invalid fingerprint: %s' % (nickname, fingerprint)) + raise IOError('%s has an invalid fingerprint: %s' % (fingerprint, fingerprint))
results[fingerprint] = FallbackDirectory( address = address, or_port = int(or_port), dir_port = int(dir_port), fingerprint = fingerprint, - nickname = nickname, )
- last_line = line - return results
@@ -1058,16 +1048,15 @@ def _fallback_directory_differences(previous_directories, new_directories): directory = new_directories[fp]
lines += [ - '* Added %s as a new fallback directory:' % directory.nickname, + '* Added %s as a new fallback directory:' % directory.fingerprint, ' address: %s' % directory.address, ' or_port: %s' % directory.or_port, ' dir_port: %s' % directory.dir_port, - ' fingerprint: %s' % directory.fingerprint, '', ]
for fp in removed_fp: - lines.append('* Removed %s as a fallback directory' % previous_directories[fp].nickname) + lines.append('* Removed %s as a fallback directory' % fp)
for fp in new_directories: if fp in added_fp or fp in removed_fp: @@ -1077,7 +1066,7 @@ def _fallback_directory_differences(previous_directories, new_directories): new_directory = new_directories[fp]
if previous_directory != new_directory: - for attr in ('nickname', 'address', 'or_port', 'dir_port', 'fingerprint'): + for attr in ('address', 'or_port', 'dir_port', 'fingerprint'): old_attr = getattr(previous_directory, attr) new_attr = getattr(new_directory, attr)
diff --git a/test/unit/descriptor/remote.py b/test/unit/descriptor/remote.py index f0e0dea..7309b57 100644 --- a/test/unit/descriptor/remote.py +++ b/test/unit/descriptor/remote.py @@ -63,22 +63,8 @@ FALLBACK_DIR_CONTENT = b"""\ * This works around an issue where relays post a descriptor without a DirPort * when restarted. If these relays stay up, they will have been up for 120 days * by the 0.2.8 stable release -- teor */ -/* -wagner -Flags: Fast Guard Running Stable V2Dir Valid -Fallback Weight: 43680 / 491920 (8.879%) -Consensus Weight: 62600 / 546000 (11.465%) -Rarely used email <trff914 AT gmail DOT com> -*/ "5.175.233.86:80 orport=443 id=5525D0429BFE5DC4F1B0E9DE47A4CFA169661E33" " weight=43680", -/* -kitten2 -Flags: Fast Guard HSDir Running Stable V2Dir Valid -Fallback Weight: 43680 / 491920 (8.879%) -Consensus Weight: 59100 / 546000 (10.824%) -0xEFB74277ECE4E222 Aeris <aeris+tor AT imirhil DOT fr> - 1aerisnnLWPchhDSXpxWGYWwLiSFUVFnd -*/ "62.210.124.124:9130 orport=9101 id=2EBD117806EE43C3CC885A8F1E4DC60F207E7D3E" " ipv6=[2001:bc8:3f23:100::1]:9101" " weight=43680", @@ -185,7 +171,7 @@ class TestDescriptorDownloader(unittest.TestCase): # quick sanity test that we can load cached content fallback_directories = stem.descriptor.remote.FallbackDirectory.from_cache() self.assertTrue(len(fallback_directories) > 10) - self.assertEqual('wagner', fallback_directories['5525D0429BFE5DC4F1B0E9DE47A4CFA169661E33'].nickname) + self.assertEqual('5.175.233.86', fallback_directories['5525D0429BFE5DC4F1B0E9DE47A4CFA169661E33'].address)
@patch(URL_OPEN) def test_fallback_directories_from_remote(self, urlopen_mock): @@ -194,14 +180,12 @@ class TestDescriptorDownloader(unittest.TestCase):
expected = { '5525D0429BFE5DC4F1B0E9DE47A4CFA169661E33': stem.descriptor.remote.FallbackDirectory( - nickname = 'wagner', address = '5.175.233.86', or_port = 443, dir_port = 80, fingerprint = '5525D0429BFE5DC4F1B0E9DE47A4CFA169661E33', ), '2EBD117806EE43C3CC885A8F1E4DC60F207E7D3E': stem.descriptor.remote.FallbackDirectory( - nickname = 'kitten2', address = '62.210.124.124', or_port = 9101, dir_port = 9130,