aboutsummaryrefslogtreecommitdiffstats
path: root/framework/scripts/installer/fuel/fuel-plugin-onos/deployment_scripts/puppet/modules/onos/files/networking-onos.tar
blob: ef5f2d2119cc27af46573ee8804933077bdceee8 (plain)
ofshex dumpascii
0000 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 networking-onos/................
0020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0060 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000755.0001750.0001750.0000
0080 30 30 30 30 30 30 30 00 31 33 31 36 37 33 36 32 35 31 33 00 30 31 32 37 34 36 00 20 35 00 00 00 0000000.13167362513.012746..5...
00a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
00c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
00e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0100 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
0120 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
0140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
01a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
01c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
01e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0200 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 74 6f 78 2e 69 6e 69 00 00 00 00 00 00 00 00 00 networking-onos/tox.ini.........
0220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0260 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
0280 30 30 30 31 37 35 33 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 34 32 36 36 00 20 30 00 00 00 0001753.12627513442.014266..0...
02a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
02c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
02e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0300 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
0320 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
0340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0400 5b 74 6f 78 5d 0a 65 6e 76 6c 69 73 74 20 3d 20 70 79 32 37 2c 70 65 70 38 0a 6d 69 6e 76 65 72 [tox].envlist.=.py27,pep8.minver
0420 73 69 6f 6e 20 3d 20 31 2e 36 0a 73 6b 69 70 73 64 69 73 74 20 3d 20 54 72 75 65 0a 0a 5b 74 65 sion.=.1.6.skipsdist.=.True..[te
0440 73 74 65 6e 76 5d 0a 73 65 74 65 6e 76 20 3d 20 56 49 52 54 55 41 4c 5f 45 4e 56 3d 7b 65 6e 76 stenv].setenv.=.VIRTUAL_ENV={env
0460 64 69 72 7d 0a 75 73 65 64 65 76 65 6c 6f 70 20 3d 20 54 72 75 65 0a 69 6e 73 74 61 6c 6c 5f 63 dir}.usedevelop.=.True.install_c
0480 6f 6d 6d 61 6e 64 20 3d 20 70 69 70 20 69 6e 73 74 61 6c 6c 20 2d 72 20 72 65 71 75 69 72 65 6d ommand.=.pip.install.-r.requirem
04a0 65 6e 74 73 2e 74 78 74 20 2d 55 20 7b 6f 70 74 73 7d 20 7b 70 61 63 6b 61 67 65 73 7d 0a 64 65 ents.txt.-U.{opts}.{packages}.de
04c0 70 73 20 3d 20 2d 72 7b 74 6f 78 69 6e 69 64 69 72 7d 2f 74 65 73 74 2d 72 65 71 75 69 72 65 6d ps.=.-r{toxinidir}/test-requirem
04e0 65 6e 74 73 2e 74 78 74 0a 77 68 69 74 65 6c 69 73 74 5f 65 78 74 65 72 6e 61 6c 73 20 3d 20 62 ents.txt.whitelist_externals.=.b
0500 61 73 68 0a 63 6f 6d 6d 61 6e 64 73 20 3d 20 62 61 73 68 20 74 6f 6f 6c 73 2f 70 72 65 74 74 79 ash.commands.=.bash.tools/pretty
0520 5f 74 6f 78 2e 73 68 20 27 7b 70 6f 73 61 72 67 73 7d 27 0a 0a 5b 74 65 73 74 65 6e 76 3a 70 65 _tox.sh.'{posargs}'..[testenv:pe
0540 70 38 5d 0a 63 6f 6d 6d 61 6e 64 73 20 3d 20 66 6c 61 6b 65 38 0a 0a 5b 74 65 73 74 65 6e 76 3a p8].commands.=.flake8..[testenv:
0560 69 31 38 6e 5d 0a 63 6f 6d 6d 61 6e 64 73 20 3d 20 70 79 74 68 6f 6e 20 2e 2f 74 6f 6f 6c 73 2f i18n].commands.=.python../tools/
0580 63 68 65 63 6b 5f 69 31 38 6e 2e 70 79 20 2e 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 20 check_i18n.py../networking_onos.
05a0 2e 2f 74 6f 6f 6c 73 2f 69 31 38 6e 5f 63 66 67 2e 70 79 0a 0a 5b 74 65 73 74 65 6e 76 3a 76 65 ./tools/i18n_cfg.py..[testenv:ve
05c0 6e 76 5d 0a 63 6f 6d 6d 61 6e 64 73 20 3d 20 7b 70 6f 73 61 72 67 73 7d 0a 0a 5b 74 65 73 74 65 nv].commands.=.{posargs}..[teste
05e0 6e 76 3a 63 6f 76 65 72 5d 0a 63 6f 6d 6d 61 6e 64 73 20 3d 20 70 79 74 68 6f 6e 20 73 65 74 75 nv:cover].commands.=.python.setu
0600 70 2e 70 79 20 74 65 73 74 72 20 2d 2d 63 6f 76 65 72 61 67 65 20 2d 2d 74 65 73 74 72 2d 61 72 p.py.testr.--coverage.--testr-ar
0620 67 73 3d 27 7b 70 6f 73 61 72 67 73 7d 27 0a 0a 5b 74 65 73 74 65 6e 76 3a 64 6f 63 73 5d 0a 63 gs='{posargs}'..[testenv:docs].c
0640 6f 6d 6d 61 6e 64 73 20 3d 20 70 79 74 68 6f 6e 20 73 65 74 75 70 2e 70 79 20 62 75 69 6c 64 5f ommands.=.python.setup.py.build_
0660 73 70 68 69 6e 78 0a 0a 5b 68 61 63 6b 69 6e 67 5d 0a 69 6d 70 6f 72 74 5f 65 78 63 65 70 74 69 sphinx..[hacking].import_excepti
0680 6f 6e 73 20 3d 20 6e 65 75 74 72 6f 6e 2e 69 31 38 6e 0a 6c 6f 63 61 6c 2d 63 68 65 63 6b 2d 66 ons.=.neutron.i18n.local-check-f
06a0 61 63 74 6f 72 79 20 3d 20 6e 65 75 74 72 6f 6e 2e 68 61 63 6b 69 6e 67 2e 63 68 65 63 6b 73 2e actory.=.neutron.hacking.checks.
06c0 66 61 63 74 6f 72 79 0a 73 68 6f 77 2d 73 6f 75 72 63 65 20 3d 20 54 72 75 65 0a 69 67 6e 6f 72 factory.show-source.=.True.ignor
06e0 65 20 3d 20 45 31 32 33 2c 45 31 32 34 2c 45 31 32 35 2c 48 38 30 33 0a 0a 5b 66 6c 61 6b 65 38 e.=.E123,E124,E125,H803..[flake8
0700 5d 0a 23 20 48 38 30 33 20 73 6b 69 70 70 65 64 20 6f 6e 20 70 75 72 70 6f 73 65 20 70 65 72 20 ].#.H803.skipped.on.purpose.per.
0720 6c 69 73 74 20 64 69 73 63 75 73 73 69 6f 6e 2e 0a 23 20 45 31 32 33 2c 20 45 31 32 35 20 73 6b list.discussion..#.E123,.E125.sk
0740 69 70 70 65 64 20 61 73 20 74 68 65 79 20 61 72 65 20 69 6e 76 61 6c 69 64 20 50 45 50 2d 38 2e ipped.as.they.are.invalid.PEP-8.
0760 0a 73 68 6f 77 2d 73 6f 75 72 63 65 20 3d 20 54 72 75 65 0a 69 67 6e 6f 72 65 20 3d 20 45 31 32 .show-source.=.True.ignore.=.E12
0780 33 2c 45 31 32 35 2c 48 38 30 33 0a 62 75 69 6c 74 69 6e 73 20 3d 20 5f 0a 65 78 63 6c 75 64 65 3,E125,H803.builtins.=._.exclude
07a0 3d 2e 76 65 6e 76 2c 2e 67 69 74 2c 2e 74 6f 78 2c 64 69 73 74 2c 64 6f 63 2c 2a 6f 70 65 6e 73 =.venv,.git,.tox,dist,doc,*opens
07c0 74 61 63 6b 2f 63 6f 6d 6d 6f 6e 2a 2c 2a 6c 69 62 2f 70 79 74 68 6f 6e 2a 2c 2a 65 67 67 2c 62 tack/common*,*lib/python*,*egg,b
07e0 75 69 6c 64 2c 74 6f 6f 6c 73 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 uild,tools......................
0800 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 73 65 74 75 70 2e 63 66 67 00 00 00 00 00 00 00 networking-onos/setup.cfg.......
0820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0860 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
0880 30 30 30 32 35 35 31 00 31 33 31 36 37 33 36 32 35 31 33 00 30 31 34 35 37 32 00 20 30 00 00 00 0002551.13167362513.014572..0...
08a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
08c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
08e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0900 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
0920 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
0940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
09a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
09c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
09e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0a00 5b 6d 65 74 61 64 61 74 61 5d 0a 6e 61 6d 65 20 3d 20 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f [metadata].name.=.networking-ono
0a20 73 0a 73 75 6d 6d 61 72 79 20 3d 20 4f 70 65 6e 53 74 61 63 6b 20 4e 65 74 77 6f 72 6b 69 6e 67 s.summary.=.OpenStack.Networking
0a40 0a 64 65 73 63 72 69 70 74 69 6f 6e 2d 66 69 6c 65 20 3d 0a 20 20 20 20 52 45 41 44 4d 45 2e 72 .description-file.=.....README.r
0a60 73 74 0a 61 75 74 68 6f 72 20 3d 20 4f 70 65 6e 53 74 61 63 6b 0a 61 75 74 68 6f 72 2d 65 6d 61 st.author.=.OpenStack.author-ema
0a80 69 6c 20 3d 20 6f 70 65 6e 73 74 61 63 6b 2d 64 65 76 40 6c 69 73 74 73 2e 6f 70 65 6e 73 74 61 il.=.openstack-dev@lists.opensta
0aa0 63 6b 2e 6f 72 67 0a 68 6f 6d 65 2d 70 61 67 65 20 3d 20 68 74 74 70 3a 2f 2f 77 77 77 2e 6f 70 ck.org.home-page.=.http://www.op
0ac0 65 6e 73 74 61 63 6b 2e 6f 72 67 2f 0a 63 6c 61 73 73 69 66 69 65 72 20 3d 0a 20 20 20 20 45 6e enstack.org/.classifier.=.....En
0ae0 76 69 72 6f 6e 6d 65 6e 74 20 3a 3a 20 4f 70 65 6e 53 74 61 63 6b 0a 20 20 20 20 49 6e 74 65 6e vironment.::.OpenStack.....Inten
0b00 64 65 64 20 41 75 64 69 65 6e 63 65 20 3a 3a 20 49 6e 66 6f 72 6d 61 74 69 6f 6e 20 54 65 63 68 ded.Audience.::.Information.Tech
0b20 6e 6f 6c 6f 67 79 0a 20 20 20 20 49 6e 74 65 6e 64 65 64 20 41 75 64 69 65 6e 63 65 20 3a 3a 20 nology.....Intended.Audience.::.
0b40 53 79 73 74 65 6d 20 41 64 6d 69 6e 69 73 74 72 61 74 6f 72 73 0a 20 20 20 20 4c 69 63 65 6e 73 System.Administrators.....Licens
0b60 65 20 3a 3a 20 4f 53 49 20 41 70 70 72 6f 76 65 64 20 3a 3a 20 41 70 61 63 68 65 2d 32 2e 30 20 e.::.OSI.Approved.::.Apache-2.0.
0b80 53 6f 66 74 77 61 72 65 20 4c 69 63 65 6e 73 65 0a 20 20 20 20 4f 70 65 72 61 74 69 6e 67 20 53 Software.License.....Operating.S
0ba0 79 73 74 65 6d 20 3a 3a 20 50 4f 53 49 58 20 3a 3a 20 4c 69 6e 75 78 0a 20 20 20 20 50 72 6f 67 ystem.::.POSIX.::.Linux.....Prog
0bc0 72 61 6d 6d 69 6e 67 20 4c 61 6e 67 75 61 67 65 20 3a 3a 20 50 79 74 68 6f 6e 0a 20 20 20 20 50 ramming.Language.::.Python.....P
0be0 72 6f 67 72 61 6d 6d 69 6e 67 20 4c 61 6e 67 75 61 67 65 20 3a 3a 20 50 79 74 68 6f 6e 20 3a 3a rogramming.Language.::.Python.::
0c00 20 32 0a 20 20 20 20 50 72 6f 67 72 61 6d 6d 69 6e 67 20 4c 61 6e 67 75 61 67 65 20 3a 3a 20 50 .2.....Programming.Language.::.P
0c20 79 74 68 6f 6e 20 3a 3a 20 32 2e 37 0a 0a 5b 66 69 6c 65 73 5d 0a 70 61 63 6b 61 67 65 73 20 3d ython.::.2.7..[files].packages.=
0c40 0a 20 20 20 20 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 0a 64 61 74 61 5f 66 69 6c 65 73 20 .....networking_onos.data_files.
0c60 3d 0a 20 20 20 20 65 74 63 2f 6e 65 75 74 72 6f 6e 2f 70 6c 75 67 69 6e 73 2f 6d 6c 32 20 3d 0a =.....etc/neutron/plugins/ml2.=.
0c80 20 20 20 20 20 20 20 20 65 74 63 2f 63 6f 6e 66 5f 6f 6e 6f 73 2e 69 6e 69 0a 0a 5b 67 6c 6f 62 ........etc/conf_onos.ini..[glob
0ca0 61 6c 5d 0a 73 65 74 75 70 2d 68 6f 6f 6b 73 20 3d 0a 20 20 20 20 70 62 72 2e 68 6f 6f 6b 73 2e al].setup-hooks.=.....pbr.hooks.
0cc0 73 65 74 75 70 5f 68 6f 6f 6b 0a 0a 5b 65 6e 74 72 79 5f 70 6f 69 6e 74 73 5d 0a 6e 65 75 74 72 setup_hook..[entry_points].neutr
0ce0 6f 6e 2e 6d 6c 32 2e 6d 65 63 68 61 6e 69 73 6d 5f 64 72 69 76 65 72 73 20 3d 0a 20 20 20 20 6f on.ml2.mechanism_drivers.=.....o
0d00 6e 6f 73 5f 6d 6c 32 20 3d 20 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2e 70 6c 75 67 69 6e nos_ml2.=.networking_onos.plugin
0d20 73 2e 6d 6c 32 2e 64 72 69 76 65 72 3a 4f 4e 4f 53 4d 65 63 68 61 6e 69 73 6d 44 72 69 76 65 72 s.ml2.driver:ONOSMechanismDriver
0d40 0a 6e 65 75 74 72 6f 6e 2e 73 65 72 76 69 63 65 5f 70 6c 75 67 69 6e 73 20 3d 0a 20 20 20 20 6f .neutron.service_plugins.=.....o
0d60 6e 6f 73 5f 72 6f 75 74 65 72 20 3d 20 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2e 70 6c 75 nos_router.=.networking_onos.plu
0d80 67 69 6e 73 2e 6c 33 2e 64 72 69 76 65 72 3a 4f 4e 4f 53 4c 33 50 6c 75 67 69 6e 0a 0a 5b 62 75 gins.l3.driver:ONOSL3Plugin..[bu
0da0 69 6c 64 5f 73 70 68 69 6e 78 5d 0a 61 6c 6c 5f 66 69 6c 65 73 20 3d 20 31 0a 62 75 69 6c 64 2d ild_sphinx].all_files.=.1.build-
0dc0 64 69 72 20 3d 20 64 6f 63 2f 62 75 69 6c 64 0a 73 6f 75 72 63 65 2d 64 69 72 20 3d 20 64 6f 63 dir.=.doc/build.source-dir.=.doc
0de0 2f 73 6f 75 72 63 65 0a 0a 5b 65 78 74 72 61 63 74 5f 6d 65 73 73 61 67 65 73 5d 0a 6b 65 79 77 /source..[extract_messages].keyw
0e00 6f 72 64 73 20 3d 20 5f 20 67 65 74 74 65 78 74 20 6e 67 65 74 74 65 78 74 20 6c 5f 20 6c 61 7a ords.=._.gettext.ngettext.l_.laz
0e20 79 5f 67 65 74 74 65 78 74 0a 6d 61 70 70 69 6e 67 5f 66 69 6c 65 20 3d 20 62 61 62 65 6c 2e 63 y_gettext.mapping_file.=.babel.c
0e40 66 67 0a 6f 75 74 70 75 74 5f 66 69 6c 65 20 3d 20 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 fg.output_file.=.networking_onos
0e60 2f 6c 6f 63 61 6c 65 2f 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2e 70 6f 74 0a 0a 5b 63 6f /locale/networking-onos.pot..[co
0e80 6d 70 69 6c 65 5f 63 61 74 61 6c 6f 67 5d 0a 64 69 72 65 63 74 6f 72 79 20 3d 20 6e 65 74 77 6f mpile_catalog].directory.=.netwo
0ea0 72 6b 69 6e 67 5f 6f 6e 6f 73 2f 6c 6f 63 61 6c 65 0a 64 6f 6d 61 69 6e 20 3d 20 6e 65 74 77 6f rking_onos/locale.domain.=.netwo
0ec0 72 6b 69 6e 67 2d 6f 6e 6f 73 0a 0a 5b 75 70 64 61 74 65 5f 63 61 74 61 6c 6f 67 5d 0a 64 6f 6d rking-onos..[update_catalog].dom
0ee0 61 69 6e 20 3d 20 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 0a 6f 75 74 70 75 74 5f 64 69 72 ain.=.networking-onos.output_dir
0f00 20 3d 20 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f 6c 6f 63 61 6c 65 0a 69 6e 70 75 74 5f .=.networking_onos/locale.input_
0f20 66 69 6c 65 20 3d 20 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f 6c 6f 63 61 6c 65 2f 6e 65 file.=.networking_onos/locale/ne
0f40 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2e 70 6f 74 0a 0a 5b 77 68 65 65 6c 5d 0a 75 6e 69 76 65 tworking-onos.pot..[wheel].unive
0f60 72 73 61 6c 20 3d 20 31 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 rsal.=.1........................
0f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1000 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
1020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1060 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000755.0001750.0001750.0000
1080 30 30 30 30 30 30 30 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 36 31 37 32 00 20 35 00 00 00 0000000.12627513442.016172..5...
10a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1100 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
1120 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
1140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1200 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
1220 70 6c 75 67 69 6e 73 2f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 plugins/........................
1240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1260 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000755.0001750.0001750.0000
1280 30 30 30 30 30 30 30 00 31 32 37 32 31 35 31 36 31 30 30 00 30 31 37 36 34 30 00 20 35 00 00 00 0000000.12721516100.017640..5...
12a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1300 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
1320 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
1340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1400 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
1420 70 6c 75 67 69 6e 73 2f 5f 5f 69 6e 69 74 5f 5f 2e 70 79 00 00 00 00 00 00 00 00 00 00 00 00 00 plugins/__init__.py.............
1440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1460 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
1480 30 30 30 30 30 30 30 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 31 37 35 32 00 20 30 00 00 00 0000000.12627513442.021752..0...
14a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1500 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
1520 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
1540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1600 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
1620 70 6c 75 67 69 6e 73 2f 6d 6c 32 2f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 plugins/ml2/....................
1640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1660 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000755.0001750.0001750.0000
1680 30 30 30 30 30 30 30 00 31 33 30 35 32 37 37 30 30 35 33 00 30 32 30 33 34 31 00 20 35 00 00 00 0000000.13052770053.020341..5...
16a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1700 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
1720 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
1740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1800 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
1820 70 6c 75 67 69 6e 73 2f 6d 6c 32 2f 52 45 41 44 4d 45 00 00 00 00 00 00 00 00 00 00 00 00 00 00 plugins/ml2/README..............
1840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1860 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
1880 30 30 30 32 33 37 30 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 31 32 32 37 00 20 30 00 00 00 0002370.12627513442.021227..0...
18a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1900 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
1920 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
1940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1a00 4f 70 65 6e 20 4e 65 74 77 6f 72 6b 69 6e 67 20 4f 70 65 72 61 74 69 6e 67 20 53 79 73 74 65 6d Open.Networking.Operating.System
1a20 20 28 4f 4e 4f 53 29 20 4d 4c 32 20 4d 65 63 68 61 6e 69 73 6d 44 72 69 76 65 72 0a 3d 3d 3d 3d .(ONOS).ML2.MechanismDriver.====
1a40 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
1a60 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 4f 4e 4f 53 20 69 73 20 61 ======================.ONOS.is.a
1a80 20 63 61 72 72 69 65 72 20 67 72 61 64 65 20 53 44 4e 20 6f 70 65 6e 20 6f 70 65 72 61 74 69 6e .carrier.grade.SDN.open.operatin
1aa0 67 20 73 79 73 74 65 6d 20 64 65 73 69 67 6e 65 64 20 66 6f 72 0a 48 69 67 68 20 41 76 61 69 6c g.system.designed.for.High.Avail
1ac0 61 62 69 6c 69 74 79 2c 20 73 63 61 6c 65 2d 6f 75 74 20 61 6e 64 20 62 65 74 74 65 72 20 70 65 ability,.scale-out.and.better.pe
1ae0 72 66 6f 72 6d 61 6e 63 65 2e 0a 0a 20 20 20 20 68 74 74 70 3a 2f 2f 77 77 77 2e 6f 6e 6f 73 70 rformance.......http://www.onosp
1b00 72 6f 6a 65 63 74 2e 6f 72 67 2f 0a 0a 4d 6f 64 65 20 6f 66 20 57 6f 72 6b 69 6e 67 3a 0a 3d 3d roject.org/..Mode.of.Working:.==
1b20 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 54 68 65 20 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e ==============.The.networking-on
1b40 6f 73 20 70 72 6f 6a 65 63 74 20 70 72 6f 76 69 64 65 73 20 61 20 74 68 69 6e 20 6c 61 79 65 72 os.project.provides.a.thin.layer
1b60 20 77 68 69 63 68 20 6d 61 6b 65 73 20 74 68 65 0a 63 6f 6d 6d 75 6e 69 63 61 74 69 6f 6e 20 62 .which.makes.the.communication.b
1b80 65 74 77 65 65 6e 20 4f 4e 4f 53 20 61 6e 64 20 4f 70 65 6e 53 74 61 63 6b 20 6e 65 75 74 72 6f etween.ONOS.and.OpenStack.neutro
1ba0 6e 20 70 6f 73 73 69 62 6c 65 20 76 69 61 20 52 65 53 54 0a 63 61 6c 6c 2e 20 54 68 65 20 64 72 n.possible.via.ReST.call..The.dr
1bc0 69 76 65 72 20 63 6f 64 65 20 63 61 6e 20 62 65 20 64 6f 77 6e 6c 6f 61 64 65 64 20 66 72 6f 6d iver.code.can.be.downloaded.from
1be0 3a 0a 0a 20 20 20 20 68 74 74 70 73 3a 2f 2f 67 69 74 2e 6f 70 65 6e 73 74 61 63 6b 2e 6f 72 67 :......https://git.openstack.org
1c00 2f 63 67 69 74 2f 6f 70 65 6e 73 74 61 63 6b 2f 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 0a /cgit/openstack/networking-onos.
1c20 0a 55 73 69 6e 67 20 4f 4e 4f 53 20 4d 4c 32 20 4d 65 63 68 61 6e 69 73 6d 44 72 69 76 65 72 0a .Using.ONOS.ML2.MechanismDriver.
1c40 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 54 ==============================.T
1c60 6f 20 75 73 65 20 4f 4e 4f 53 20 4d 4c 32 20 4d 65 63 68 61 6e 69 73 6d 44 72 69 76 65 72 20 6f o.use.ONOS.ML2.MechanismDriver.o
1c80 6e 65 20 73 68 6f 75 6c 64 0a 31 2e 20 4d 61 6b 65 20 73 75 72 65 20 6e 65 74 77 6f 72 6b 69 6e ne.should.1..Make.sure.networkin
1ca0 67 2d 6f 6e 6f 73 20 63 6f 64 65 20 69 73 20 64 6f 77 6e 6c 6f 61 64 65 64 20 61 6e 64 20 69 6e g-onos.code.is.downloaded.and.in
1cc0 73 74 61 6c 6c 65 64 2e 20 49 66 20 64 6f 69 6e 67 0a 20 20 20 6d 61 6e 6e 75 61 6c 6c 79 20 74 stalled..If.doing....mannually.t
1ce0 68 65 6e 20 64 6f 77 6e 6c 6f 61 64 20 74 68 65 20 63 6f 64 65 2c 20 67 6f 20 69 6e 73 69 64 65 hen.download.the.code,.go.inside
1d00 20 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 20 66 6f 6c 64 65 72 0a 20 20 20 61 6e 64 20 66 .networking_onos.folder....and.f
1d20 69 6e 61 6c 6c 79 20 72 75 6e 20 22 73 75 64 6f 20 70 79 74 68 6f 6e 20 73 65 74 75 70 2e 70 79 inally.run."sudo.python.setup.py
1d40 20 69 6e 73 74 61 6c 6c 22 20 6f 74 68 65 72 77 69 73 65 20 64 6f 77 6e 6c 6f 61 64 20 74 68 65 .install".otherwise.download.the
1d60 0a 20 20 20 72 65 71 75 69 72 65 64 20 70 61 63 6b 61 67 65 20 76 65 72 73 69 6f 6e 20 66 72 6f ....required.package.version.fro
1d80 6d 20 22 68 74 74 70 73 3a 2f 2f 70 79 70 69 2e 70 79 74 68 6f 6e 2e 6f 72 67 2f 70 79 70 69 2f m."https://pypi.python.org/pypi/
1da0 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 22 0a 20 20 20 61 6e 64 20 69 6e 73 74 61 6c 6c networking-onos/"....and.install
1dc0 20 75 73 69 6e 67 20 70 69 70 2e 0a 0a 32 2e 20 43 6f 6e 66 69 67 75 72 65 20 4f 4e 4f 53 20 61 .using.pip...2..Configure.ONOS.a
1de0 73 20 74 68 65 20 72 65 71 75 69 72 65 64 20 4d 4c 32 20 22 6d 65 63 68 61 6e 69 73 6d 5f 64 72 s.the.required.ML2."mechanism_dr
1e00 69 76 65 72 73 22 20 69 6e 0a 20 20 20 6e 65 75 74 72 6f 6e 2f 70 6c 75 67 69 6e 73 2f 6d 6c 32 ivers".in....neutron/plugins/ml2
1e20 2f 6d 6c 32 5f 63 6f 6e 66 2e 69 6e 69 3a 0a 0a 20 20 20 20 6d 65 63 68 61 6e 69 73 6d 5f 64 72 /ml2_conf.ini:......mechanism_dr
1e40 69 76 65 72 73 3d 6f 6e 6f 73 5f 6d 6c 32 0a 0a 33 2e 20 43 6f 6e 66 69 67 75 72 65 20 4f 4e 4f ivers=onos_ml2..3..Configure.ONO
1e60 53 20 63 72 65 64 65 6e 74 69 61 6c 73 20 69 6e 20 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 S.credentials.in.networking_onos
1e80 2f 65 74 63 2f 63 6f 6e 66 5f 6f 6e 6f 73 2e 69 6e 69 2e 0a 0a 34 2e 20 53 74 61 72 74 20 6e 65 /etc/conf_onos.ini...4..Start.ne
1ea0 75 74 72 6f 6e 20 73 65 72 76 65 72 20 6d 65 6e 74 69 6f 6e 69 6e 67 20 6e 65 74 77 6f 72 6b 69 utron.server.mentioning.networki
1ec0 6e 67 5f 6f 6e 6f 73 2f 65 74 63 2f 63 6f 6e 66 5f 6f 6e 6f 73 2e 69 6e 69 20 61 73 0a 20 20 20 ng_onos/etc/conf_onos.ini.as....
1ee0 6f 6e 65 20 6f 66 20 74 68 65 20 63 6f 6e 66 69 67 2d 66 69 6c 65 2e 0a 00 00 00 00 00 00 00 00 one.of.the.config-file..........
1f00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2000 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
2020 70 6c 75 67 69 6e 73 2f 6d 6c 32 2f 64 72 69 76 65 72 2e 70 79 00 00 00 00 00 00 00 00 00 00 00 plugins/ml2/driver.py...........
2040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2060 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
2080 30 30 31 33 34 30 35 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 32 32 31 35 00 20 30 00 00 00 0013405.12627513442.022215..0...
20a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2100 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
2120 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
2140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2200 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 32 30 31 35 20 48 75 61 77 65 69 20 54 65 63 68 #.Copyright.(c).2015.Huawei.Tech
2220 6e 6f 6c 6f 67 69 65 73 20 49 6e 64 69 61 20 50 76 74 20 4c 74 64 0a 23 20 41 6c 6c 20 52 69 67 nologies.India.Pvt.Ltd.#.All.Rig
2240 68 74 73 20 52 65 73 65 72 76 65 64 2e 0a 23 0a 23 20 20 20 20 4c 69 63 65 6e 73 65 64 20 75 6e hts.Reserved..#.#....Licensed.un
2260 64 65 72 20 74 68 65 20 41 70 61 63 68 65 20 4c 69 63 65 6e 73 65 2c 20 56 65 72 73 69 6f 6e 20 der.the.Apache.License,.Version.
2280 32 2e 30 20 28 74 68 65 20 22 4c 69 63 65 6e 73 65 22 29 3b 20 79 6f 75 20 6d 61 79 0a 23 20 20 2.0.(the."License");.you.may.#..
22a0 20 20 6e 6f 74 20 75 73 65 20 74 68 69 73 20 66 69 6c 65 20 65 78 63 65 70 74 20 69 6e 20 63 6f ..not.use.this.file.except.in.co
22c0 6d 70 6c 69 61 6e 63 65 20 77 69 74 68 20 74 68 65 20 4c 69 63 65 6e 73 65 2e 20 59 6f 75 20 6d mpliance.with.the.License..You.m
22e0 61 79 20 6f 62 74 61 69 6e 0a 23 20 20 20 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 4c 69 63 ay.obtain.#....a.copy.of.the.Lic
2300 65 6e 73 65 20 61 74 0a 23 0a 23 20 20 20 20 20 20 20 20 20 68 74 74 70 3a 2f 2f 77 77 77 2e 61 ense.at.#.#.........http://www.a
2320 70 61 63 68 65 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 4c 49 43 45 4e 53 45 2d 32 2e 30 0a 23 pache.org/licenses/LICENSE-2.0.#
2340 0a 23 20 20 20 20 55 6e 6c 65 73 73 20 72 65 71 75 69 72 65 64 20 62 79 20 61 70 70 6c 69 63 61 .#....Unless.required.by.applica
2360 62 6c 65 20 6c 61 77 20 6f 72 20 61 67 72 65 65 64 20 74 6f 20 69 6e 20 77 72 69 74 69 6e 67 2c ble.law.or.agreed.to.in.writing,
2380 20 73 6f 66 74 77 61 72 65 0a 23 20 20 20 20 64 69 73 74 72 69 62 75 74 65 64 20 75 6e 64 65 72 .software.#....distributed.under
23a0 20 74 68 65 20 4c 69 63 65 6e 73 65 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 6f 6e 20 61 .the.License.is.distributed.on.a
23c0 6e 20 22 41 53 20 49 53 22 20 42 41 53 49 53 2c 20 57 49 54 48 4f 55 54 0a 23 20 20 20 20 57 41 n."AS.IS".BASIS,.WITHOUT.#....WA
23e0 52 52 41 4e 54 49 45 53 20 4f 52 20 43 4f 4e 44 49 54 49 4f 4e 53 20 4f 46 20 41 4e 59 20 4b 49 RRANTIES.OR.CONDITIONS.OF.ANY.KI
2400 4e 44 2c 20 65 69 74 68 65 72 20 65 78 70 72 65 73 73 20 6f 72 20 69 6d 70 6c 69 65 64 2e 20 53 ND,.either.express.or.implied..S
2420 65 65 20 74 68 65 0a 23 20 20 20 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 74 68 65 20 73 70 65 63 ee.the.#....License.for.the.spec
2440 69 66 69 63 20 6c 61 6e 67 75 61 67 65 20 67 6f 76 65 72 6e 69 6e 67 20 70 65 72 6d 69 73 73 69 ific.language.governing.permissi
2460 6f 6e 73 20 61 6e 64 20 6c 69 6d 69 74 61 74 69 6f 6e 73 0a 23 20 20 20 20 75 6e 64 65 72 20 74 ons.and.limitations.#....under.t
2480 68 65 20 4c 69 63 65 6e 73 65 2e 0a 0a 66 72 6f 6d 20 6f 73 6c 6f 5f 63 6f 6e 66 69 67 20 69 6d he.License...from.oslo_config.im
24a0 70 6f 72 74 20 63 66 67 0a 66 72 6f 6d 20 6f 73 6c 6f 5f 6c 6f 67 20 69 6d 70 6f 72 74 20 68 65 port.cfg.from.oslo_log.import.he
24c0 6c 70 65 72 73 20 61 73 20 6c 6f 67 5f 68 65 6c 70 65 72 73 0a 66 72 6f 6d 20 6f 73 6c 6f 5f 6c lpers.as.log_helpers.from.oslo_l
24e0 6f 67 20 69 6d 70 6f 72 74 20 6c 6f 67 20 61 73 20 6c 6f 67 67 69 6e 67 0a 0a 66 72 6f 6d 20 6e og.import.log.as.logging..from.n
2500 65 75 74 72 6f 6e 2e 63 6f 6d 6d 6f 6e 20 69 6d 70 6f 72 74 20 63 6f 6e 73 74 61 6e 74 73 20 61 eutron.common.import.constants.a
2520 73 20 6e 5f 63 6f 6e 73 74 0a 66 72 6f 6d 20 6e 65 75 74 72 6f 6e 2e 65 78 74 65 6e 73 69 6f 6e s.n_const.from.neutron.extension
2540 73 20 69 6d 70 6f 72 74 20 70 6f 72 74 62 69 6e 64 69 6e 67 73 0a 66 72 6f 6d 20 6e 65 75 74 72 s.import.portbindings.from.neutr
2560 6f 6e 2e 70 6c 75 67 69 6e 73 2e 63 6f 6d 6d 6f 6e 20 69 6d 70 6f 72 74 20 63 6f 6e 73 74 61 6e on.plugins.common.import.constan
2580 74 73 0a 66 72 6f 6d 20 6e 65 75 74 72 6f 6e 2e 70 6c 75 67 69 6e 73 2e 6d 6c 32 20 69 6d 70 6f ts.from.neutron.plugins.ml2.impo
25a0 72 74 20 64 72 69 76 65 72 5f 61 70 69 20 61 73 20 61 70 69 0a 0a 66 72 6f 6d 20 6e 65 74 77 6f rt.driver_api.as.api..from.netwo
25c0 72 6b 69 6e 67 5f 6f 6e 6f 73 2e 63 6f 6d 6d 6f 6e 20 69 6d 70 6f 72 74 20 63 6f 6e 66 69 67 20 rking_onos.common.import.config.
25e0 20 23 20 6e 6f 71 61 0a 66 72 6f 6d 20 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2e 63 6f 6d .#.noqa.from.networking_onos.com
2600 6d 6f 6e 20 69 6d 70 6f 72 74 20 75 74 69 6c 73 20 61 73 20 6f 6e 6f 73 5f 75 74 69 6c 73 0a 0a mon.import.utils.as.onos_utils..
2620 4c 4f 47 20 3d 20 6c 6f 67 67 69 6e 67 2e 67 65 74 4c 6f 67 67 65 72 28 5f 5f 6e 61 6d 65 5f 5f LOG.=.logging.getLogger(__name__
2640 29 0a 0a 0a 63 6c 61 73 73 20 4f 4e 4f 53 4d 65 63 68 61 6e 69 73 6d 44 72 69 76 65 72 28 61 70 )...class.ONOSMechanismDriver(ap
2660 69 2e 4d 65 63 68 61 6e 69 73 6d 44 72 69 76 65 72 29 3a 0a 0a 20 20 20 20 22 22 22 4f 70 65 6e i.MechanismDriver):......"""Open
2680 20 4e 65 74 77 6f 72 6b 69 6e 67 20 4f 70 65 72 61 74 69 6e 67 20 53 79 73 74 65 6d 20 4d 4c 32 .Networking.Operating.System.ML2
26a0 20 44 72 69 76 65 72 20 66 6f 72 20 4e 65 75 74 72 6f 6e 2e 0a 0a 20 20 20 20 43 6f 64 65 20 77 .Driver.for.Neutron.......Code.w
26c0 68 69 63 68 20 6d 61 6b 65 73 20 63 6f 6d 6d 75 6e 69 63 61 74 69 6f 6e 20 62 65 74 77 65 65 6e hich.makes.communication.between
26e0 20 4f 4e 4f 53 20 61 6e 64 20 4f 70 65 6e 53 74 61 63 6b 20 4e 65 75 74 72 6f 6e 0a 20 20 20 20 .ONOS.and.OpenStack.Neutron.....
2700 70 6f 73 73 69 62 6c 65 2e 0a 20 20 20 20 22 22 22 0a 20 20 20 20 64 65 66 20 5f 5f 69 6e 69 74 possible......""".....def.__init
2720 5f 5f 28 73 65 6c 66 29 3a 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 6f 6e 6f 73 5f 70 61 74 68 __(self):.........self.onos_path
2740 20 3d 20 63 66 67 2e 43 4f 4e 46 2e 6f 6e 6f 73 2e 75 72 6c 5f 70 61 74 68 0a 20 20 20 20 20 20 .=.cfg.CONF.onos.url_path.......
2760 20 20 73 65 6c 66 2e 6f 6e 6f 73 5f 61 75 74 68 20 3d 20 28 63 66 67 2e 43 4f 4e 46 2e 6f 6e 6f ..self.onos_auth.=.(cfg.CONF.ono
2780 73 2e 75 73 65 72 6e 61 6d 65 2c 20 63 66 67 2e 43 4f 4e 46 2e 6f 6e 6f 73 2e 70 61 73 73 77 6f s.username,.cfg.CONF.onos.passwo
27a0 72 64 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 76 69 66 5f 74 79 70 65 20 3d 20 70 6f 72 74 rd).........self.vif_type.=.port
27c0 62 69 6e 64 69 6e 67 73 2e 56 49 46 5f 54 59 50 45 5f 4f 56 53 0a 20 20 20 20 20 20 20 20 73 65 bindings.VIF_TYPE_OVS.........se
27e0 6c 66 2e 76 69 66 5f 64 65 74 61 69 6c 73 20 3d 20 7b 70 6f 72 74 62 69 6e 64 69 6e 67 73 2e 43 lf.vif_details.=.{portbindings.C
2800 41 50 5f 50 4f 52 54 5f 46 49 4c 54 45 52 3a 20 54 72 75 65 7d 0a 0a 20 20 20 20 64 65 66 20 69 AP_PORT_FILTER:.True}......def.i
2820 6e 69 74 69 61 6c 69 7a 65 28 73 65 6c 66 29 3a 0a 20 20 20 20 20 20 20 20 23 20 4e 6f 20 61 63 nitialize(self):.........#.No.ac
2840 74 69 6f 6e 20 72 65 71 75 69 72 65 64 20 61 73 20 6f 66 20 6e 6f 77 2e 20 43 61 6e 20 62 65 20 tion.required.as.of.now..Can.be.
2860 65 78 74 65 6e 64 65 64 20 69 6e 0a 20 20 20 20 20 20 20 20 23 20 74 68 65 20 66 75 74 75 72 65 extended.in.........#.the.future
2880 20 69 66 20 72 65 71 75 69 72 65 64 2e 0a 20 20 20 20 20 20 20 20 70 61 73 73 0a 0a 20 20 20 20 .if.required..........pass......
28a0 40 6c 6f 67 5f 68 65 6c 70 65 72 73 2e 6c 6f 67 5f 6d 65 74 68 6f 64 5f 63 61 6c 6c 0a 20 20 20 @log_helpers.log_method_call....
28c0 20 64 65 66 20 63 72 65 61 74 65 5f 6e 65 74 77 6f 72 6b 5f 70 6f 73 74 63 6f 6d 6d 69 74 28 73 .def.create_network_postcommit(s
28e0 65 6c 66 2c 20 63 6f 6e 74 65 78 74 29 3a 0a 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 elf,.context):.........entity_pa
2900 74 68 20 3d 20 27 6e 65 74 77 6f 72 6b 73 27 0a 20 20 20 20 20 20 20 20 72 65 73 6f 75 72 63 65 th.=.'networks'.........resource
2920 20 3d 20 63 6f 6e 74 65 78 74 2e 63 75 72 72 65 6e 74 2e 63 6f 70 79 28 29 0a 20 20 20 20 20 20 .=.context.current.copy().......
2940 20 20 6f 6e 6f 73 5f 75 74 69 6c 73 2e 73 65 6e 64 5f 6d 73 67 28 73 65 6c 66 2e 6f 6e 6f 73 5f ..onos_utils.send_msg(self.onos_
2960 70 61 74 68 2c 20 73 65 6c 66 2e 6f 6e 6f 73 5f 61 75 74 68 2c 20 27 70 6f 73 74 27 2c 0a 20 20 path,.self.onos_auth,.'post',...
2980 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 ..........................entity
29a0 5f 70 61 74 68 2c 20 7b 27 6e 65 74 77 6f 72 6b 27 3a 20 72 65 73 6f 75 72 63 65 7d 29 0a 0a 20 _path,.{'network':.resource})...
29c0 20 20 20 40 6c 6f 67 5f 68 65 6c 70 65 72 73 2e 6c 6f 67 5f 6d 65 74 68 6f 64 5f 63 61 6c 6c 0a ...@log_helpers.log_method_call.
29e0 20 20 20 20 64 65 66 20 75 70 64 61 74 65 5f 6e 65 74 77 6f 72 6b 5f 70 6f 73 74 63 6f 6d 6d 69 ....def.update_network_postcommi
2a00 74 28 73 65 6c 66 2c 20 63 6f 6e 74 65 78 74 29 3a 0a 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 t(self,.context):.........entity
2a20 5f 70 61 74 68 20 3d 20 27 6e 65 74 77 6f 72 6b 73 2f 27 20 2b 20 63 6f 6e 74 65 78 74 2e 63 75 _path.=.'networks/'.+.context.cu
2a40 72 72 65 6e 74 5b 27 69 64 27 5d 0a 20 20 20 20 20 20 20 20 72 65 73 6f 75 72 63 65 20 3d 20 63 rrent['id'].........resource.=.c
2a60 6f 6e 74 65 78 74 2e 63 75 72 72 65 6e 74 2e 63 6f 70 79 28 29 0a 20 20 20 20 20 20 20 20 6f 6e ontext.current.copy().........on
2a80 6f 73 5f 75 74 69 6c 73 2e 73 65 6e 64 5f 6d 73 67 28 73 65 6c 66 2e 6f 6e 6f 73 5f 70 61 74 68 os_utils.send_msg(self.onos_path
2aa0 2c 20 73 65 6c 66 2e 6f 6e 6f 73 5f 61 75 74 68 2c 20 27 70 75 74 27 2c 0a 20 20 20 20 20 20 20 ,.self.onos_auth,.'put',........
2ac0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 74 68 .....................entity_path
2ae0 2c 20 7b 27 6e 65 74 77 6f 72 6b 27 3a 20 72 65 73 6f 75 72 63 65 7d 29 0a 0a 20 20 20 20 40 6c ,.{'network':.resource})......@l
2b00 6f 67 5f 68 65 6c 70 65 72 73 2e 6c 6f 67 5f 6d 65 74 68 6f 64 5f 63 61 6c 6c 0a 20 20 20 20 64 og_helpers.log_method_call.....d
2b20 65 66 20 64 65 6c 65 74 65 5f 6e 65 74 77 6f 72 6b 5f 70 6f 73 74 63 6f 6d 6d 69 74 28 73 65 6c ef.delete_network_postcommit(sel
2b40 66 2c 20 63 6f 6e 74 65 78 74 29 3a 0a 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 74 68 f,.context):.........entity_path
2b60 20 3d 20 27 6e 65 74 77 6f 72 6b 73 2f 27 20 2b 20 63 6f 6e 74 65 78 74 2e 63 75 72 72 65 6e 74 .=.'networks/'.+.context.current
2b80 5b 27 69 64 27 5d 0a 20 20 20 20 20 20 20 20 6f 6e 6f 73 5f 75 74 69 6c 73 2e 73 65 6e 64 5f 6d ['id'].........onos_utils.send_m
2ba0 73 67 28 73 65 6c 66 2e 6f 6e 6f 73 5f 70 61 74 68 2c 20 73 65 6c 66 2e 6f 6e 6f 73 5f 61 75 74 sg(self.onos_path,.self.onos_aut
2bc0 68 2c 20 27 64 65 6c 65 74 65 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 h,.'delete',....................
2be0 20 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 74 68 29 0a 0a 20 20 20 20 40 6c 6f 67 5f .........entity_path)......@log_
2c00 68 65 6c 70 65 72 73 2e 6c 6f 67 5f 6d 65 74 68 6f 64 5f 63 61 6c 6c 0a 20 20 20 20 64 65 66 20 helpers.log_method_call.....def.
2c20 63 72 65 61 74 65 5f 73 75 62 6e 65 74 5f 70 6f 73 74 63 6f 6d 6d 69 74 28 73 65 6c 66 2c 20 63 create_subnet_postcommit(self,.c
2c40 6f 6e 74 65 78 74 29 3a 0a 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 74 68 20 3d 20 27 ontext):.........entity_path.=.'
2c60 73 75 62 6e 65 74 73 27 0a 20 20 20 20 20 20 20 20 72 65 73 6f 75 72 63 65 20 3d 20 63 6f 6e 74 subnets'.........resource.=.cont
2c80 65 78 74 2e 63 75 72 72 65 6e 74 2e 63 6f 70 79 28 29 0a 20 20 20 20 20 20 20 20 6f 6e 6f 73 5f ext.current.copy().........onos_
2ca0 75 74 69 6c 73 2e 73 65 6e 64 5f 6d 73 67 28 73 65 6c 66 2e 6f 6e 6f 73 5f 70 61 74 68 2c 20 73 utils.send_msg(self.onos_path,.s
2cc0 65 6c 66 2e 6f 6e 6f 73 5f 61 75 74 68 2c 20 27 70 6f 73 74 27 2c 0a 20 20 20 20 20 20 20 20 20 elf.onos_auth,.'post',..........
2ce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 74 68 2c 20 ...................entity_path,.
2d00 7b 27 73 75 62 6e 65 74 27 3a 20 72 65 73 6f 75 72 63 65 7d 29 0a 0a 20 20 20 20 40 6c 6f 67 5f {'subnet':.resource})......@log_
2d20 68 65 6c 70 65 72 73 2e 6c 6f 67 5f 6d 65 74 68 6f 64 5f 63 61 6c 6c 0a 20 20 20 20 64 65 66 20 helpers.log_method_call.....def.
2d40 75 70 64 61 74 65 5f 73 75 62 6e 65 74 5f 70 6f 73 74 63 6f 6d 6d 69 74 28 73 65 6c 66 2c 20 63 update_subnet_postcommit(self,.c
2d60 6f 6e 74 65 78 74 29 3a 0a 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 74 68 20 3d 20 27 ontext):.........entity_path.=.'
2d80 73 75 62 6e 65 74 73 2f 27 20 2b 20 63 6f 6e 74 65 78 74 2e 63 75 72 72 65 6e 74 5b 27 69 64 27 subnets/'.+.context.current['id'
2da0 5d 0a 20 20 20 20 20 20 20 20 72 65 73 6f 75 72 63 65 20 3d 20 63 6f 6e 74 65 78 74 2e 63 75 72 ].........resource.=.context.cur
2dc0 72 65 6e 74 2e 63 6f 70 79 28 29 0a 20 20 20 20 20 20 20 20 6f 6e 6f 73 5f 75 74 69 6c 73 2e 73 rent.copy().........onos_utils.s
2de0 65 6e 64 5f 6d 73 67 28 73 65 6c 66 2e 6f 6e 6f 73 5f 70 61 74 68 2c 20 73 65 6c 66 2e 6f 6e 6f end_msg(self.onos_path,.self.ono
2e00 73 5f 61 75 74 68 2c 20 27 70 75 74 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 s_auth,.'put',..................
2e20 20 20 20 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 74 68 2c 20 7b 27 73 75 62 6e 65 74 ...........entity_path,.{'subnet
2e40 27 3a 20 72 65 73 6f 75 72 63 65 7d 29 0a 0a 20 20 20 20 40 6c 6f 67 5f 68 65 6c 70 65 72 73 2e ':.resource})......@log_helpers.
2e60 6c 6f 67 5f 6d 65 74 68 6f 64 5f 63 61 6c 6c 0a 20 20 20 20 64 65 66 20 64 65 6c 65 74 65 5f 73 log_method_call.....def.delete_s
2e80 75 62 6e 65 74 5f 70 6f 73 74 63 6f 6d 6d 69 74 28 73 65 6c 66 2c 20 63 6f 6e 74 65 78 74 29 3a ubnet_postcommit(self,.context):
2ea0 0a 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 74 68 20 3d 20 27 73 75 62 6e 65 74 73 2f .........entity_path.=.'subnets/
2ec0 27 20 2b 20 63 6f 6e 74 65 78 74 2e 63 75 72 72 65 6e 74 5b 27 69 64 27 5d 0a 20 20 20 20 20 20 '.+.context.current['id'].......
2ee0 20 20 6f 6e 6f 73 5f 75 74 69 6c 73 2e 73 65 6e 64 5f 6d 73 67 28 73 65 6c 66 2e 6f 6e 6f 73 5f ..onos_utils.send_msg(self.onos_
2f00 70 61 74 68 2c 20 73 65 6c 66 2e 6f 6e 6f 73 5f 61 75 74 68 2c 20 27 64 65 6c 65 74 65 27 2c 0a path,.self.onos_auth,.'delete',.
2f20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 74 69 ............................enti
2f40 74 79 5f 70 61 74 68 29 0a 0a 20 20 20 20 40 6c 6f 67 5f 68 65 6c 70 65 72 73 2e 6c 6f 67 5f 6d ty_path)......@log_helpers.log_m
2f60 65 74 68 6f 64 5f 63 61 6c 6c 0a 20 20 20 20 64 65 66 20 63 72 65 61 74 65 5f 70 6f 72 74 5f 70 ethod_call.....def.create_port_p
2f80 6f 73 74 63 6f 6d 6d 69 74 28 73 65 6c 66 2c 20 63 6f 6e 74 65 78 74 29 3a 0a 20 20 20 20 20 20 ostcommit(self,.context):.......
2fa0 20 20 65 6e 74 69 74 79 5f 70 61 74 68 20 3d 20 27 70 6f 72 74 73 27 0a 20 20 20 20 20 20 20 20 ..entity_path.=.'ports'.........
2fc0 72 65 73 6f 75 72 63 65 20 3d 20 63 6f 6e 74 65 78 74 2e 63 75 72 72 65 6e 74 2e 63 6f 70 79 28 resource.=.context.current.copy(
2fe0 29 0a 20 20 20 20 20 20 20 20 6f 6e 6f 73 5f 75 74 69 6c 73 2e 73 65 6e 64 5f 6d 73 67 28 73 65 ).........onos_utils.send_msg(se
3000 6c 66 2e 6f 6e 6f 73 5f 70 61 74 68 2c 20 73 65 6c 66 2e 6f 6e 6f 73 5f 61 75 74 68 2c 20 27 70 lf.onos_path,.self.onos_auth,.'p
3020 6f 73 74 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ost',...........................
3040 20 20 65 6e 74 69 74 79 5f 70 61 74 68 2c 20 7b 27 70 6f 72 74 27 3a 20 72 65 73 6f 75 72 63 65 ..entity_path,.{'port':.resource
3060 7d 29 0a 0a 20 20 20 20 40 6c 6f 67 5f 68 65 6c 70 65 72 73 2e 6c 6f 67 5f 6d 65 74 68 6f 64 5f })......@log_helpers.log_method_
3080 63 61 6c 6c 0a 20 20 20 20 64 65 66 20 75 70 64 61 74 65 5f 70 6f 72 74 5f 70 6f 73 74 63 6f 6d call.....def.update_port_postcom
30a0 6d 69 74 28 73 65 6c 66 2c 20 63 6f 6e 74 65 78 74 29 3a 0a 20 20 20 20 20 20 20 20 65 6e 74 69 mit(self,.context):.........enti
30c0 74 79 5f 70 61 74 68 20 3d 20 27 70 6f 72 74 73 2f 27 20 2b 20 63 6f 6e 74 65 78 74 2e 63 75 72 ty_path.=.'ports/'.+.context.cur
30e0 72 65 6e 74 5b 27 69 64 27 5d 0a 20 20 20 20 20 20 20 20 72 65 73 6f 75 72 63 65 20 3d 20 63 6f rent['id'].........resource.=.co
3100 6e 74 65 78 74 2e 63 75 72 72 65 6e 74 2e 63 6f 70 79 28 29 0a 20 20 20 20 20 20 20 20 6f 6e 6f ntext.current.copy().........ono
3120 73 5f 75 74 69 6c 73 2e 73 65 6e 64 5f 6d 73 67 28 73 65 6c 66 2e 6f 6e 6f 73 5f 70 61 74 68 2c s_utils.send_msg(self.onos_path,
3140 20 73 65 6c 66 2e 6f 6e 6f 73 5f 61 75 74 68 2c 20 27 70 75 74 27 2c 0a 20 20 20 20 20 20 20 20 .self.onos_auth,.'put',.........
3160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 74 68 2c ....................entity_path,
3180 20 7b 27 70 6f 72 74 27 3a 20 72 65 73 6f 75 72 63 65 7d 29 0a 0a 20 20 20 20 40 6c 6f 67 5f 68 .{'port':.resource})......@log_h
31a0 65 6c 70 65 72 73 2e 6c 6f 67 5f 6d 65 74 68 6f 64 5f 63 61 6c 6c 0a 20 20 20 20 64 65 66 20 64 elpers.log_method_call.....def.d
31c0 65 6c 65 74 65 5f 70 6f 72 74 5f 70 6f 73 74 63 6f 6d 6d 69 74 28 73 65 6c 66 2c 20 63 6f 6e 74 elete_port_postcommit(self,.cont
31e0 65 78 74 29 3a 0a 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 74 68 20 3d 20 27 70 6f 72 ext):.........entity_path.=.'por
3200 74 73 2f 27 20 2b 20 63 6f 6e 74 65 78 74 2e 63 75 72 72 65 6e 74 5b 27 69 64 27 5d 0a 20 20 20 ts/'.+.context.current['id']....
3220 20 20 20 20 20 6f 6e 6f 73 5f 75 74 69 6c 73 2e 73 65 6e 64 5f 6d 73 67 28 73 65 6c 66 2e 6f 6e .....onos_utils.send_msg(self.on
3240 6f 73 5f 70 61 74 68 2c 20 73 65 6c 66 2e 6f 6e 6f 73 5f 61 75 74 68 2c 20 27 64 65 6c 65 74 65 os_path,.self.onos_auth,.'delete
3260 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 ',.............................e
3280 6e 74 69 74 79 5f 70 61 74 68 29 0a 0a 20 20 20 20 40 6c 6f 67 5f 68 65 6c 70 65 72 73 2e 6c 6f ntity_path)......@log_helpers.lo
32a0 67 5f 6d 65 74 68 6f 64 5f 63 61 6c 6c 0a 20 20 20 20 64 65 66 20 62 69 6e 64 5f 70 6f 72 74 28 g_method_call.....def.bind_port(
32c0 73 65 6c 66 2c 20 63 6f 6e 74 65 78 74 29 3a 0a 20 20 20 20 20 20 20 20 22 22 22 53 65 74 20 70 self,.context):........."""Set.p
32e0 6f 72 74 20 62 69 6e 64 69 6e 67 20 64 61 74 61 20 66 6f 72 20 75 73 65 20 77 69 74 68 20 6e 6f ort.binding.data.for.use.with.no
3300 76 61 2e 22 22 22 0a 20 20 20 20 20 20 20 20 4c 4f 47 2e 64 65 62 75 67 28 22 41 74 74 65 6d 70 va.""".........LOG.debug("Attemp
3320 74 69 6e 67 20 74 6f 20 62 69 6e 64 20 70 6f 72 74 20 25 28 70 6f 72 74 29 73 20 6f 6e 20 6e 65 ting.to.bind.port.%(port)s.on.ne
3340 74 77 6f 72 6b 20 25 28 6e 65 74 77 6f 72 6b 29 73 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 twork.%(network)s",.............
3360 20 20 20 20 20 20 7b 27 70 6f 72 74 27 3a 20 63 6f 6e 74 65 78 74 2e 63 75 72 72 65 6e 74 5b 27 ......{'port':.context.current['
3380 69 64 27 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 6e 65 74 77 6f 72 id'],....................'networ
33a0 6b 27 3a 20 63 6f 6e 74 65 78 74 2e 6e 65 74 77 6f 72 6b 2e 63 75 72 72 65 6e 74 5b 27 69 64 27 k':.context.network.current['id'
33c0 5d 7d 29 0a 20 20 20 20 20 20 20 20 23 20 50 72 65 70 61 72 65 64 20 70 6f 72 74 69 6e 67 20 62 ]}).........#.Prepared.porting.b
33e0 69 6e 64 69 6e 67 20 64 61 74 61 0a 20 20 20 20 20 20 20 20 66 6f 72 20 73 65 67 6d 65 6e 74 20 inding.data.........for.segment.
3400 69 6e 20 63 6f 6e 74 65 78 74 2e 73 65 67 6d 65 6e 74 73 5f 74 6f 5f 62 69 6e 64 3a 0a 20 20 20 in.context.segments_to_bind:....
3420 20 20 20 20 20 20 20 20 20 69 66 20 73 65 6c 66 2e 63 68 65 63 6b 5f 73 65 67 6d 65 6e 74 28 73 .........if.self.check_segment(s
3440 65 67 6d 65 6e 74 29 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 74 65 78 74 egment):.................context
3460 2e 73 65 74 5f 62 69 6e 64 69 6e 67 28 73 65 67 6d 65 6e 74 5b 61 70 69 2e 49 44 5d 2c 0a 20 20 .set_binding(segment[api.ID],...
3480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
34a0 20 20 73 65 6c 66 2e 76 69 66 5f 74 79 70 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..self.vif_type,................
34c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 76 69 66 5f 64 65 .....................self.vif_de
34e0 74 61 69 6c 73 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tails,..........................
3500 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 75 73 3d 6e 5f 63 6f 6e 73 74 2e 50 4f 52 54 5f 53 ...........status=n_const.PORT_S
3520 54 41 54 55 53 5f 41 43 54 49 56 45 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4c 4f TATUS_ACTIVE).................LO
3540 47 2e 64 65 62 75 67 28 22 50 6f 72 74 20 62 6f 75 6e 64 20 73 75 63 63 65 73 73 66 75 6c 20 66 G.debug("Port.bound.successful.f
3560 6f 72 20 73 65 67 6d 65 6e 74 3a 20 25 73 22 2c 20 73 65 67 6d 65 6e 74 29 0a 20 20 20 20 20 20 or.segment:.%s",.segment).......
3580 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 ..........return.............els
35a0 65 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4c 4f 47 2e 64 65 62 75 67 28 22 50 6f e:.................LOG.debug("Po
35c0 72 74 20 62 6f 75 6e 64 20 75 6e 2d 73 75 63 63 65 73 73 66 75 6c 74 20 66 6f 72 20 73 65 67 6d rt.bound.un-successfult.for.segm
35e0 65 6e 74 20 49 44 20 25 28 69 64 29 73 2c 20 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ent.ID.%(id)s,."................
3600 20 20 20 20 20 20 20 20 20 20 20 22 73 65 67 6d 65 6e 74 20 25 28 73 65 67 29 73 2c 20 70 68 79 ..........."segment.%(seg)s,.phy
3620 73 20 6e 65 74 20 25 28 70 68 79 73 6e 65 74 29 73 2c 20 61 6e 64 20 22 0a 20 20 20 20 20 20 20 s.net.%(physnet)s,.and."........
3640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 6e 65 74 77 6f 72 6b 20 74 79 70 65 ..................."network.type
3660 20 25 28 6e 65 74 74 79 70 65 29 73 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .%(nettype)s",..................
3680 20 20 20 20 20 20 20 20 20 7b 27 69 64 27 3a 20 73 65 67 6d 65 6e 74 5b 61 70 69 2e 49 44 5d 2c .........{'id':.segment[api.ID],
36a0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 73 65 67 ............................'seg
36c0 27 3a 20 73 65 67 6d 65 6e 74 5b 61 70 69 2e 53 45 47 4d 45 4e 54 41 54 49 4f 4e 5f 49 44 5d 2c ':.segment[api.SEGMENTATION_ID],
36e0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 70 68 79 ............................'phy
3700 73 6e 65 74 27 3a 20 73 65 67 6d 65 6e 74 5b 61 70 69 2e 50 48 59 53 49 43 41 4c 5f 4e 45 54 57 snet':.segment[api.PHYSICAL_NETW
3720 4f 52 4b 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ORK],...........................
3740 20 27 6e 65 74 74 79 70 65 27 3a 20 73 65 67 6d 65 6e 74 5b 61 70 69 2e 4e 45 54 57 4f 52 4b 5f .'nettype':.segment[api.NETWORK_
3760 54 59 50 45 5d 7d 29 0a 0a 20 20 20 20 40 6c 6f 67 5f 68 65 6c 70 65 72 73 2e 6c 6f 67 5f 6d 65 TYPE]})......@log_helpers.log_me
3780 74 68 6f 64 5f 63 61 6c 6c 0a 20 20 20 20 64 65 66 20 63 68 65 63 6b 5f 73 65 67 6d 65 6e 74 28 thod_call.....def.check_segment(
37a0 73 65 6c 66 2c 20 73 65 67 6d 65 6e 74 29 3a 0a 20 20 20 20 20 20 20 20 22 22 22 43 68 65 63 6b self,.segment):........."""Check
37c0 20 77 68 65 74 68 65 72 20 73 65 67 6d 65 6e 74 20 69 73 20 76 61 6c 69 64 20 66 6f 72 20 74 68 .whether.segment.is.valid.for.th
37e0 65 20 4f 4e 4f 53 20 4d 65 63 68 61 6e 69 73 6d 44 72 69 76 65 72 2e 22 22 22 0a 0a 20 20 20 20 e.ONOS.MechanismDriver."""......
3800 20 20 20 20 72 65 74 75 72 6e 20 73 65 67 6d 65 6e 74 5b 61 70 69 2e 4e 45 54 57 4f 52 4b 5f 54 ....return.segment[api.NETWORK_T
3820 59 50 45 5d 20 69 6e 20 5b 63 6f 6e 73 74 61 6e 74 73 2e 54 59 50 45 5f 4c 4f 43 41 4c 2c 0a 20 YPE].in.[constants.TYPE_LOCAL,..
3840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
3860 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 61 6e 74 73 2e 54 59 50 45 5f 47 52 45 2c 0a ............constants.TYPE_GRE,.
3880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
38a0 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 61 6e 74 73 2e 54 59 50 45 5f 56 58 4c 41 .............constants.TYPE_VXLA
38c0 4e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 N,..............................
38e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 61 6e 74 73 2e 54 59 50 45 5f 56 ................constants.TYPE_V
3900 4c 41 4e 5d 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 LAN]............................
3920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3a00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
3a20 70 6c 75 67 69 6e 73 2f 6d 6c 32 2f 5f 5f 69 6e 69 74 5f 5f 2e 70 79 00 00 00 00 00 00 00 00 00 plugins/ml2/__init__.py.........
3a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3a60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
3a80 30 30 30 30 30 30 30 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 32 34 34 34 00 20 30 00 00 00 0000000.12627513442.022444..0...
3aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3b00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
3b20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
3b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3c00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
3c20 70 6c 75 67 69 6e 73 2f 6c 33 2f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 plugins/l3/.....................
3c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3c60 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000755.0001750.0001750.0000
3c80 30 30 30 30 30 30 30 00 31 33 30 35 32 37 37 30 30 37 34 00 30 32 30 31 37 30 00 20 35 00 00 00 0000000.13052770074.020170..5...
3ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3d00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
3d20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
3d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3e00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
3e20 70 6c 75 67 69 6e 73 2f 6c 33 2f 52 45 41 44 4d 45 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 plugins/l3/README...............
3e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3e60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
3e80 30 30 30 32 32 32 35 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 31 30 35 32 00 20 30 00 00 00 0002225.12627513442.021052..0...
3ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
3f20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
3f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4000 4f 70 65 6e 20 4e 65 74 77 6f 72 6b 69 6e 67 20 4f 70 65 72 61 74 69 6e 67 20 53 79 73 74 65 6d Open.Networking.Operating.System
4020 20 28 4f 4e 4f 53 29 20 4c 33 20 50 6c 75 67 69 6e 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d .(ONOS).L3.Plugin.==============
4040 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
4060 3d 3d 3d 0a 4f 4e 4f 53 20 69 73 20 61 20 63 61 72 72 69 65 72 20 67 72 61 64 65 20 53 44 4e 20 ===.ONOS.is.a.carrier.grade.SDN.
4080 6f 70 65 6e 20 6f 70 65 72 61 74 69 6e 67 20 73 79 73 74 65 6d 20 64 65 73 69 67 6e 65 64 20 66 open.operating.system.designed.f
40a0 6f 72 0a 48 69 67 68 20 41 76 61 69 6c 61 62 69 6c 69 74 79 2c 20 73 63 61 6c 65 2d 6f 75 74 20 or.High.Availability,.scale-out.
40c0 61 6e 64 20 62 65 74 74 65 72 20 70 65 72 66 6f 72 6d 61 6e 63 65 2e 0a 0a 20 20 20 20 68 74 74 and.better.performance.......htt
40e0 70 3a 2f 2f 77 77 77 2e 6f 6e 6f 73 70 72 6f 6a 65 63 74 2e 6f 72 67 2f 0a 0a 4d 6f 64 65 20 6f p://www.onosproject.org/..Mode.o
4100 66 20 57 6f 72 6b 69 6e 67 3a 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 6e 65 74 77 f.Working:.================.netw
4120 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2e 70 6c 75 67 69 6e 73 2e 6c 33 20 64 65 66 69 6e 65 20 6f 6e orking-onos.plugins.l3.define.on
4140 6f 73 20 70 6c 75 67 2d 69 6e 20 66 6f 72 20 73 75 70 70 6f 72 74 69 6e 67 20 6e 65 75 74 72 6f os.plug-in.for.supporting.neutro
4160 6e 27 73 20 72 6f 75 74 65 72 0a 66 75 6e 63 74 69 6f 6e 61 6c 69 74 79 2e 20 54 68 69 73 20 73 n's.router.functionality..This.s
4180 68 69 6d 20 6c 61 79 65 72 20 6d 61 6b 65 73 20 74 68 65 20 63 6f 6d 6d 75 6e 69 63 61 74 69 6f him.layer.makes.the.communicatio
41a0 6e 20 62 65 74 77 65 65 6e 20 4f 4e 4f 53 20 61 6e 64 0a 4f 70 65 6e 53 74 61 63 6b 20 6e 65 75 n.between.ONOS.and.OpenStack.neu
41c0 74 72 6f 6e 20 70 6f 73 73 69 62 6c 65 20 76 69 61 20 52 45 53 54 20 63 61 6c 6c 2e 0a 54 68 65 tron.possible.via.REST.call..The
41e0 20 64 72 69 76 65 72 20 63 6f 64 65 20 63 61 6e 20 62 65 20 64 6f 77 6e 6c 6f 61 64 65 64 20 66 .driver.code.can.be.downloaded.f
4200 72 6f 6d 3a 0a 0a 20 20 20 20 68 74 74 70 73 3a 2f 2f 67 69 74 2e 6f 70 65 6e 73 74 61 63 6b 2e rom:......https://git.openstack.
4220 6f 72 67 2f 63 67 69 74 2f 6f 70 65 6e 73 74 61 63 6b 2f 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e org/cgit/openstack/networking-on
4240 6f 73 0a 0a 55 73 69 6e 67 20 4f 4e 4f 53 20 4c 33 20 50 6c 75 67 69 6e 0a 3d 3d 3d 3d 3d 3d 3d os..Using.ONOS.L3.Plugin.=======
4260 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 54 6f 20 75 73 65 20 4f 4e 4f 53 20 4c 33 20 50 6c 75 =============.To.use.ONOS.L3.Plu
4280 67 69 6e 20 6f 6e 65 20 73 68 6f 75 6c 64 0a 31 2e 20 4d 61 6b 65 20 73 75 72 65 20 6e 65 74 77 gin.one.should.1..Make.sure.netw
42a0 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 20 63 6f 64 65 20 69 73 20 64 6f 77 6e 6c 6f 61 64 65 64 20 61 orking-onos.code.is.downloaded.a
42c0 6e 64 20 69 6e 73 74 61 6c 6c 65 64 2e 20 49 66 20 64 6f 69 6e 67 0a 20 20 20 6d 61 6e 75 61 6c nd.installed..If.doing....manual
42e0 6c 79 20 74 68 65 6e 20 64 6f 77 6e 6c 6f 61 64 20 74 68 65 20 63 6f 64 65 2c 20 67 6f 20 69 6e ly.then.download.the.code,.go.in
4300 73 69 64 65 20 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 20 66 6f 6c 64 65 72 0a 20 20 20 61 side.networking-onos.folder....a
4320 6e 64 20 66 69 6e 61 6c 6c 79 20 72 75 6e 20 22 73 75 64 6f 20 70 79 74 68 6f 6e 20 73 65 74 75 nd.finally.run."sudo.python.setu
4340 70 2e 70 79 20 69 6e 73 74 61 6c 6c 22 20 6f 74 68 65 72 77 69 73 65 20 64 6f 77 6e 6c 6f 61 64 p.py.install".otherwise.download
4360 20 74 68 65 0a 20 20 20 72 65 71 75 69 72 65 64 20 70 61 63 6b 61 67 65 20 76 65 72 73 69 6f 6e .the....required.package.version
4380 20 66 72 6f 6d 20 22 68 74 74 70 73 3a 2f 2f 70 79 70 69 2e 70 79 74 68 6f 6e 2e 6f 72 67 2f 70 .from."https://pypi.python.org/p
43a0 79 70 69 2f 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 22 0a 20 20 20 61 6e 64 20 69 6e 73 ypi/networking-onos/"....and.ins
43c0 74 61 6c 6c 20 75 73 69 6e 67 20 70 69 70 2e 0a 0a 32 2e 20 43 6f 6e 66 69 67 75 72 65 20 4f 4e tall.using.pip...2..Configure.ON
43e0 4f 53 20 63 72 65 64 65 6e 74 69 61 6c 73 20 69 6e 20 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f OS.credentials.in.networking_ono
4400 73 2f 65 74 63 2f 63 6f 6e 66 5f 6f 6e 6f 73 2e 69 6e 69 2e 0a 0a 33 2e 20 53 74 61 72 74 20 6e s/etc/conf_onos.ini...3..Start.n
4420 65 75 74 72 6f 6e 20 73 65 72 76 65 72 20 6d 65 6e 74 69 6f 6e 69 6e 67 20 6e 65 74 77 6f 72 6b eutron.server.mentioning.network
4440 69 6e 67 5f 6f 6e 6f 73 2f 65 74 63 2f 63 6f 6e 66 5f 6f 6e 6f 73 2e 69 6e 69 20 61 73 0a 20 20 ing_onos/etc/conf_onos.ini.as...
4460 20 6f 6e 65 20 6f 66 20 74 68 65 20 63 6f 6e 66 69 67 2d 66 69 6c 65 20 77 69 74 68 20 4f 4e 4f .one.of.the.config-file.with.ONO
4480 53 20 4c 33 20 50 6c 75 67 69 6e 20 73 75 70 70 6f 72 74 2e 0a 00 00 00 00 00 00 00 00 00 00 00 S.L3.Plugin.support.............
44a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
44c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
44e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
45a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
45c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
45e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4600 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
4620 70 6c 75 67 69 6e 73 2f 6c 33 2f 64 72 69 76 65 72 2e 70 79 00 00 00 00 00 00 00 00 00 00 00 00 plugins/l3/driver.py............
4640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4660 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
4680 30 30 31 32 33 34 35 00 31 33 30 35 32 37 37 30 30 37 34 00 30 32 32 30 34 32 00 20 30 00 00 00 0012345.13052770074.022042..0...
46a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
46c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
46e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4700 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
4720 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
4740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
47a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
47c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
47e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
4800 23 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 31 35 20 48 75 61 77 65 69 20 54 65 63 68 #.Copyright.(C).2015.Huawei.Tech
4820 6e 6f 6c 6f 67 69 65 73 20 49 6e 64 69 61 20 50 76 74 20 4c 74 64 2e 0a 23 20 41 6c 6c 20 52 69 nologies.India.Pvt.Ltd..#.All.Ri
4840 67 68 74 73 20 52 65 73 65 72 76 65 64 2e 0a 23 0a 23 20 20 4c 69 63 65 6e 73 65 64 20 75 6e 64 ghts.Reserved..#.#..Licensed.und
4860 65 72 20 74 68 65 20 41 70 61 63 68 65 20 4c 69 63 65 6e 73 65 2c 20 56 65 72 73 69 6f 6e 20 32 er.the.Apache.License,.Version.2
4880 2e 30 20 28 74 68 65 20 22 4c 69 63 65 6e 73 65 22 29 3b 20 79 6f 75 20 6d 61 79 0a 23 20 20 6e .0.(the."License");.you.may.#..n
48a0 6f 74 20 75 73 65 20 74 68 69 73 20 66 69 6c 65 20 65 78 63 65 70 74 20 69 6e 20 63 6f 6d 70 6c ot.use.this.file.except.in.compl
48c0 69 61 6e 63 65 20 77 69 74 68 20 74 68 65 20 4c 69 63 65 6e 73 65 2e 20 59 6f 75 20 6d 61 79 20 iance.with.the.License..You.may.
48e0 6f 62 74 61 69 6e 0a 23 20 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 4c 69 63 65 6e 73 65 20 obtain.#..a.copy.of.the.License.
4900 61 74 0a 23 0a 23 20 20 20 20 20 20 20 68 74 74 70 3a 2f 2f 77 77 77 2e 61 70 61 63 68 65 2e 6f at.#.#.......http://www.apache.o
4920 72 67 2f 6c 69 63 65 6e 73 65 73 2f 4c 49 43 45 4e 53 45 2d 32 2e 30 0a 23 0a 23 20 20 55 6e 6c rg/licenses/LICENSE-2.0.#.#..Unl
4940 65 73 73 20 72 65 71 75 69 72 65 64 20 62 79 20 61 70 70 6c 69 63 61 62 6c 65 20 6c 61 77 20 6f ess.required.by.applicable.law.o
4960 72 20 61 67 72 65 65 64 20 74 6f 20 69 6e 20 77 72 69 74 69 6e 67 2c 20 73 6f 66 74 77 61 72 65 r.agreed.to.in.writing,.software
4980 0a 23 20 20 64 69 73 74 72 69 62 75 74 65 64 20 75 6e 64 65 72 20 74 68 65 20 4c 69 63 65 6e 73 .#..distributed.under.the.Licens
49a0 65 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 6f 6e 20 61 6e 20 22 41 53 20 49 53 22 20 42 e.is.distributed.on.an."AS.IS".B
49c0 41 53 49 53 2c 20 57 49 54 48 4f 55 54 0a 23 20 20 57 41 52 52 41 4e 54 49 45 53 20 4f 52 20 43 ASIS,.WITHOUT.#..WARRANTIES.OR.C
49e0 4f 4e 44 49 54 49 4f 4e 53 20 4f 46 20 41 4e 59 20 4b 49 4e 44 2c 20 65 69 74 68 65 72 20 65 78 ONDITIONS.OF.ANY.KIND,.either.ex
4a00 70 72 65 73 73 20 6f 72 20 69 6d 70 6c 69 65 64 2e 20 53 65 65 20 74 68 65 0a 23 20 20 4c 69 63 press.or.implied..See.the.#..Lic
4a20 65 6e 73 65 20 66 6f 72 20 74 68 65 20 73 70 65 63 69 66 69 63 20 6c 61 6e 67 75 61 67 65 20 67 ense.for.the.specific.language.g
4a40 6f 76 65 72 6e 69 6e 67 20 70 65 72 6d 69 73 73 69 6f 6e 73 20 61 6e 64 20 6c 69 6d 69 74 61 74 overning.permissions.and.limitat
4a60 69 6f 6e 73 0a 23 20 20 75 6e 64 65 72 20 74 68 65 20 4c 69 63 65 6e 73 65 2e 0a 23 0a 0a 66 72 ions.#..under.the.License..#..fr
4a80 6f 6d 20 6f 73 6c 6f 5f 63 6f 6e 66 69 67 20 69 6d 70 6f 72 74 20 63 66 67 0a 0a 66 72 6f 6d 20 om.oslo_config.import.cfg..from.
4aa0 6e 65 75 74 72 6f 6e 2e 61 70 69 2e 72 70 63 2e 61 67 65 6e 74 6e 6f 74 69 66 69 65 72 73 20 69 neutron.api.rpc.agentnotifiers.i
4ac0 6d 70 6f 72 74 20 6c 33 5f 72 70 63 5f 61 67 65 6e 74 5f 61 70 69 0a 66 72 6f 6d 20 6e 65 75 74 mport.l3_rpc_agent_api.from.neut
4ae0 72 6f 6e 2e 61 70 69 2e 72 70 63 2e 68 61 6e 64 6c 65 72 73 20 69 6d 70 6f 72 74 20 6c 33 5f 72 ron.api.rpc.handlers.import.l3_r
4b00 70 63 0a 66 72 6f 6d 20 6e 65 75 74 72 6f 6e 2e 63 6f 6d 6d 6f 6e 20 69 6d 70 6f 72 74 20 63 6f pc.from.neutron.common.import.co
4b20 6e 73 74 61 6e 74 73 20 61 73 20 71 5f 63 6f 6e 73 74 0a 66 72 6f 6d 20 6e 65 75 74 72 6f 6e 2e nstants.as.q_const.from.neutron.
4b40 63 6f 6d 6d 6f 6e 20 69 6d 70 6f 72 74 20 72 70 63 20 61 73 20 6e 5f 72 70 63 0a 66 72 6f 6d 20 common.import.rpc.as.n_rpc.from.
4b60 6e 65 75 74 72 6f 6e 2e 63 6f 6d 6d 6f 6e 20 69 6d 70 6f 72 74 20 74 6f 70 69 63 73 0a 66 72 6f neutron.common.import.topics.fro
4b80 6d 20 6e 65 75 74 72 6f 6e 2e 64 62 20 69 6d 70 6f 72 74 20 64 62 5f 62 61 73 65 5f 70 6c 75 67 m.neutron.db.import.db_base_plug
4ba0 69 6e 5f 76 32 0a 66 72 6f 6d 20 6e 65 75 74 72 6f 6e 2e 64 62 20 69 6d 70 6f 72 74 20 65 78 74 in_v2.from.neutron.db.import.ext
4bc0 72 61 72 6f 75 74 65 5f 64 62 0a 66 72 6f 6d 20 6e 65 75 74 72 6f 6e 2e 64 62 20 69 6d 70 6f 72 raroute_db.from.neutron.db.impor
4be0 74 20 6c 33 5f 61 67 65 6e 74 73 63 68 65 64 75 6c 65 72 73 5f 64 62 0a 66 72 6f 6d 20 6e 65 75 t.l3_agentschedulers_db.from.neu
4c00 74 72 6f 6e 2e 64 62 20 69 6d 70 6f 72 74 20 6c 33 5f 67 77 6d 6f 64 65 5f 64 62 0a 66 72 6f 6d tron.db.import.l3_gwmode_db.from
4c20 20 6e 65 75 74 72 6f 6e 2e 70 6c 75 67 69 6e 73 2e 63 6f 6d 6d 6f 6e 20 69 6d 70 6f 72 74 20 63 .neutron.plugins.common.import.c
4c40 6f 6e 73 74 61 6e 74 73 0a 0a 66 72 6f 6d 20 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2e 63 onstants..from.networking_onos.c
4c60 6f 6d 6d 6f 6e 20 69 6d 70 6f 72 74 20 63 6f 6e 66 69 67 20 20 20 23 20 6e 6f 71 61 0a 66 72 6f ommon.import.config...#.noqa.fro
4c80 6d 20 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2e 70 6c 75 67 69 6e 73 2e 6c 33 20 69 6d 70 m.networking_onos.plugins.l3.imp
4ca0 6f 72 74 20 66 6c 6f 61 74 69 6e 67 5f 69 70 20 61 73 20 6f 6e 6f 73 5f 66 69 70 0a 66 72 6f 6d ort.floating_ip.as.onos_fip.from
4cc0 20 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2e 70 6c 75 67 69 6e 73 2e 6c 33 20 69 6d 70 6f .networking_onos.plugins.l3.impo
4ce0 72 74 20 72 6f 75 74 65 72 20 61 73 20 6f 6e 6f 73 5f 72 6f 75 74 65 72 0a 0a 0a 63 6c 61 73 73 rt.router.as.onos_router...class
4d00 20 4f 4e 4f 53 4c 33 50 6c 75 67 69 6e 28 64 62 5f 62 61 73 65 5f 70 6c 75 67 69 6e 5f 76 32 2e .ONOSL3Plugin(db_base_plugin_v2.
4d20 4e 65 75 74 72 6f 6e 44 62 50 6c 75 67 69 6e 56 32 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 NeutronDbPluginV2,..............
4d40 20 20 20 20 20 20 65 78 74 72 61 72 6f 75 74 65 5f 64 62 2e 45 78 74 72 61 52 6f 75 74 65 5f 64 ......extraroute_db.ExtraRoute_d
4d60 62 5f 6d 69 78 69 6e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6c 33 5f 67 b_mixin,....................l3_g
4d80 77 6d 6f 64 65 5f 64 62 2e 4c 33 5f 4e 41 54 5f 64 62 5f 6d 69 78 69 6e 2c 0a 20 20 20 20 20 20 wmode_db.L3_NAT_db_mixin,.......
4da0 20 20 20 20 20 20 20 20 20 20 20 20 20 6c 33 5f 61 67 65 6e 74 73 63 68 65 64 75 6c 65 72 73 5f .............l3_agentschedulers_
4dc0 64 62 2e 4c 33 41 67 65 6e 74 53 63 68 65 64 75 6c 65 72 44 62 4d 69 78 69 6e 2c 0a 20 20 20 20 db.L3AgentSchedulerDbMixin,.....
4de0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 6e 6f 73 5f 72 6f 75 74 65 72 2e 4f 4e 4f 53 52 ...............onos_router.ONOSR
4e00 6f 75 74 65 72 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 6e 6f 73 5f 66 outer,....................onos_f
4e20 69 70 2e 4f 4e 4f 53 46 6c 6f 61 74 69 6e 67 49 50 29 3a 0a 0a 20 20 20 20 22 22 22 49 6d 70 6c ip.ONOSFloatingIP):......"""Impl
4e40 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 4f 4e 4f 53 20 4c 33 20 52 6f 75 74 65 72 ementation.of.the.ONOS.L3.Router
4e60 20 53 65 72 76 69 63 65 20 50 6c 75 67 69 6e 2e 0a 0a 20 20 20 20 54 68 69 73 20 63 6c 61 73 73 .Service.Plugin.......This.class
4e80 20 69 6d 70 6c 65 6d 65 6e 74 73 20 61 20 4c 33 20 73 65 72 76 69 63 65 20 70 6c 75 67 69 6e 20 .implements.a.L3.service.plugin.
4ea0 74 68 61 74 20 70 72 6f 76 69 64 65 73 0a 20 20 20 20 72 6f 75 74 65 72 20 61 6e 64 20 66 6c 6f that.provides.....router.and.flo
4ec0 61 74 69 6e 67 69 70 20 72 65 73 6f 75 72 63 65 73 20 61 6e 64 20 6d 61 6e 61 67 65 73 20 61 73 atingip.resources.and.manages.as
4ee0 73 6f 63 69 61 74 65 64 0a 20 20 20 20 72 65 71 75 65 73 74 2f 72 65 73 70 6f 6e 73 65 2e 0a 20 sociated.....request/response...
4f00 20 20 20 22 22 22 0a 20 20 20 20 73 75 70 70 6f 72 74 65 64 5f 65 78 74 65 6e 73 69 6f 6e 5f 61 ...""".....supported_extension_a
4f20 6c 69 61 73 65 73 20 3d 20 5b 22 72 6f 75 74 65 72 22 2c 20 22 65 78 74 2d 67 77 2d 6d 6f 64 65 liases.=.["router",."ext-gw-mode
4f40 22 2c 20 22 65 78 74 72 61 72 6f 75 74 65 22 5d 0a 0a 20 20 20 20 64 65 66 20 5f 5f 69 6e 69 74 ",."extraroute"]......def.__init
4f60 5f 5f 28 73 65 6c 66 29 3a 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 73 65 74 75 70 5f 72 70 63 __(self):.........self.setup_rpc
4f80 28 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 6f 6e 6f 73 5f 70 61 74 68 20 3d 20 63 66 67 2e ().........self.onos_path.=.cfg.
4fa0 43 4f 4e 46 2e 6f 6e 6f 73 2e 75 72 6c 5f 70 61 74 68 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e CONF.onos.url_path.........self.
4fc0 6f 6e 6f 73 5f 61 75 74 68 20 3d 20 28 63 66 67 2e 43 4f 4e 46 2e 6f 6e 6f 73 2e 75 73 65 72 6e onos_auth.=.(cfg.CONF.onos.usern
4fe0 61 6d 65 2c 20 63 66 67 2e 43 4f 4e 46 2e 6f 6e 6f 73 2e 70 61 73 73 77 6f 72 64 29 0a 0a 20 20 ame,.cfg.CONF.onos.password)....
5000 20 20 64 65 66 20 73 65 74 75 70 5f 72 70 63 28 73 65 6c 66 29 3a 0a 20 20 20 20 20 20 20 20 73 ..def.setup_rpc(self):.........s
5020 65 6c 66 2e 74 6f 70 69 63 20 3d 20 74 6f 70 69 63 73 2e 4c 33 50 4c 55 47 49 4e 0a 20 20 20 20 elf.topic.=.topics.L3PLUGIN.....
5040 20 20 20 20 73 65 6c 66 2e 63 6f 6e 6e 20 3d 20 6e 5f 72 70 63 2e 63 72 65 61 74 65 5f 63 6f 6e ....self.conn.=.n_rpc.create_con
5060 6e 65 63 74 69 6f 6e 28 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 61 67 65 6e 74 5f 6e 6f 74 nection().........self.agent_not
5080 69 66 69 65 72 73 2e 75 70 64 61 74 65 28 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 71 5f 63 6f ifiers.update(.............{q_co
50a0 6e 73 74 2e 41 47 45 4e 54 5f 54 59 50 45 5f 4c 33 3a 20 6c 33 5f 72 70 63 5f 61 67 65 6e 74 5f nst.AGENT_TYPE_L3:.l3_rpc_agent_
50c0 61 70 69 2e 4c 33 41 67 65 6e 74 4e 6f 74 69 66 79 41 50 49 28 29 7d 29 0a 20 20 20 20 20 20 20 api.L3AgentNotifyAPI()})........
50e0 20 73 65 6c 66 2e 65 6e 64 70 6f 69 6e 74 73 20 3d 20 5b 6c 33 5f 72 70 63 2e 4c 33 52 70 63 43 .self.endpoints.=.[l3_rpc.L3RpcC
5100 61 6c 6c 62 61 63 6b 28 29 5d 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 63 6f 6e 6e 2e 63 72 65 allback()].........self.conn.cre
5120 61 74 65 5f 63 6f 6e 73 75 6d 65 72 28 73 65 6c 66 2e 74 6f 70 69 63 2c 20 73 65 6c 66 2e 65 6e ate_consumer(self.topic,.self.en
5140 64 70 6f 69 6e 74 73 2c 20 66 61 6e 6f 75 74 3d 46 61 6c 73 65 29 0a 20 20 20 20 20 20 20 20 73 dpoints,.fanout=False).........s
5160 65 6c 66 2e 63 6f 6e 6e 2e 63 6f 6e 73 75 6d 65 5f 69 6e 5f 74 68 72 65 61 64 73 28 29 0a 0a 20 elf.conn.consume_in_threads()...
5180 20 20 20 64 65 66 20 67 65 74 5f 70 6c 75 67 69 6e 5f 74 79 70 65 28 73 65 6c 66 29 3a 0a 20 20 ...def.get_plugin_type(self):...
51a0 20 20 20 20 20 20 72 65 74 75 72 6e 20 63 6f 6e 73 74 61 6e 74 73 2e 4c 33 5f 52 4f 55 54 45 52 ......return.constants.L3_ROUTER
51c0 5f 4e 41 54 0a 0a 20 20 20 20 64 65 66 20 67 65 74 5f 70 6c 75 67 69 6e 5f 64 65 73 63 72 69 70 _NAT......def.get_plugin_descrip
51e0 74 69 6f 6e 28 73 65 6c 66 29 3a 0a 20 20 20 20 20 20 20 20 22 22 22 72 65 74 75 72 6e 73 20 70 tion(self):........."""returns.p
5200 6c 75 67 2d 69 6e 20 64 65 73 63 72 69 70 74 69 6f 6e 22 22 22 0a 20 20 20 20 20 20 20 20 72 65 lug-in.description""".........re
5220 74 75 72 6e 20 28 22 4c 33 20 52 6f 75 74 65 72 20 53 65 72 76 69 63 65 20 50 6c 75 67 2d 69 6e turn.("L3.Router.Service.Plug-in
5240 20 66 6f 72 20 62 61 73 69 63 20 4c 33 20 66 6f 72 77 61 72 64 69 6e 67 20 75 73 69 6e 67 20 4f .for.basic.L3.forwarding.using.O
5260 4e 4f 53 22 29 0a 0a 20 20 20 20 64 65 66 20 63 72 65 61 74 65 5f 72 6f 75 74 65 72 28 73 65 6c NOS")......def.create_router(sel
5280 66 2c 20 63 6f 6e 74 65 78 74 2c 20 72 6f 75 74 65 72 29 3a 0a 20 20 20 20 20 20 20 20 72 6f 75 f,.context,.router):.........rou
52a0 74 65 72 5f 64 69 63 74 20 3d 20 73 75 70 65 72 28 4f 4e 4f 53 4c 33 50 6c 75 67 69 6e 2c 20 73 ter_dict.=.super(ONOSL3Plugin,.s
52c0 65 6c 66 29 2e 63 72 65 61 74 65 5f 72 6f 75 74 65 72 28 63 6f 6e 74 65 78 74 2c 20 72 6f 75 74 elf).create_router(context,.rout
52e0 65 72 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 68 61 6e 64 6c 65 5f 63 72 65 61 74 65 5f 72 er).........self.handle_create_r
5300 6f 75 74 65 72 28 72 6f 75 74 65 72 5f 64 69 63 74 29 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 outer(router_dict).........retur
5320 6e 20 72 6f 75 74 65 72 5f 64 69 63 74 0a 0a 20 20 20 20 64 65 66 20 75 70 64 61 74 65 5f 72 6f n.router_dict......def.update_ro
5340 75 74 65 72 28 73 65 6c 66 2c 20 63 6f 6e 74 65 78 74 2c 20 69 64 2c 20 72 6f 75 74 65 72 29 3a uter(self,.context,.id,.router):
5360 0a 20 20 20 20 20 20 20 20 72 6f 75 74 65 72 5f 64 69 63 74 20 3d 20 73 75 70 65 72 28 4f 4e 4f .........router_dict.=.super(ONO
5380 53 4c 33 50 6c 75 67 69 6e 2c 20 73 65 6c 66 29 2e 75 70 64 61 74 65 5f 72 6f 75 74 65 72 28 63 SL3Plugin,.self).update_router(c
53a0 6f 6e 74 65 78 74 2c 20 69 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ontext,.id,.....................
53c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
53e0 20 20 20 20 20 20 20 20 20 20 72 6f 75 74 65 72 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 68 ..........router).........self.h
5400 61 6e 64 6c 65 5f 75 70 64 61 74 65 5f 72 6f 75 74 65 72 28 72 6f 75 74 65 72 5f 64 69 63 74 2c andle_update_router(router_dict,
5420 20 69 64 29 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 72 6f 75 74 65 72 5f 64 69 63 74 0a .id).........return.router_dict.
5440 0a 20 20 20 20 64 65 66 20 64 65 6c 65 74 65 5f 72 6f 75 74 65 72 28 73 65 6c 66 2c 20 63 6f 6e .....def.delete_router(self,.con
5460 74 65 78 74 2c 20 69 64 29 3a 0a 20 20 20 20 20 20 20 20 73 75 70 65 72 28 4f 4e 4f 53 4c 33 50 text,.id):.........super(ONOSL3P
5480 6c 75 67 69 6e 2c 20 73 65 6c 66 29 2e 64 65 6c 65 74 65 5f 72 6f 75 74 65 72 28 63 6f 6e 74 65 lugin,.self).delete_router(conte
54a0 78 74 2c 20 69 64 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 68 61 6e 64 6c 65 5f 64 65 6c 65 xt,.id).........self.handle_dele
54c0 74 65 5f 72 6f 75 74 65 72 28 69 64 29 0a 0a 20 20 20 20 64 65 66 20 63 72 65 61 74 65 5f 66 6c te_router(id)......def.create_fl
54e0 6f 61 74 69 6e 67 69 70 28 73 65 6c 66 2c 20 63 6f 6e 74 65 78 74 2c 20 66 6c 6f 61 74 69 6e 67 oatingip(self,.context,.floating
5500 69 70 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e ip,...........................in
5520 69 74 69 61 6c 5f 73 74 61 74 75 73 3d 71 5f 63 6f 6e 73 74 2e 46 4c 4f 41 54 49 4e 47 49 50 5f itial_status=q_const.FLOATINGIP_
5540 53 54 41 54 55 53 5f 41 43 54 49 56 45 29 3a 0a 20 20 20 20 20 20 20 20 66 69 70 5f 64 69 63 74 STATUS_ACTIVE):.........fip_dict
5560 20 3d 20 73 75 70 65 72 28 4f 4e 4f 53 4c 33 50 6c 75 67 69 6e 2c 20 73 65 6c 66 29 2e 63 72 65 .=.super(ONOSL3Plugin,.self).cre
5580 61 74 65 5f 66 6c 6f 61 74 69 6e 67 69 70 28 63 6f 6e 74 65 78 74 2c 0a 20 20 20 20 20 20 20 20 ate_floatingip(context,.........
55a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
55c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6c 6f 61 74 69 6e 67 69 .......................floatingi
55e0 70 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 p,..............................
5600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
5620 20 20 69 6e 69 74 69 61 6c 5f 73 74 61 74 75 73 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 68 ..initial_status).........self.h
5640 61 6e 64 6c 65 5f 63 72 65 61 74 65 5f 66 6c 6f 61 74 69 6e 67 69 70 28 66 69 70 5f 64 69 63 74 andle_create_floatingip(fip_dict
5660 29 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 69 70 5f 64 69 63 74 0a 0a 20 20 20 20 64 ).........return.fip_dict......d
5680 65 66 20 75 70 64 61 74 65 5f 66 6c 6f 61 74 69 6e 67 69 70 28 73 65 6c 66 2c 20 63 6f 6e 74 65 ef.update_floatingip(self,.conte
56a0 78 74 2c 20 69 64 2c 20 66 6c 6f 61 74 69 6e 67 69 70 29 3a 0a 20 20 20 20 20 20 20 20 66 69 70 xt,.id,.floatingip):.........fip
56c0 5f 64 69 63 74 20 3d 20 73 75 70 65 72 28 4f 4e 4f 53 4c 33 50 6c 75 67 69 6e 2c 20 73 65 6c 66 _dict.=.super(ONOSL3Plugin,.self
56e0 29 2e 75 70 64 61 74 65 5f 66 6c 6f 61 74 69 6e 67 69 70 28 63 6f 6e 74 65 78 74 2c 20 69 64 2c ).update_floatingip(context,.id,
5700 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
5720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
5740 66 6c 6f 61 74 69 6e 67 69 70 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 68 61 6e 64 6c 65 5f floatingip).........self.handle_
5760 75 70 64 61 74 65 5f 66 6c 6f 61 74 69 6e 67 69 70 28 69 64 2c 20 66 69 70 5f 64 69 63 74 29 0a update_floatingip(id,.fip_dict).
5780 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 69 70 5f 64 69 63 74 0a 0a 20 20 20 20 64 65 66 ........return.fip_dict......def
57a0 20 64 65 6c 65 74 65 5f 66 6c 6f 61 74 69 6e 67 69 70 28 73 65 6c 66 2c 20 63 6f 6e 74 65 78 74 .delete_floatingip(self,.context
57c0 2c 20 69 64 29 3a 0a 20 20 20 20 20 20 20 20 73 75 70 65 72 28 4f 4e 4f 53 4c 33 50 6c 75 67 69 ,.id):.........super(ONOSL3Plugi
57e0 6e 2c 20 73 65 6c 66 29 2e 64 65 6c 65 74 65 5f 66 6c 6f 61 74 69 6e 67 69 70 28 63 6f 6e 74 65 n,.self).delete_floatingip(conte
5800 78 74 2c 20 69 64 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 68 61 6e 64 6c 65 5f 64 65 6c 65 xt,.id).........self.handle_dele
5820 74 65 5f 66 6c 6f 61 74 69 6e 67 69 70 28 69 64 29 0a 0a 20 20 20 20 64 65 66 20 61 64 64 5f 72 te_floatingip(id)......def.add_r
5840 6f 75 74 65 72 5f 69 6e 74 65 72 66 61 63 65 28 73 65 6c 66 2c 20 63 6f 6e 74 65 78 74 2c 20 72 outer_interface(self,.context,.r
5860 6f 75 74 65 72 5f 69 64 2c 20 69 6e 74 65 72 66 61 63 65 5f 69 6e 66 6f 29 3a 0a 20 20 20 20 20 outer_id,.interface_info):......
5880 20 20 20 72 6f 75 74 65 72 20 3d 20 73 75 70 65 72 28 4f 4e 4f 53 4c 33 50 6c 75 67 69 6e 2c 20 ...router.=.super(ONOSL3Plugin,.
58a0 73 65 6c 66 29 2e 61 64 64 5f 72 6f 75 74 65 72 5f 69 6e 74 65 72 66 61 63 65 28 63 6f 6e 74 65 self).add_router_interface(conte
58c0 78 74 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 xt,.............................
58e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
5900 20 20 20 20 72 6f 75 74 65 72 5f 69 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ....router_id,..................
5920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
5940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 65 72 66 61 63 65 5f 69 6e 66 6f 29 0a 20 ...............interface_info)..
5960 20 20 20 20 20 20 20 69 6e 74 66 5f 61 64 64 5f 74 79 70 65 20 3d 20 73 65 6c 66 2e 5f 67 65 74 .......intf_add_type.=.self._get
5980 5f 69 6e 74 66 5f 61 64 64 5f 74 79 70 65 28 72 6f 75 74 65 72 2c 20 69 6e 74 65 72 66 61 63 65 _intf_add_type(router,.interface
59a0 5f 69 6e 66 6f 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 68 61 6e 64 6c 65 5f 61 64 64 5f 72 _info).........self.handle_add_r
59c0 6f 75 74 65 72 5f 69 6e 74 65 72 66 61 63 65 28 72 6f 75 74 65 72 2c 20 72 6f 75 74 65 72 5f 69 outer_interface(router,.router_i
59e0 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 d,..............................
5a00 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 65 72 66 61 63 65 5f 69 6e 66 6f 2c 20 69 6e 74 66 ............interface_info,.intf
5a20 5f 61 64 64 5f 74 79 70 65 29 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 72 6f 75 74 65 72 _add_type).........return.router
5a40 0a 0a 20 20 20 20 64 65 66 20 72 65 6d 6f 76 65 5f 72 6f 75 74 65 72 5f 69 6e 74 65 72 66 61 63 ......def.remove_router_interfac
5a60 65 28 73 65 6c 66 2c 20 63 6f 6e 74 65 78 74 2c 20 72 6f 75 74 65 72 5f 69 64 2c 20 69 6e 74 65 e(self,.context,.router_id,.inte
5a80 72 66 61 63 65 5f 69 6e 66 6f 29 3a 0a 20 20 20 20 20 20 20 20 72 6f 75 74 65 72 20 3d 20 73 75 rface_info):.........router.=.su
5aa0 70 65 72 28 4f 4e 4f 53 4c 33 50 6c 75 67 69 6e 2c 20 73 65 6c 66 29 2e 72 65 6d 6f 76 65 5f 72 per(ONOSL3Plugin,.self).remove_r
5ac0 6f 75 74 65 72 5f 69 6e 74 65 72 66 61 63 65 28 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e outer_interface(.............con
5ae0 74 65 78 74 2c 20 72 6f 75 74 65 72 5f 69 64 2c 20 69 6e 74 65 72 66 61 63 65 5f 69 6e 66 6f 29 text,.router_id,.interface_info)
5b00 0a 20 20 20 20 20 20 20 20 69 6e 74 66 5f 61 64 64 5f 74 79 70 65 20 3d 20 73 65 6c 66 2e 5f 67 .........intf_add_type.=.self._g
5b20 65 74 5f 69 6e 74 66 5f 61 64 64 5f 74 79 70 65 28 72 6f 75 74 65 72 2c 20 69 6e 74 65 72 66 61 et_intf_add_type(router,.interfa
5b40 63 65 5f 69 6e 66 6f 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 68 61 6e 64 6c 65 5f 72 65 6d ce_info).........self.handle_rem
5b60 6f 76 65 5f 72 6f 75 74 65 72 5f 69 6e 74 65 72 66 61 63 65 28 72 6f 75 74 65 72 2c 20 72 6f 75 ove_router_interface(router,.rou
5b80 74 65 72 5f 69 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ter_id,.........................
5ba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 65 72 66 61 63 65 5f 69 6e ....................interface_in
5bc0 66 6f 2c 20 69 6e 74 66 5f 61 64 64 5f 74 79 70 65 29 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 fo,.intf_add_type).........retur
5be0 6e 20 72 6f 75 74 65 72 0a 0a 20 20 20 20 64 65 66 20 5f 67 65 74 5f 69 6e 74 66 5f 61 64 64 5f n.router......def._get_intf_add_
5c00 74 79 70 65 28 73 65 6c 66 2c 20 72 6f 75 74 65 72 5f 69 6e 66 6f 2c 20 69 6e 74 66 5f 69 6e 66 type(self,.router_info,.intf_inf
5c20 6f 29 3a 0a 20 20 20 20 20 20 20 20 61 64 64 5f 62 79 5f 70 6f 72 74 2c 20 61 64 64 5f 62 79 5f o):.........add_by_port,.add_by_
5c40 73 75 62 20 3d 20 73 65 6c 66 2e 5f 76 61 6c 69 64 61 74 65 5f 69 6e 74 65 72 66 61 63 65 5f 69 sub.=.self._validate_interface_i
5c60 6e 66 6f 28 69 6e 74 66 5f 69 6e 66 6f 29 0a 20 20 20 20 20 20 20 20 69 66 20 61 64 64 5f 62 79 nfo(intf_info).........if.add_by
5c80 5f 73 75 62 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6f 6e 6f 73 5f 72 6f _sub:.............return.onos_ro
5ca0 75 74 65 72 2e 41 44 44 5f 49 4e 54 46 5f 42 59 5f 53 55 42 4e 45 54 0a 0a 20 20 20 20 20 20 20 uter.ADD_INTF_BY_SUBNET.........
5cc0 20 72 65 74 75 72 6e 20 6f 6e 6f 73 5f 72 6f 75 74 65 72 2e 41 44 44 5f 49 4e 54 46 5f 42 59 5f .return.onos_router.ADD_INTF_BY_
5ce0 50 4f 52 54 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 PORT............................
5d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5e00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
5e20 70 6c 75 67 69 6e 73 2f 6c 33 2f 5f 5f 69 6e 69 74 5f 5f 2e 70 79 00 00 00 00 00 00 00 00 00 00 plugins/l3/__init__.py..........
5e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5e60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
5e80 30 30 30 30 30 30 30 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 32 32 37 30 00 20 30 00 00 00 0000000.12627513442.022270..0...
5ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5f00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
5f20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
5f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
5fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6000 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
6020 70 6c 75 67 69 6e 73 2f 6c 33 2f 66 6c 6f 61 74 69 6e 67 5f 69 70 2e 70 79 00 00 00 00 00 00 00 plugins/l3/floating_ip.py.......
6040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6060 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
6080 30 30 30 33 30 30 31 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 33 30 33 30 00 20 30 00 00 00 0003001.12627513442.023030..0...
60a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
60c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
60e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6100 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
6120 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
6140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
61a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
61c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
61e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6200 23 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 31 35 20 48 75 61 77 65 69 20 54 65 63 68 #.Copyright.(C).2015.Huawei.Tech
6220 6e 6f 6c 6f 67 69 65 73 20 49 6e 64 69 61 20 50 76 74 20 4c 74 64 2e 0a 23 0a 23 20 20 4c 69 63 nologies.India.Pvt.Ltd..#.#..Lic
6240 65 6e 73 65 64 20 75 6e 64 65 72 20 74 68 65 20 41 70 61 63 68 65 20 4c 69 63 65 6e 73 65 2c 20 ensed.under.the.Apache.License,.
6260 56 65 72 73 69 6f 6e 20 32 2e 30 20 28 74 68 65 20 22 4c 69 63 65 6e 73 65 22 29 3b 20 79 6f 75 Version.2.0.(the."License");.you
6280 20 6d 61 79 0a 23 20 20 6e 6f 74 20 75 73 65 20 74 68 69 73 20 66 69 6c 65 20 65 78 63 65 70 74 .may.#..not.use.this.file.except
62a0 20 69 6e 20 63 6f 6d 70 6c 69 61 6e 63 65 20 77 69 74 68 20 74 68 65 20 4c 69 63 65 6e 73 65 2e .in.compliance.with.the.License.
62c0 20 59 6f 75 20 6d 61 79 20 6f 62 74 61 69 6e 0a 23 20 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 .You.may.obtain.#..a.copy.of.the
62e0 20 4c 69 63 65 6e 73 65 20 61 74 0a 23 0a 23 20 20 20 20 20 20 20 68 74 74 70 3a 2f 2f 77 77 77 .License.at.#.#.......http://www
6300 2e 61 70 61 63 68 65 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 4c 49 43 45 4e 53 45 2d 32 2e 30 .apache.org/licenses/LICENSE-2.0
6320 0a 23 0a 23 20 20 55 6e 6c 65 73 73 20 72 65 71 75 69 72 65 64 20 62 79 20 61 70 70 6c 69 63 61 .#.#..Unless.required.by.applica
6340 62 6c 65 20 6c 61 77 20 6f 72 20 61 67 72 65 65 64 20 74 6f 20 69 6e 20 77 72 69 74 69 6e 67 2c ble.law.or.agreed.to.in.writing,
6360 20 73 6f 66 74 77 61 72 65 0a 23 20 20 64 69 73 74 72 69 62 75 74 65 64 20 75 6e 64 65 72 20 74 .software.#..distributed.under.t
6380 68 65 20 4c 69 63 65 6e 73 65 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 6f 6e 20 61 6e 20 he.License.is.distributed.on.an.
63a0 22 41 53 20 49 53 22 20 42 41 53 49 53 2c 20 57 49 54 48 4f 55 54 0a 23 20 20 57 41 52 52 41 4e "AS.IS".BASIS,.WITHOUT.#..WARRAN
63c0 54 49 45 53 20 4f 52 20 43 4f 4e 44 49 54 49 4f 4e 53 20 4f 46 20 41 4e 59 20 4b 49 4e 44 2c 20 TIES.OR.CONDITIONS.OF.ANY.KIND,.
63e0 65 69 74 68 65 72 20 65 78 70 72 65 73 73 20 6f 72 20 69 6d 70 6c 69 65 64 2e 20 53 65 65 20 74 either.express.or.implied..See.t
6400 68 65 0a 23 20 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 74 68 65 20 73 70 65 63 69 66 69 63 20 6c he.#..License.for.the.specific.l
6420 61 6e 67 75 61 67 65 20 67 6f 76 65 72 6e 69 6e 67 20 70 65 72 6d 69 73 73 69 6f 6e 73 20 61 6e anguage.governing.permissions.an
6440 64 20 6c 69 6d 69 74 61 74 69 6f 6e 73 0a 23 20 20 75 6e 64 65 72 20 74 68 65 20 4c 69 63 65 6e d.limitations.#..under.the.Licen
6460 73 65 2e 0a 23 0a 0a 66 72 6f 6d 20 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2e 63 6f 6d 6d se..#..from.networking_onos.comm
6480 6f 6e 20 69 6d 70 6f 72 74 20 75 74 69 6c 73 20 61 73 20 6f 6e 6f 73 5f 75 74 69 6c 73 0a 0a 0a on.import.utils.as.onos_utils...
64a0 63 6c 61 73 73 20 4f 4e 4f 53 46 6c 6f 61 74 69 6e 67 49 50 28 6f 62 6a 65 63 74 29 3a 0a 0a 20 class.ONOSFloatingIP(object):...
64c0 20 20 20 22 22 22 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 4f 4e 4f 53 20 4c 33 20 ..."""Implementation.of.ONOS.L3.
64e0 46 6c 6f 61 74 69 6e 67 20 49 50 20 53 65 72 76 69 63 65 2e 0a 0a 20 20 20 20 54 68 69 73 20 63 Floating.IP.Service.......This.c
6500 6c 61 73 73 20 73 65 6e 64 73 20 4e 65 75 74 72 6f 6e 27 73 20 4c 33 20 46 6c 6f 61 74 69 6e 67 lass.sends.Neutron's.L3.Floating
6520 20 49 50 20 6d 65 73 73 61 67 65 73 20 74 6f 20 4f 4e 4f 53 2e 0a 20 20 20 20 22 22 22 0a 20 20 .IP.messages.to.ONOS......"""...
6540 20 20 64 65 66 20 73 65 6e 64 5f 66 6c 6f 61 74 69 6e 67 69 70 5f 6d 73 67 28 73 65 6c 66 2c 20 ..def.send_floatingip_msg(self,.
6560 6d 73 67 5f 74 79 70 65 2c 20 65 6e 74 69 74 79 5f 70 61 74 68 2c 20 65 6e 74 69 74 79 29 3a 0a msg_type,.entity_path,.entity):.
6580 20 20 20 20 20 20 20 20 6f 6e 6f 73 5f 75 74 69 6c 73 2e 73 65 6e 64 5f 6d 73 67 28 73 65 6c 66 ........onos_utils.send_msg(self
65a0 2e 6f 6e 6f 73 5f 70 61 74 68 2c 20 73 65 6c 66 2e 6f 6e 6f 73 5f 61 75 74 68 2c 0a 20 20 20 20 .onos_path,.self.onos_auth,.....
65c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 73 67 5f 74 79 70 65 ........................msg_type
65e0 2c 20 65 6e 74 69 74 79 5f 70 61 74 68 2c 20 65 6e 74 69 74 79 29 0a 0a 20 20 20 20 64 65 66 20 ,.entity_path,.entity)......def.
6600 68 61 6e 64 6c 65 5f 63 72 65 61 74 65 5f 66 6c 6f 61 74 69 6e 67 69 70 28 73 65 6c 66 2c 20 66 handle_create_floatingip(self,.f
6620 69 70 5f 64 69 63 74 29 3a 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 73 65 6e 64 5f 66 6c 6f 61 ip_dict):.........self.send_floa
6640 74 69 6e 67 69 70 5f 6d 73 67 28 27 70 6f 73 74 27 2c 20 27 66 6c 6f 61 74 69 6e 67 69 70 73 27 tingip_msg('post',.'floatingips'
6660 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ,...............................
6680 20 20 20 7b 27 66 6c 6f 61 74 69 6e 67 69 70 27 3a 20 66 69 70 5f 64 69 63 74 7d 29 0a 0a 20 20 ...{'floatingip':.fip_dict})....
66a0 20 20 64 65 66 20 68 61 6e 64 6c 65 5f 75 70 64 61 74 65 5f 66 6c 6f 61 74 69 6e 67 69 70 28 73 ..def.handle_update_floatingip(s
66c0 65 6c 66 2c 20 69 64 2c 20 66 69 70 5f 64 69 63 74 29 3a 0a 20 20 20 20 20 20 20 20 75 72 6c 5f elf,.id,.fip_dict):.........url_
66e0 70 61 74 68 20 3d 20 27 66 6c 6f 61 74 69 6e 67 69 70 73 27 20 2b 20 27 2f 27 20 2b 20 69 64 0a path.=.'floatingips'.+.'/'.+.id.
6700 20 20 20 20 20 20 20 20 73 65 6c 66 2e 73 65 6e 64 5f 66 6c 6f 61 74 69 6e 67 69 70 5f 6d 73 67 ........self.send_floatingip_msg
6720 28 27 70 75 74 27 2c 20 75 72 6c 5f 70 61 74 68 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ('put',.url_path,...............
6740 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 27 66 6c 6f 61 74 69 6e 67 69 70 27 ...................{'floatingip'
6760 3a 20 66 69 70 5f 64 69 63 74 7d 29 0a 0a 20 20 20 20 64 65 66 20 68 61 6e 64 6c 65 5f 64 65 6c :.fip_dict})......def.handle_del
6780 65 74 65 5f 66 6c 6f 61 74 69 6e 67 69 70 28 73 65 6c 66 2c 20 69 64 29 3a 0a 20 20 20 20 20 20 ete_floatingip(self,.id):.......
67a0 20 20 75 72 6c 5f 70 61 74 68 20 3d 20 27 66 6c 6f 61 74 69 6e 67 69 70 73 27 20 2b 20 27 2f 27 ..url_path.=.'floatingips'.+.'/'
67c0 20 2b 20 69 64 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 73 65 6e 64 5f 66 6c 6f 61 74 69 6e 67 .+.id.........self.send_floating
67e0 69 70 5f 6d 73 67 28 27 64 65 6c 65 74 65 27 2c 20 75 72 6c 5f 70 61 74 68 2c 20 4e 6f 6e 65 29 ip_msg('delete',.url_path,.None)
6800 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
68e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
69a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
69c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
69e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6a00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
6a20 70 6c 75 67 69 6e 73 2f 6c 33 2f 72 6f 75 74 65 72 2e 70 79 00 00 00 00 00 00 00 00 00 00 00 00 plugins/l3/router.py............
6a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6a60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
6a80 30 30 30 36 30 31 33 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 32 30 36 33 00 20 30 00 00 00 0006013.12627513442.022063..0...
6aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
6b20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
6b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6c00 23 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 31 35 20 48 75 61 77 65 69 20 54 65 63 68 #.Copyright.(C).2015.Huawei.Tech
6c20 6e 6f 6c 6f 67 69 65 73 20 49 6e 64 69 61 20 50 76 74 20 4c 74 64 2e 0a 23 0a 23 20 20 4c 69 63 nologies.India.Pvt.Ltd..#.#..Lic
6c40 65 6e 73 65 64 20 75 6e 64 65 72 20 74 68 65 20 41 70 61 63 68 65 20 4c 69 63 65 6e 73 65 2c 20 ensed.under.the.Apache.License,.
6c60 56 65 72 73 69 6f 6e 20 32 2e 30 20 28 74 68 65 20 22 4c 69 63 65 6e 73 65 22 29 3b 20 79 6f 75 Version.2.0.(the."License");.you
6c80 20 6d 61 79 0a 23 20 20 6e 6f 74 20 75 73 65 20 74 68 69 73 20 66 69 6c 65 20 65 78 63 65 70 74 .may.#..not.use.this.file.except
6ca0 20 69 6e 20 63 6f 6d 70 6c 69 61 6e 63 65 20 77 69 74 68 20 74 68 65 20 4c 69 63 65 6e 73 65 2e .in.compliance.with.the.License.
6cc0 20 59 6f 75 20 6d 61 79 20 6f 62 74 61 69 6e 0a 23 20 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 .You.may.obtain.#..a.copy.of.the
6ce0 20 4c 69 63 65 6e 73 65 20 61 74 0a 23 0a 23 20 20 20 20 20 20 20 68 74 74 70 3a 2f 2f 77 77 77 .License.at.#.#.......http://www
6d00 2e 61 70 61 63 68 65 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 4c 49 43 45 4e 53 45 2d 32 2e 30 .apache.org/licenses/LICENSE-2.0
6d20 0a 23 0a 23 20 20 55 6e 6c 65 73 73 20 72 65 71 75 69 72 65 64 20 62 79 20 61 70 70 6c 69 63 61 .#.#..Unless.required.by.applica
6d40 62 6c 65 20 6c 61 77 20 6f 72 20 61 67 72 65 65 64 20 74 6f 20 69 6e 20 77 72 69 74 69 6e 67 2c ble.law.or.agreed.to.in.writing,
6d60 20 73 6f 66 74 77 61 72 65 0a 23 20 20 64 69 73 74 72 69 62 75 74 65 64 20 75 6e 64 65 72 20 74 .software.#..distributed.under.t
6d80 68 65 20 4c 69 63 65 6e 73 65 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 6f 6e 20 61 6e 20 he.License.is.distributed.on.an.
6da0 22 41 53 20 49 53 22 20 42 41 53 49 53 2c 20 57 49 54 48 4f 55 54 0a 23 20 20 57 41 52 52 41 4e "AS.IS".BASIS,.WITHOUT.#..WARRAN
6dc0 54 49 45 53 20 4f 52 20 43 4f 4e 44 49 54 49 4f 4e 53 20 4f 46 20 41 4e 59 20 4b 49 4e 44 2c 20 TIES.OR.CONDITIONS.OF.ANY.KIND,.
6de0 65 69 74 68 65 72 20 65 78 70 72 65 73 73 20 6f 72 20 69 6d 70 6c 69 65 64 2e 20 53 65 65 20 74 either.express.or.implied..See.t
6e00 68 65 0a 23 20 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 74 68 65 20 73 70 65 63 69 66 69 63 20 6c he.#..License.for.the.specific.l
6e20 61 6e 67 75 61 67 65 20 67 6f 76 65 72 6e 69 6e 67 20 70 65 72 6d 69 73 73 69 6f 6e 73 20 61 6e anguage.governing.permissions.an
6e40 64 20 6c 69 6d 69 74 61 74 69 6f 6e 73 0a 23 20 20 75 6e 64 65 72 20 74 68 65 20 4c 69 63 65 6e d.limitations.#..under.the.Licen
6e60 73 65 2e 0a 23 0a 0a 66 72 6f 6d 20 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2e 63 6f 6d 6d se..#..from.networking_onos.comm
6e80 6f 6e 20 69 6d 70 6f 72 74 20 75 74 69 6c 73 20 61 73 20 6f 6e 6f 73 5f 75 74 69 6c 73 0a 0a 41 on.import.utils.as.onos_utils..A
6ea0 44 44 5f 49 4e 54 46 5f 42 59 5f 50 4f 52 54 20 3d 20 31 0a 41 44 44 5f 49 4e 54 46 5f 42 59 5f DD_INTF_BY_PORT.=.1.ADD_INTF_BY_
6ec0 53 55 42 4e 45 54 20 3d 20 32 0a 0a 0a 63 6c 61 73 73 20 4f 4e 4f 53 52 6f 75 74 65 72 28 6f 62 SUBNET.=.2...class.ONOSRouter(ob
6ee0 6a 65 63 74 29 3a 0a 0a 20 20 20 20 22 22 22 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 ject):......"""Implementation.of
6f00 20 4f 4e 4f 53 20 4c 33 20 52 6f 75 74 65 72 20 53 65 72 76 69 63 65 2e 0a 0a 20 20 20 20 54 68 .ONOS.L3.Router.Service.......Th
6f20 69 73 20 63 6c 61 73 73 20 73 65 6e 64 73 20 4e 65 75 74 72 6f 6e 27 73 20 4c 33 20 72 6f 75 74 is.class.sends.Neutron's.L3.rout
6f40 65 72 20 6d 65 73 73 61 67 65 73 20 74 6f 20 4f 4e 4f 53 2e 0a 20 20 20 20 22 22 22 0a 20 20 20 er.messages.to.ONOS......"""....
6f60 20 64 65 66 20 73 65 6e 64 5f 72 6f 75 74 65 72 5f 6d 73 67 28 73 65 6c 66 2c 20 6d 73 67 5f 74 .def.send_router_msg(self,.msg_t
6f80 79 70 65 2c 20 65 6e 74 69 74 79 5f 70 61 74 68 2c 20 65 6e 74 69 74 79 29 3a 0a 20 20 20 20 20 ype,.entity_path,.entity):......
6fa0 20 20 20 6f 6e 6f 73 5f 75 74 69 6c 73 2e 73 65 6e 64 5f 6d 73 67 28 73 65 6c 66 2e 6f 6e 6f 73 ...onos_utils.send_msg(self.onos
6fc0 5f 70 61 74 68 2c 20 73 65 6c 66 2e 6f 6e 6f 73 5f 61 75 74 68 2c 0a 20 20 20 20 20 20 20 20 20 _path,.self.onos_auth,..........
6fe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 73 67 5f 74 79 70 65 2c 20 65 6e 74 ...................msg_type,.ent
7000 69 74 79 5f 70 61 74 68 2c 20 65 6e 74 69 74 79 29 0a 0a 20 20 20 20 64 65 66 20 68 61 6e 64 6c ity_path,.entity)......def.handl
7020 65 5f 63 72 65 61 74 65 5f 72 6f 75 74 65 72 28 73 65 6c 66 2c 20 72 6f 75 74 65 72 5f 64 69 63 e_create_router(self,.router_dic
7040 74 29 3a 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 73 65 6e 64 5f 72 6f 75 74 65 72 5f 6d 73 67 t):.........self.send_router_msg
7060 28 27 70 6f 73 74 27 2c 20 27 72 6f 75 74 65 72 73 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 ('post',.'routers',.............
7080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 27 72 6f 75 74 65 72 27 3a 20 72 6f 75 74 .................{'router':.rout
70a0 65 72 5f 64 69 63 74 7d 29 0a 0a 20 20 20 20 64 65 66 20 68 61 6e 64 6c 65 5f 75 70 64 61 74 65 er_dict})......def.handle_update
70c0 5f 72 6f 75 74 65 72 28 73 65 6c 66 2c 20 72 6f 75 74 65 72 5f 64 69 63 74 2c 20 69 64 29 3a 0a _router(self,.router_dict,.id):.
70e0 20 20 20 20 20 20 20 20 75 72 6c 5f 70 61 74 68 20 3d 20 27 72 6f 75 74 65 72 73 27 20 2b 20 27 ........url_path.=.'routers'.+.'
7100 2f 27 20 2b 20 69 64 0a 20 20 20 20 20 20 20 20 72 65 73 6f 75 72 63 65 20 3d 20 72 6f 75 74 65 /'.+.id.........resource.=.route
7120 72 5f 64 69 63 74 2e 63 6f 70 79 28 29 0a 20 20 20 20 20 20 20 20 6f 6e 6f 73 5f 75 74 69 6c 73 r_dict.copy().........onos_utils
7140 2e 73 61 66 65 5f 64 65 6c 65 74 65 5f 66 72 6f 6d 5f 64 69 63 74 28 72 65 73 6f 75 72 63 65 2c .safe_delete_from_dict(resource,
7160 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
7180 20 20 20 20 20 20 20 20 20 20 5b 27 69 64 27 2c 20 27 74 65 6e 61 6e 74 5f 69 64 27 2c 20 27 73 ..........['id',.'tenant_id',.'s
71a0 74 61 74 75 73 27 5d 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 73 65 6e 64 5f 72 6f 75 74 65 tatus']).........self.send_route
71c0 72 5f 6d 73 67 28 27 70 75 74 27 2c 20 75 72 6c 5f 70 61 74 68 2c 20 7b 27 72 6f 75 74 65 72 27 r_msg('put',.url_path,.{'router'
71e0 3a 20 72 65 73 6f 75 72 63 65 7d 29 0a 0a 20 20 20 20 64 65 66 20 68 61 6e 64 6c 65 5f 64 65 6c :.resource})......def.handle_del
7200 65 74 65 5f 72 6f 75 74 65 72 28 73 65 6c 66 2c 20 69 64 29 3a 0a 20 20 20 20 20 20 20 20 75 72 ete_router(self,.id):.........ur
7220 6c 5f 70 61 74 68 20 3d 20 27 72 6f 75 74 65 72 73 27 20 2b 20 27 2f 27 20 2b 20 69 64 0a 20 20 l_path.=.'routers'.+.'/'.+.id...
7240 20 20 20 20 20 20 73 65 6c 66 2e 73 65 6e 64 5f 72 6f 75 74 65 72 5f 6d 73 67 28 27 64 65 6c 65 ......self.send_router_msg('dele
7260 74 65 27 2c 20 75 72 6c 5f 70 61 74 68 2c 20 4e 6f 6e 65 29 0a 0a 20 20 20 20 64 65 66 20 68 61 te',.url_path,.None)......def.ha
7280 6e 64 6c 65 5f 61 64 64 5f 72 6f 75 74 65 72 5f 69 6e 74 65 72 66 61 63 65 28 73 65 6c 66 2c 20 ndle_add_router_interface(self,.
72a0 6e 65 77 5f 72 6f 75 74 65 72 2c 20 72 6f 75 74 65 72 5f 69 64 2c 0a 20 20 20 20 20 20 20 20 20 new_router,.router_id,..........
72c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 65 72 ...........................inter
72e0 66 61 63 65 5f 69 6e 66 6f 2c 20 69 6e 74 66 5f 61 64 64 5f 74 79 70 65 29 3a 0a 20 20 20 20 20 face_info,.intf_add_type):......
7300 20 20 20 75 72 6c 5f 70 61 74 68 20 3d 20 27 72 6f 75 74 65 72 73 27 20 2b 20 27 2f 27 20 2b 20 ...url_path.=.'routers'.+.'/'.+.
7320 72 6f 75 74 65 72 5f 69 64 20 2b 20 27 2f 61 64 64 5f 72 6f 75 74 65 72 5f 69 6e 74 65 72 66 61 router_id.+.'/add_router_interfa
7340 63 65 27 0a 20 20 20 20 20 20 20 20 72 6f 75 74 65 72 5f 64 69 63 74 20 3d 20 73 65 6c 66 2e 5f ce'.........router_dict.=.self._
7360 70 72 65 70 61 72 65 5f 72 6f 75 74 65 72 5f 64 69 63 74 28 72 6f 75 74 65 72 5f 69 64 2c 20 69 prepare_router_dict(router_id,.i
7380 6e 74 65 72 66 61 63 65 5f 69 6e 66 6f 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nterface_info,..................
73a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e ...............................n
73c0 65 77 5f 72 6f 75 74 65 72 2c 20 69 6e 74 66 5f 61 64 64 5f 74 79 70 65 29 0a 20 20 20 20 20 20 ew_router,.intf_add_type).......
73e0 20 20 73 65 6c 66 2e 73 65 6e 64 5f 72 6f 75 74 65 72 5f 6d 73 67 28 27 70 75 74 27 2c 20 75 72 ..self.send_router_msg('put',.ur
7400 6c 5f 70 61 74 68 2c 20 72 6f 75 74 65 72 5f 64 69 63 74 29 0a 0a 20 20 20 20 64 65 66 20 68 61 l_path,.router_dict)......def.ha
7420 6e 64 6c 65 5f 72 65 6d 6f 76 65 5f 72 6f 75 74 65 72 5f 69 6e 74 65 72 66 61 63 65 28 73 65 6c ndle_remove_router_interface(sel
7440 66 2c 20 6e 65 77 5f 72 6f 75 74 65 72 2c 20 72 6f 75 74 65 72 5f 69 64 2c 0a 20 20 20 20 20 20 f,.new_router,.router_id,.......
7460 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
7480 20 69 6e 74 65 72 66 61 63 65 5f 69 6e 66 6f 2c 20 69 6e 74 66 5f 61 64 64 5f 74 79 70 65 29 3a .interface_info,.intf_add_type):
74a0 0a 20 20 20 20 20 20 20 20 75 72 6c 5f 70 61 74 68 20 3d 20 27 72 6f 75 74 65 72 73 27 20 2b 20 .........url_path.=.'routers'.+.
74c0 27 2f 27 20 2b 20 72 6f 75 74 65 72 5f 69 64 20 2b 20 27 2f 72 65 6d 6f 76 65 5f 72 6f 75 74 65 '/'.+.router_id.+.'/remove_route
74e0 72 5f 69 6e 74 65 72 66 61 63 65 27 0a 20 20 20 20 20 20 20 20 72 6f 75 74 65 72 5f 64 69 63 74 r_interface'.........router_dict
7500 20 3d 20 73 65 6c 66 2e 5f 70 72 65 70 61 72 65 5f 72 6f 75 74 65 72 5f 64 69 63 74 28 72 6f 75 .=.self._prepare_router_dict(rou
7520 74 65 72 5f 69 64 2c 20 69 6e 74 65 72 66 61 63 65 5f 69 6e 66 6f 2c 0a 20 20 20 20 20 20 20 20 ter_id,.interface_info,.........
7540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
7560 20 20 20 20 20 20 20 20 6e 65 77 5f 72 6f 75 74 65 72 2c 20 69 6e 74 66 5f 61 64 64 5f 74 79 70 ........new_router,.intf_add_typ
7580 65 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 73 65 6e 64 5f 72 6f 75 74 65 72 5f 6d 73 67 28 e).........self.send_router_msg(
75a0 27 70 75 74 27 2c 20 75 72 6c 5f 70 61 74 68 2c 20 72 6f 75 74 65 72 5f 64 69 63 74 29 0a 0a 20 'put',.url_path,.router_dict)...
75c0 20 20 20 64 65 66 20 5f 70 72 65 70 61 72 65 5f 72 6f 75 74 65 72 5f 64 69 63 74 28 73 65 6c 66 ...def._prepare_router_dict(self
75e0 2c 20 72 6f 75 74 65 72 5f 69 64 2c 20 69 6e 74 65 72 66 61 63 65 5f 69 6e 66 6f 2c 0a 20 20 20 ,.router_id,.interface_info,....
7600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 77 5f 72 6f ..........................new_ro
7620 75 74 65 72 2c 20 61 64 64 5f 74 79 70 65 29 3a 0a 20 20 20 20 20 20 20 20 69 66 20 61 64 64 5f uter,.add_type):.........if.add_
7640 74 79 70 65 20 3d 3d 20 41 44 44 5f 49 4e 54 46 5f 42 59 5f 53 55 42 4e 45 54 3a 0a 20 20 20 20 type.==.ADD_INTF_BY_SUBNET:.....
7660 20 20 20 20 20 20 20 20 5f 70 6f 72 74 5f 69 64 20 3d 20 6e 65 77 5f 72 6f 75 74 65 72 5b 27 70 ........_port_id.=.new_router['p
7680 6f 72 74 5f 69 64 27 5d 0a 20 20 20 20 20 20 20 20 20 20 20 20 5f 73 75 62 6e 65 74 5f 69 64 20 ort_id']............._subnet_id.
76a0 3d 20 69 6e 74 65 72 66 61 63 65 5f 69 6e 66 6f 5b 27 73 75 62 6e 65 74 5f 69 64 27 5d 0a 20 20 =.interface_info['subnet_id']...
76c0 20 20 20 20 20 20 65 6c 73 65 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 5f 70 6f 72 74 5f 69 64 ......else:............._port_id
76e0 20 3d 20 69 6e 74 65 72 66 61 63 65 5f 69 6e 66 6f 5b 27 70 6f 72 74 5f 69 64 27 5d 0a 20 20 20 .=.interface_info['port_id']....
7700 20 20 20 20 20 20 20 20 20 5f 73 75 62 6e 65 74 5f 69 64 20 3d 20 6e 65 77 5f 72 6f 75 74 65 72 ........._subnet_id.=.new_router
7720 5b 27 73 75 62 6e 65 74 5f 69 64 27 5d 0a 0a 20 20 20 20 20 20 20 20 72 6f 75 74 65 72 5f 64 69 ['subnet_id']..........router_di
7740 63 74 20 3d 20 7b 27 73 75 62 6e 65 74 5f 69 64 27 3a 20 5f 73 75 62 6e 65 74 5f 69 64 2c 0a 20 ct.=.{'subnet_id':._subnet_id,..
7760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 70 6f 72 74 5f 69 64 27 3a ......................'port_id':
7780 20 5f 70 6f 72 74 5f 69 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ._port_id,......................
77a0 20 20 27 69 64 27 3a 20 72 6f 75 74 65 72 5f 69 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ..'id':.router_id,..............
77c0 20 20 20 20 20 20 20 20 20 20 27 74 65 6e 61 6e 74 5f 69 64 27 3a 20 6e 65 77 5f 72 6f 75 74 65 ..........'tenant_id':.new_route
77e0 72 5b 27 74 65 6e 61 6e 74 5f 69 64 27 5d 7d 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 72 r['tenant_id']}.........return.r
7800 6f 75 74 65 72 5f 64 69 63 74 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 outer_dict......................
7820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
78a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
78c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
78e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
79a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
79c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
79e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7a00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
7a20 70 6c 75 67 69 6e 73 2f 73 66 63 2f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 plugins/sfc/....................
7a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7a60 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000755.0001750.0001750.0000
7a80 30 30 30 30 30 30 30 00 31 32 37 32 31 35 31 36 31 30 30 00 30 32 30 34 31 33 00 20 35 00 00 00 0000000.12721516100.020413..5...
7aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7b00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
7b20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
7b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7c00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
7c20 70 6c 75 67 69 6e 73 2f 73 66 63 2f 64 72 69 76 65 72 2e 70 79 00 00 00 00 00 00 00 00 00 00 00 plugins/sfc/driver.py...........
7c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7c60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
7c80 30 30 31 31 35 30 32 00 31 32 37 32 31 35 31 36 31 30 30 00 30 32 32 32 35 37 00 20 30 00 00 00 0011502.12721516100.022257..0...
7ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7d00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
7d20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
7d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
7e00 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 32 30 31 35 20 48 75 61 77 65 69 20 54 65 63 68 #.Copyright.(c).2015.Huawei.Tech
7e20 6e 6f 6c 6f 67 69 65 73 20 49 6e 64 69 61 20 50 76 74 20 4c 74 64 0a 23 20 41 6c 6c 20 52 69 67 nologies.India.Pvt.Ltd.#.All.Rig
7e40 68 74 73 20 52 65 73 65 72 76 65 64 2e 0a 23 0a 23 20 20 20 20 4c 69 63 65 6e 73 65 64 20 75 6e hts.Reserved..#.#....Licensed.un
7e60 64 65 72 20 74 68 65 20 41 70 61 63 68 65 20 4c 69 63 65 6e 73 65 2c 20 56 65 72 73 69 6f 6e 20 der.the.Apache.License,.Version.
7e80 32 2e 30 20 28 74 68 65 20 22 4c 69 63 65 6e 73 65 22 29 3b 20 79 6f 75 20 6d 61 79 0a 23 20 20 2.0.(the."License");.you.may.#..
7ea0 20 20 6e 6f 74 20 75 73 65 20 74 68 69 73 20 66 69 6c 65 20 65 78 63 65 70 74 20 69 6e 20 63 6f ..not.use.this.file.except.in.co
7ec0 6d 70 6c 69 61 6e 63 65 20 77 69 74 68 20 74 68 65 20 4c 69 63 65 6e 73 65 2e 20 59 6f 75 20 6d mpliance.with.the.License..You.m
7ee0 61 79 20 6f 62 74 61 69 6e 0a 23 20 20 20 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 4c 69 63 ay.obtain.#....a.copy.of.the.Lic
7f00 65 6e 73 65 20 61 74 0a 23 0a 23 20 20 20 20 20 20 20 20 20 68 74 74 70 3a 2f 2f 77 77 77 2e 61 ense.at.#.#.........http://www.a
7f20 70 61 63 68 65 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 4c 49 43 45 4e 53 45 2d 32 2e 30 0a 23 pache.org/licenses/LICENSE-2.0.#
7f40 0a 23 20 20 20 20 55 6e 6c 65 73 73 20 72 65 71 75 69 72 65 64 20 62 79 20 61 70 70 6c 69 63 61 .#....Unless.required.by.applica
7f60 62 6c 65 20 6c 61 77 20 6f 72 20 61 67 72 65 65 64 20 74 6f 20 69 6e 20 77 72 69 74 69 6e 67 2c ble.law.or.agreed.to.in.writing,
7f80 20 73 6f 66 74 77 61 72 65 0a 23 20 20 20 20 64 69 73 74 72 69 62 75 74 65 64 20 75 6e 64 65 72 .software.#....distributed.under
7fa0 20 74 68 65 20 4c 69 63 65 6e 73 65 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 6f 6e 20 61 .the.License.is.distributed.on.a
7fc0 6e 20 22 41 53 20 49 53 22 20 42 41 53 49 53 2c 20 57 49 54 48 4f 55 54 0a 23 20 20 20 20 57 41 n."AS.IS".BASIS,.WITHOUT.#....WA
7fe0 52 52 41 4e 54 49 45 53 20 4f 52 20 43 4f 4e 44 49 54 49 4f 4e 53 20 4f 46 20 41 4e 59 20 4b 49 RRANTIES.OR.CONDITIONS.OF.ANY.KI
8000 4e 44 2c 20 65 69 74 68 65 72 20 65 78 70 72 65 73 73 20 6f 72 20 69 6d 70 6c 69 65 64 2e 20 53 ND,.either.express.or.implied..S
8020 65 65 20 74 68 65 0a 23 20 20 20 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 74 68 65 20 73 70 65 63 ee.the.#....License.for.the.spec
8040 69 66 69 63 20 6c 61 6e 67 75 61 67 65 20 67 6f 76 65 72 6e 69 6e 67 20 70 65 72 6d 69 73 73 69 ific.language.governing.permissi
8060 6f 6e 73 20 61 6e 64 20 6c 69 6d 69 74 61 74 69 6f 6e 73 0a 23 20 20 20 20 75 6e 64 65 72 20 74 ons.and.limitations.#....under.t
8080 68 65 20 4c 69 63 65 6e 73 65 2e 0a 0a 66 72 6f 6d 20 6f 73 6c 6f 5f 63 6f 6e 66 69 67 20 69 6d he.License...from.oslo_config.im
80a0 70 6f 72 74 20 63 66 67 0a 66 72 6f 6d 20 6f 73 6c 6f 5f 6c 6f 67 20 69 6d 70 6f 72 74 20 68 65 port.cfg.from.oslo_log.import.he
80c0 6c 70 65 72 73 20 61 73 20 6c 6f 67 5f 68 65 6c 70 65 72 73 0a 66 72 6f 6d 20 6f 73 6c 6f 5f 6c lpers.as.log_helpers.from.oslo_l
80e0 6f 67 20 69 6d 70 6f 72 74 20 6c 6f 67 20 61 73 20 6c 6f 67 67 69 6e 67 0a 0a 66 72 6f 6d 20 6e og.import.log.as.logging..from.n
8100 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2e 63 6f 6d 6d 6f 6e 20 69 6d 70 6f 72 74 20 63 6f 6e etworking_onos.common.import.con
8120 66 69 67 20 20 23 20 6e 6f 71 61 0a 66 72 6f 6d 20 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 fig..#.noqa.from.networking_onos
8140 2e 63 6f 6d 6d 6f 6e 20 69 6d 70 6f 72 74 20 75 74 69 6c 73 20 61 73 20 6f 6e 6f 73 5f 75 74 69 .common.import.utils.as.onos_uti
8160 6c 73 0a 0a 66 72 6f 6d 20 6e 65 74 77 6f 72 6b 69 6e 67 5f 73 66 63 2e 73 65 72 76 69 63 65 73 ls..from.networking_sfc.services
8180 2e 73 66 63 2e 64 72 69 76 65 72 73 20 69 6d 70 6f 72 74 20 62 61 73 65 20 61 73 20 64 72 69 76 .sfc.drivers.import.base.as.driv
81a0 65 72 5f 62 61 73 65 0a 0a 4c 4f 47 20 3d 20 6c 6f 67 67 69 6e 67 2e 67 65 74 4c 6f 67 67 65 72 er_base..LOG.=.logging.getLogger
81c0 28 5f 5f 6e 61 6d 65 5f 5f 29 0a 0a 0a 63 6c 61 73 73 20 53 46 43 4f 4e 4f 53 44 72 69 76 65 72 (__name__)...class.SFCONOSDriver
81e0 28 64 72 69 76 65 72 5f 62 61 73 65 2e 53 66 63 44 72 69 76 65 72 42 61 73 65 29 3a 0a 0a 20 20 (driver_base.SfcDriverBase):....
8200 20 20 22 22 22 4f 70 65 6e 20 4e 65 74 77 6f 72 6b 69 6e 67 20 4f 70 65 72 61 74 69 6e 67 20 53 .."""Open.Networking.Operating.S
8220 79 73 74 65 6d 20 53 46 43 20 44 72 69 76 65 72 20 66 6f 72 20 4e 65 75 74 72 6f 6e 2e 0a 0a 20 ystem.SFC.Driver.for.Neutron....
8240 20 20 20 43 6f 64 65 20 77 68 69 63 68 20 6d 61 6b 65 73 20 63 6f 6d 6d 75 6e 69 63 61 74 69 6f ...Code.which.makes.communicatio
8260 6e 20 62 65 74 77 65 65 6e 20 4f 4e 4f 53 20 61 6e 64 20 4f 70 65 6e 53 74 61 63 6b 20 4e 65 75 n.between.ONOS.and.OpenStack.Neu
8280 74 72 6f 6e 0a 20 20 20 20 70 6f 73 73 69 62 6c 65 2e 0a 20 20 20 20 22 22 22 0a 20 20 20 20 64 tron.....possible......""".....d
82a0 65 66 20 5f 5f 69 6e 69 74 5f 5f 28 73 65 6c 66 29 3a 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e ef.__init__(self):.........self.
82c0 6f 6e 6f 73 5f 70 61 74 68 20 3d 20 63 66 67 2e 43 4f 4e 46 2e 6f 6e 6f 73 2e 75 72 6c 5f 70 61 onos_path.=.cfg.CONF.onos.url_pa
82e0 74 68 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 6f 6e 6f 73 5f 61 75 74 68 20 3d 20 28 63 66 67 th.........self.onos_auth.=.(cfg
8300 2e 43 4f 4e 46 2e 6f 6e 6f 73 2e 75 73 65 72 6e 61 6d 65 2c 20 63 66 67 2e 43 4f 4e 46 2e 6f 6e .CONF.onos.username,.cfg.CONF.on
8320 6f 73 2e 70 61 73 73 77 6f 72 64 29 0a 0a 20 20 20 20 64 65 66 20 69 6e 69 74 69 61 6c 69 7a 65 os.password)......def.initialize
8340 28 73 65 6c 66 29 3a 0a 20 20 20 20 20 20 20 20 23 20 4e 6f 20 61 63 74 69 6f 6e 20 72 65 71 75 (self):.........#.No.action.requ
8360 69 72 65 64 20 61 73 20 6f 66 20 6e 6f 77 2e 20 43 61 6e 20 62 65 20 65 78 74 65 6e 64 65 64 20 ired.as.of.now..Can.be.extended.
8380 69 6e 0a 20 20 20 20 20 20 20 20 23 20 74 68 65 20 66 75 74 75 72 65 20 69 66 20 72 65 71 75 69 in.........#.the.future.if.requi
83a0 72 65 64 2e 0a 20 20 20 20 20 20 20 20 70 61 73 73 0a 0a 20 20 20 20 40 6c 6f 67 5f 68 65 6c 70 red..........pass......@log_help
83c0 65 72 73 2e 6c 6f 67 5f 6d 65 74 68 6f 64 5f 63 61 6c 6c 0a 20 20 20 20 64 65 66 20 63 72 65 61 ers.log_method_call.....def.crea
83e0 74 65 5f 70 6f 72 74 5f 63 68 61 69 6e 28 73 65 6c 66 2c 20 63 6f 6e 74 65 78 74 29 3a 0a 20 20 te_port_chain(self,.context):...
8400 20 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 74 68 20 3d 20 27 70 6f 72 74 5f 63 68 61 69 6e 73 ......entity_path.=.'port_chains
8420 27 0a 20 20 20 20 20 20 20 20 72 65 73 6f 75 72 63 65 20 3d 20 63 6f 6e 74 65 78 74 2e 63 75 72 '.........resource.=.context.cur
8440 72 65 6e 74 2e 63 6f 70 79 28 29 0a 20 20 20 20 20 20 20 20 6f 6e 6f 73 5f 75 74 69 6c 73 2e 73 rent.copy().........onos_utils.s
8460 65 6e 64 5f 6d 73 67 28 73 65 6c 66 2e 6f 6e 6f 73 5f 70 61 74 68 2c 20 73 65 6c 66 2e 6f 6e 6f end_msg(self.onos_path,.self.ono
8480 73 5f 61 75 74 68 2c 20 27 70 6f 73 74 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 s_auth,.'post',.................
84a0 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 74 68 2c 20 7b 27 70 6f 72 74 5f ............entity_path,.{'port_
84c0 63 68 61 69 6e 27 3a 20 72 65 73 6f 75 72 63 65 7d 29 0a 0a 20 20 20 20 40 6c 6f 67 5f 68 65 6c chain':.resource})......@log_hel
84e0 70 65 72 73 2e 6c 6f 67 5f 6d 65 74 68 6f 64 5f 63 61 6c 6c 0a 20 20 20 20 64 65 66 20 75 70 64 pers.log_method_call.....def.upd
8500 61 74 65 5f 70 6f 72 74 5f 63 68 61 69 6e 28 73 65 6c 66 2c 20 63 6f 6e 74 65 78 74 29 3a 0a 20 ate_port_chain(self,.context):..
8520 20 20 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 74 68 20 3d 20 27 70 6f 72 74 5f 63 68 61 69 6e .......entity_path.=.'port_chain
8540 73 2f 27 20 2b 20 63 6f 6e 74 65 78 74 2e 63 75 72 72 65 6e 74 5b 27 69 64 27 5d 0a 20 20 20 20 s/'.+.context.current['id'].....
8560 20 20 20 20 72 65 73 6f 75 72 63 65 20 3d 20 63 6f 6e 74 65 78 74 2e 63 75 72 72 65 6e 74 2e 63 ....resource.=.context.current.c
8580 6f 70 79 28 29 0a 20 20 20 20 20 20 20 20 6f 6e 6f 73 5f 75 74 69 6c 73 2e 73 65 6e 64 5f 6d 73 opy().........onos_utils.send_ms
85a0 67 28 73 65 6c 66 2e 6f 6e 6f 73 5f 70 61 74 68 2c 20 73 65 6c 66 2e 6f 6e 6f 73 5f 61 75 74 68 g(self.onos_path,.self.onos_auth
85c0 2c 20 27 70 75 74 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ,.'put',........................
85e0 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 74 68 2c 20 7b 27 70 6f 72 74 5f 63 68 61 69 6e 27 3a .....entity_path,.{'port_chain':
8600 20 72 65 73 6f 75 72 63 65 7d 29 0a 0a 20 20 20 20 40 6c 6f 67 5f 68 65 6c 70 65 72 73 2e 6c 6f .resource})......@log_helpers.lo
8620 67 5f 6d 65 74 68 6f 64 5f 63 61 6c 6c 0a 20 20 20 20 64 65 66 20 64 65 6c 65 74 65 5f 70 6f 72 g_method_call.....def.delete_por
8640 74 5f 63 68 61 69 6e 28 73 65 6c 66 2c 20 63 6f 6e 74 65 78 74 29 3a 0a 20 20 20 20 20 20 20 20 t_chain(self,.context):.........
8660 65 6e 74 69 74 79 5f 70 61 74 68 20 3d 20 27 70 6f 72 74 5f 63 68 61 69 6e 73 2f 27 20 2b 20 63 entity_path.=.'port_chains/'.+.c
8680 6f 6e 74 65 78 74 2e 63 75 72 72 65 6e 74 5b 27 69 64 27 5d 0a 20 20 20 20 20 20 20 20 6f 6e 6f ontext.current['id'].........ono
86a0 73 5f 75 74 69 6c 73 2e 73 65 6e 64 5f 6d 73 67 28 73 65 6c 66 2e 6f 6e 6f 73 5f 70 61 74 68 2c s_utils.send_msg(self.onos_path,
86c0 20 73 65 6c 66 2e 6f 6e 6f 73 5f 61 75 74 68 2c 20 27 64 65 6c 65 74 65 27 2c 0a 20 20 20 20 20 .self.onos_auth,.'delete',......
86e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 .......................entity_pa
8700 74 68 29 0a 0a 20 20 20 20 40 6c 6f 67 5f 68 65 6c 70 65 72 73 2e 6c 6f 67 5f 6d 65 74 68 6f 64 th)......@log_helpers.log_method
8720 5f 63 61 6c 6c 0a 20 20 20 20 64 65 66 20 63 72 65 61 74 65 5f 70 6f 72 74 5f 70 61 69 72 28 73 _call.....def.create_port_pair(s
8740 65 6c 66 2c 20 63 6f 6e 74 65 78 74 29 3a 0a 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 elf,.context):.........entity_pa
8760 74 68 20 3d 20 27 70 6f 72 74 5f 70 61 69 72 73 27 0a 20 20 20 20 20 20 20 20 72 65 73 6f 75 72 th.=.'port_pairs'.........resour
8780 63 65 20 3d 20 63 6f 6e 74 65 78 74 2e 63 75 72 72 65 6e 74 2e 63 6f 70 79 28 29 0a 20 20 20 20 ce.=.context.current.copy().....
87a0 20 20 20 20 6f 6e 6f 73 5f 75 74 69 6c 73 2e 73 65 6e 64 5f 6d 73 67 28 73 65 6c 66 2e 6f 6e 6f ....onos_utils.send_msg(self.ono
87c0 73 5f 70 61 74 68 2c 20 73 65 6c 66 2e 6f 6e 6f 73 5f 61 75 74 68 2c 20 27 70 6f 73 74 27 2c 0a s_path,.self.onos_auth,.'post',.
87e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 74 69 ............................enti
8800 74 79 5f 70 61 74 68 2c 20 7b 27 70 6f 72 74 5f 70 61 69 72 27 3a 20 72 65 73 6f 75 72 63 65 7d ty_path,.{'port_pair':.resource}
8820 29 0a 0a 20 20 20 20 40 6c 6f 67 5f 68 65 6c 70 65 72 73 2e 6c 6f 67 5f 6d 65 74 68 6f 64 5f 63 )......@log_helpers.log_method_c
8840 61 6c 6c 0a 20 20 20 20 64 65 66 20 75 70 64 61 74 65 5f 70 6f 72 74 5f 70 61 69 72 28 73 65 6c all.....def.update_port_pair(sel
8860 66 2c 20 63 6f 6e 74 65 78 74 29 3a 0a 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 74 68 f,.context):.........entity_path
8880 20 3d 20 27 70 6f 72 74 5f 70 61 69 72 73 2f 27 20 2b 20 63 6f 6e 74 65 78 74 2e 63 75 72 72 65 .=.'port_pairs/'.+.context.curre
88a0 6e 74 5b 27 69 64 27 5d 0a 20 20 20 20 20 20 20 20 72 65 73 6f 75 72 63 65 20 3d 20 63 6f 6e 74 nt['id'].........resource.=.cont
88c0 65 78 74 2e 63 75 72 72 65 6e 74 2e 63 6f 70 79 28 29 0a 20 20 20 20 20 20 20 20 6f 6e 6f 73 5f ext.current.copy().........onos_
88e0 75 74 69 6c 73 2e 73 65 6e 64 5f 6d 73 67 28 73 65 6c 66 2e 6f 6e 6f 73 5f 70 61 74 68 2c 20 73 utils.send_msg(self.onos_path,.s
8900 65 6c 66 2e 6f 6e 6f 73 5f 61 75 74 68 2c 20 27 70 75 74 27 2c 0a 20 20 20 20 20 20 20 20 20 20 elf.onos_auth,.'put',...........
8920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 74 68 2c 20 7b ..................entity_path,.{
8940 27 70 6f 72 74 5f 70 61 69 72 27 3a 20 72 65 73 6f 75 72 63 65 7d 29 0a 0a 20 20 20 20 40 6c 6f 'port_pair':.resource})......@lo
8960 67 5f 68 65 6c 70 65 72 73 2e 6c 6f 67 5f 6d 65 74 68 6f 64 5f 63 61 6c 6c 0a 20 20 20 20 64 65 g_helpers.log_method_call.....de
8980 66 20 64 65 6c 65 74 65 5f 70 6f 72 74 5f 70 61 69 72 28 73 65 6c 66 2c 20 63 6f 6e 74 65 78 74 f.delete_port_pair(self,.context
89a0 29 3a 0a 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 74 68 20 3d 20 27 70 6f 72 74 5f 70 ):.........entity_path.=.'port_p
89c0 61 69 72 73 2f 27 20 2b 20 63 6f 6e 74 65 78 74 2e 63 75 72 72 65 6e 74 5b 27 69 64 27 5d 0a 20 airs/'.+.context.current['id']..
89e0 20 20 20 20 20 20 20 6f 6e 6f 73 5f 75 74 69 6c 73 2e 73 65 6e 64 5f 6d 73 67 28 73 65 6c 66 2e .......onos_utils.send_msg(self.
8a00 6f 6e 6f 73 5f 70 61 74 68 2c 20 73 65 6c 66 2e 6f 6e 6f 73 5f 61 75 74 68 2c 20 27 64 65 6c 65 onos_path,.self.onos_auth,.'dele
8a20 74 65 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 te',............................
8a40 20 65 6e 74 69 74 79 5f 70 61 74 68 29 0a 0a 20 20 20 20 40 6c 6f 67 5f 68 65 6c 70 65 72 73 2e .entity_path)......@log_helpers.
8a60 6c 6f 67 5f 6d 65 74 68 6f 64 5f 63 61 6c 6c 0a 20 20 20 20 64 65 66 20 63 72 65 61 74 65 5f 70 log_method_call.....def.create_p
8a80 6f 72 74 5f 70 61 69 72 5f 67 72 6f 75 70 28 73 65 6c 66 2c 20 63 6f 6e 74 65 78 74 29 3a 0a 20 ort_pair_group(self,.context):..
8aa0 20 20 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 74 68 20 3d 20 27 70 6f 72 74 5f 70 61 69 72 5f .......entity_path.=.'port_pair_
8ac0 67 72 6f 75 70 73 27 0a 20 20 20 20 20 20 20 20 72 65 73 6f 75 72 63 65 20 3d 20 63 6f 6e 74 65 groups'.........resource.=.conte
8ae0 78 74 2e 63 75 72 72 65 6e 74 2e 63 6f 70 79 28 29 0a 20 20 20 20 20 20 20 20 6f 6e 6f 73 5f 75 xt.current.copy().........onos_u
8b00 74 69 6c 73 2e 73 65 6e 64 5f 6d 73 67 28 73 65 6c 66 2e 6f 6e 6f 73 5f 70 61 74 68 2c 20 73 65 tils.send_msg(self.onos_path,.se
8b20 6c 66 2e 6f 6e 6f 73 5f 61 75 74 68 2c 20 27 70 6f 73 74 27 2c 0a 20 20 20 20 20 20 20 20 20 20 lf.onos_auth,.'post',...........
8b40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 74 68 2c 20 7b ..................entity_path,.{
8b60 27 70 6f 72 74 5f 70 61 69 72 5f 67 72 6f 75 70 27 3a 20 72 65 73 6f 75 72 63 65 7d 29 0a 0a 20 'port_pair_group':.resource})...
8b80 20 20 20 40 6c 6f 67 5f 68 65 6c 70 65 72 73 2e 6c 6f 67 5f 6d 65 74 68 6f 64 5f 63 61 6c 6c 0a ...@log_helpers.log_method_call.
8ba0 20 20 20 20 64 65 66 20 75 70 64 61 74 65 5f 70 6f 72 74 5f 70 61 69 72 5f 67 72 6f 75 70 28 73 ....def.update_port_pair_group(s
8bc0 65 6c 66 2c 20 63 6f 6e 74 65 78 74 29 3a 0a 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 elf,.context):.........entity_pa
8be0 74 68 20 3d 20 27 70 6f 72 74 5f 70 61 69 72 5f 67 72 6f 75 70 73 2f 27 20 2b 20 63 6f 6e 74 65 th.=.'port_pair_groups/'.+.conte
8c00 78 74 2e 63 75 72 72 65 6e 74 5b 27 69 64 27 5d 0a 20 20 20 20 20 20 20 20 72 65 73 6f 75 72 63 xt.current['id'].........resourc
8c20 65 20 3d 20 63 6f 6e 74 65 78 74 2e 63 75 72 72 65 6e 74 2e 63 6f 70 79 28 29 0a 20 20 20 20 20 e.=.context.current.copy()......
8c40 20 20 20 6f 6e 6f 73 5f 75 74 69 6c 73 2e 73 65 6e 64 5f 6d 73 67 28 73 65 6c 66 2e 6f 6e 6f 73 ...onos_utils.send_msg(self.onos
8c60 5f 70 61 74 68 2c 20 73 65 6c 66 2e 6f 6e 6f 73 5f 61 75 74 68 2c 20 27 70 75 74 27 2c 0a 20 20 _path,.self.onos_auth,.'put',...
8c80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 ..........................entity
8ca0 5f 70 61 74 68 2c 20 7b 27 70 6f 72 74 5f 70 61 69 72 5f 67 72 6f 75 70 27 3a 20 72 65 73 6f 75 _path,.{'port_pair_group':.resou
8cc0 72 63 65 7d 29 0a 0a 20 20 20 20 40 6c 6f 67 5f 68 65 6c 70 65 72 73 2e 6c 6f 67 5f 6d 65 74 68 rce})......@log_helpers.log_meth
8ce0 6f 64 5f 63 61 6c 6c 0a 20 20 20 20 64 65 66 20 64 65 6c 65 74 65 5f 70 6f 72 74 5f 70 61 69 72 od_call.....def.delete_port_pair
8d00 5f 67 72 6f 75 70 28 73 65 6c 66 2c 20 63 6f 6e 74 65 78 74 29 3a 0a 20 20 20 20 20 20 20 20 65 _group(self,.context):.........e
8d20 6e 74 69 74 79 5f 70 61 74 68 20 3d 20 27 70 6f 72 74 5f 70 61 69 72 5f 67 72 6f 75 70 73 2f 27 ntity_path.=.'port_pair_groups/'
8d40 20 2b 20 63 6f 6e 74 65 78 74 2e 63 75 72 72 65 6e 74 5b 27 69 64 27 5d 0a 20 20 20 20 20 20 20 .+.context.current['id']........
8d60 20 6f 6e 6f 73 5f 75 74 69 6c 73 2e 73 65 6e 64 5f 6d 73 67 28 73 65 6c 66 2e 6f 6e 6f 73 5f 70 .onos_utils.send_msg(self.onos_p
8d80 61 74 68 2c 20 73 65 6c 66 2e 6f 6e 6f 73 5f 61 75 74 68 2c 20 27 64 65 6c 65 74 65 27 2c 0a 20 ath,.self.onos_auth,.'delete',..
8da0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 74 69 74 ...........................entit
8dc0 79 5f 70 61 74 68 29 0a 0a 20 20 20 20 40 6c 6f 67 5f 68 65 6c 70 65 72 73 2e 6c 6f 67 5f 6d 65 y_path)......@log_helpers.log_me
8de0 74 68 6f 64 5f 63 61 6c 6c 0a 20 20 20 20 64 65 66 20 63 72 65 61 74 65 5f 66 6c 6f 77 5f 63 6c thod_call.....def.create_flow_cl
8e00 61 73 73 69 66 69 65 72 28 73 65 6c 66 2c 20 63 6f 6e 74 65 78 74 29 3a 0a 20 20 20 20 20 20 20 assifier(self,.context):........
8e20 20 65 6e 74 69 74 79 5f 70 61 74 68 20 3d 20 27 66 6c 6f 77 5f 63 6c 61 73 73 69 66 69 65 72 73 .entity_path.=.'flow_classifiers
8e40 27 0a 20 20 20 20 20 20 20 20 72 65 73 6f 75 72 63 65 20 3d 20 63 6f 6e 74 65 78 74 2e 63 75 72 '.........resource.=.context.cur
8e60 72 65 6e 74 2e 63 6f 70 79 28 29 0a 20 20 20 20 20 20 20 20 6f 6e 6f 73 5f 75 74 69 6c 73 2e 73 rent.copy().........onos_utils.s
8e80 65 6e 64 5f 6d 73 67 28 73 65 6c 66 2e 6f 6e 6f 73 5f 70 61 74 68 2c 20 73 65 6c 66 2e 6f 6e 6f end_msg(self.onos_path,.self.ono
8ea0 73 5f 61 75 74 68 2c 20 27 70 6f 73 74 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 s_auth,.'post',.................
8ec0 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 74 68 2c 20 7b 27 66 6c 6f 77 5f ............entity_path,.{'flow_
8ee0 63 6c 61 73 73 69 66 69 65 72 27 3a 20 72 65 73 6f 75 72 63 65 7d 29 0a 0a 20 20 20 20 40 6c 6f classifier':.resource})......@lo
8f00 67 5f 68 65 6c 70 65 72 73 2e 6c 6f 67 5f 6d 65 74 68 6f 64 5f 63 61 6c 6c 0a 20 20 20 20 64 65 g_helpers.log_method_call.....de
8f20 66 20 75 70 64 61 74 65 5f 66 6c 6f 77 5f 63 6c 61 73 73 69 66 69 65 72 28 73 65 6c 66 2c 20 63 f.update_flow_classifier(self,.c
8f40 6f 6e 74 65 78 74 29 3a 0a 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 74 68 20 3d 20 27 ontext):.........entity_path.=.'
8f60 66 6c 6f 77 5f 63 6c 61 73 73 69 66 69 65 72 73 2f 27 20 2b 20 63 6f 6e 74 65 78 74 2e 63 75 72 flow_classifiers/'.+.context.cur
8f80 72 65 6e 74 5b 27 69 64 27 5d 0a 20 20 20 20 20 20 20 20 72 65 73 6f 75 72 63 65 20 3d 20 63 6f rent['id'].........resource.=.co
8fa0 6e 74 65 78 74 2e 63 75 72 72 65 6e 74 2e 63 6f 70 79 28 29 0a 20 20 20 20 20 20 20 20 6f 6e 6f ntext.current.copy().........ono
8fc0 73 5f 75 74 69 6c 73 2e 73 65 6e 64 5f 6d 73 67 28 73 65 6c 66 2e 6f 6e 6f 73 5f 70 61 74 68 2c s_utils.send_msg(self.onos_path,
8fe0 20 73 65 6c 66 2e 6f 6e 6f 73 5f 61 75 74 68 2c 20 27 70 75 74 27 2c 0a 20 20 20 20 20 20 20 20 .self.onos_auth,.'put',.........
9000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 74 68 2c ....................entity_path,
9020 20 7b 27 66 6c 6f 77 5f 63 6c 61 73 73 69 66 69 65 72 27 3a 20 72 65 73 6f 75 72 63 65 7d 29 0a .{'flow_classifier':.resource}).
9040 0a 20 20 20 20 40 6c 6f 67 5f 68 65 6c 70 65 72 73 2e 6c 6f 67 5f 6d 65 74 68 6f 64 5f 63 61 6c .....@log_helpers.log_method_cal
9060 6c 0a 20 20 20 20 64 65 66 20 64 65 6c 65 74 65 5f 66 6c 6f 77 5f 63 6c 61 73 73 69 66 69 65 72 l.....def.delete_flow_classifier
9080 28 73 65 6c 66 2c 20 63 6f 6e 74 65 78 74 29 3a 0a 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 5f (self,.context):.........entity_
90a0 70 61 74 68 20 3d 20 27 66 6c 6f 77 5f 63 6c 61 73 73 69 66 69 65 72 73 2f 27 20 2b 20 63 6f 6e path.=.'flow_classifiers/'.+.con
90c0 74 65 78 74 2e 63 75 72 72 65 6e 74 5b 27 69 64 27 5d 0a 20 20 20 20 20 20 20 20 6f 6e 6f 73 5f text.current['id'].........onos_
90e0 75 74 69 6c 73 2e 73 65 6e 64 5f 6d 73 67 28 73 65 6c 66 2e 6f 6e 6f 73 5f 70 61 74 68 2c 20 73 utils.send_msg(self.onos_path,.s
9100 65 6c 66 2e 6f 6e 6f 73 5f 61 75 74 68 2c 20 27 64 65 6c 65 74 65 27 2c 0a 20 20 20 20 20 20 20 elf.onos_auth,.'delete',........
9120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 5f 70 61 74 68 .....................entity_path
9140 29 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 )...............................
9160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
91a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
91c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
91e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9200 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
9220 70 6c 75 67 69 6e 73 2f 73 66 63 2f 5f 5f 69 6e 69 74 5f 5f 2e 70 79 00 00 00 00 00 00 00 00 00 plugins/sfc/__init__.py.........
9240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9260 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
9280 30 30 30 30 30 30 30 00 31 32 37 32 31 35 31 36 31 30 30 00 30 32 32 35 31 32 00 20 30 00 00 00 0000000.12721516100.022512..0...
92a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
92c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
92e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9300 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
9320 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
9340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
93a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
93c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
93e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9400 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
9420 70 6c 75 67 69 6e 73 2f 73 66 63 2f 64 72 69 76 65 72 2e 70 79 63 00 00 00 00 00 00 00 00 00 00 plugins/sfc/driver.pyc..........
9440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9460 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
9480 30 30 31 32 36 36 35 00 31 32 37 32 31 35 31 36 31 30 30 00 30 32 32 34 33 35 00 20 30 00 00 00 0012665.12721516100.022435..0...
94a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
94c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
94e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9500 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
9520 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
9540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
95a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
95c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
95e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9600 03 f3 0d 0a 8c 71 40 56 63 00 00 00 00 00 00 00 00 03 00 00 00 40 00 00 00 73 8c 00 00 00 64 00 .....q@Vc............@...s....d.
9620 00 64 01 00 6c 00 00 6d 01 00 5a 01 00 01 64 00 00 64 02 00 6c 02 00 6d 03 00 5a 04 00 01 64 00 .d..l..m..Z...d..d..l..m..Z...d.
9640 00 64 03 00 6c 02 00 6d 05 00 5a 06 00 01 64 00 00 64 04 00 6c 07 00 6d 08 00 5a 08 00 01 64 00 .d..l..m..Z...d..d..l..m..Z...d.
9660 00 64 05 00 6c 07 00 6d 09 00 5a 0a 00 01 64 00 00 64 06 00 6c 0b 00 6d 0c 00 5a 0d 00 01 65 06 .d..l..m..Z...d..d..l..m..Z...e.
9680 00 6a 0e 00 65 0f 00 83 01 00 5a 10 00 64 07 00 65 0d 00 6a 11 00 66 01 00 64 08 00 84 00 00 83 .j..e.....Z..d..e..j..f..d......
96a0 00 00 59 5a 12 00 64 09 00 53 28 0a 00 00 00 69 ff ff ff ff 28 01 00 00 00 74 03 00 00 00 63 66 ..YZ..d..S(....i....(....t....cf
96c0 67 28 01 00 00 00 74 07 00 00 00 68 65 6c 70 65 72 73 28 01 00 00 00 74 03 00 00 00 6c 6f 67 28 g(....t....helpers(....t....log(
96e0 01 00 00 00 74 06 00 00 00 63 6f 6e 66 69 67 28 01 00 00 00 74 05 00 00 00 75 74 69 6c 73 28 01 ....t....config(....t....utils(.
9700 00 00 00 74 04 00 00 00 62 61 73 65 74 0d 00 00 00 53 46 43 4f 4e 4f 53 44 72 69 76 65 72 63 00 ...t....baset....SFCONOSDriverc.
9720 00 00 00 00 00 00 00 02 00 00 00 42 00 00 00 73 f8 00 00 00 65 00 00 5a 01 00 64 00 00 5a 02 00 ...........B...s....e..Z..d..Z..
9740 64 01 00 84 00 00 5a 03 00 64 02 00 84 00 00 5a 04 00 65 05 00 6a 06 00 64 03 00 84 00 00 83 01 d.....Z..d.....Z..e..j..d.......
9760 00 5a 07 00 65 05 00 6a 06 00 64 04 00 84 00 00 83 01 00 5a 08 00 65 05 00 6a 06 00 64 05 00 84 .Z..e..j..d........Z..e..j..d...
9780 00 00 83 01 00 5a 09 00 65 05 00 6a 06 00 64 06 00 84 00 00 83 01 00 5a 0a 00 65 05 00 6a 06 00 .....Z..e..j..d........Z..e..j..
97a0 64 07 00 84 00 00 83 01 00 5a 0b 00 65 05 00 6a 06 00 64 08 00 84 00 00 83 01 00 5a 0c 00 65 05 d........Z..e..j..d........Z..e.
97c0 00 6a 06 00 64 09 00 84 00 00 83 01 00 5a 0d 00 65 05 00 6a 06 00 64 0a 00 84 00 00 83 01 00 5a .j..d........Z..e..j..d........Z
97e0 0e 00 65 05 00 6a 06 00 64 0b 00 84 00 00 83 01 00 5a 0f 00 65 05 00 6a 06 00 64 0c 00 84 00 00 ..e..j..d........Z..e..j..d.....
9800 83 01 00 5a 10 00 65 05 00 6a 06 00 64 0d 00 84 00 00 83 01 00 5a 11 00 65 05 00 6a 06 00 64 0e ...Z..e..j..d........Z..e..j..d.
9820 00 84 00 00 83 01 00 5a 12 00 52 53 28 0f 00 00 00 73 92 00 00 00 4f 70 65 6e 20 4e 65 74 77 6f .......Z..RS(....s....Open.Netwo
9840 72 6b 69 6e 67 20 4f 70 65 72 61 74 69 6e 67 20 53 79 73 74 65 6d 20 53 46 43 20 44 72 69 76 65 rking.Operating.System.SFC.Drive
9860 72 20 66 6f 72 20 4e 65 75 74 72 6f 6e 2e 0a 0a 20 20 20 20 43 6f 64 65 20 77 68 69 63 68 20 6d r.for.Neutron.......Code.which.m
9880 61 6b 65 73 20 63 6f 6d 6d 75 6e 69 63 61 74 69 6f 6e 20 62 65 74 77 65 65 6e 20 4f 4e 4f 53 20 akes.communication.between.ONOS.
98a0 61 6e 64 20 4f 70 65 6e 53 74 61 63 6b 20 4e 65 75 74 72 6f 6e 0a 20 20 20 20 70 6f 73 73 69 62 and.OpenStack.Neutron.....possib
98c0 6c 65 2e 0a 20 20 20 20 63 01 00 00 00 01 00 00 00 02 00 00 00 43 00 00 00 73 37 00 00 00 74 00 le......c............C...s7...t.
98e0 00 6a 01 00 6a 02 00 6a 03 00 7c 00 00 5f 04 00 74 00 00 6a 01 00 6a 02 00 6a 05 00 74 00 00 6a .j..j..j..|.._..t..j..j..j..t..j
9900 01 00 6a 02 00 6a 06 00 66 02 00 7c 00 00 5f 07 00 64 00 00 53 28 01 00 00 00 4e 28 08 00 00 00 ..j..j..f..|.._..d..S(....N(....
9920 52 00 00 00 00 74 04 00 00 00 43 4f 4e 46 74 04 00 00 00 6f 6e 6f 73 74 08 00 00 00 75 72 6c 5f R....t....CONFt....onost....url_
9940 70 61 74 68 74 09 00 00 00 6f 6e 6f 73 5f 70 61 74 68 74 08 00 00 00 75 73 65 72 6e 61 6d 65 74 patht....onos_patht....usernamet
9960 08 00 00 00 70 61 73 73 77 6f 72 64 74 09 00 00 00 6f 6e 6f 73 5f 61 75 74 68 28 01 00 00 00 74 ....passwordt....onos_auth(....t
9980 04 00 00 00 73 65 6c 66 28 00 00 00 00 28 00 00 00 00 73 46 00 00 00 2f 75 73 72 2f 6c 69 62 2f ....self(....(....sF.../usr/lib/
99a0 70 79 74 68 6f 6e 32 2e 37 2f 64 69 73 74 2d 70 61 63 6b 61 67 65 73 2f 6e 65 74 77 6f 72 6b 69 python2.7/dist-packages/networki
99c0 6e 67 5f 6f 6e 6f 73 2f 70 6c 75 67 69 6e 73 2f 73 66 63 2f 64 72 69 76 65 72 2e 70 79 74 08 00 ng_onos/plugins/sfc/driver.pyt..
99e0 00 00 5f 5f 69 6e 69 74 5f 5f 23 00 00 00 73 04 00 00 00 00 01 12 01 63 01 00 00 00 01 00 00 00 ..__init__#...s........c........
9a00 01 00 00 00 43 00 00 00 73 04 00 00 00 64 00 00 53 28 01 00 00 00 4e 28 00 00 00 00 28 01 00 00 ....C...s....d..S(....N(....(...
9a20 00 52 0e 00 00 00 28 00 00 00 00 28 00 00 00 00 73 46 00 00 00 2f 75 73 72 2f 6c 69 62 2f 70 79 .R....(....(....sF.../usr/lib/py
9a40 74 68 6f 6e 32 2e 37 2f 64 69 73 74 2d 70 61 63 6b 61 67 65 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 thon2.7/dist-packages/networking
9a60 5f 6f 6e 6f 73 2f 70 6c 75 67 69 6e 73 2f 73 66 63 2f 64 72 69 76 65 72 2e 70 79 74 0a 00 00 00 _onos/plugins/sfc/driver.pyt....
9a80 69 6e 69 74 69 61 6c 69 7a 65 27 00 00 00 73 02 00 00 00 00 03 63 02 00 00 00 04 00 00 00 08 00 initialize'...s......c..........
9aa0 00 00 43 00 00 00 73 3f 00 00 00 64 01 00 7d 02 00 7c 01 00 6a 00 00 6a 01 00 83 00 00 7d 03 00 ..C...s?...d..}..|..j..j.....}..
9ac0 74 02 00 6a 03 00 7c 00 00 6a 04 00 7c 00 00 6a 05 00 64 02 00 7c 02 00 69 01 00 7c 03 00 64 03 t..j..|..j..|..j..d..|..i..|..d.
9ae0 00 36 83 05 00 01 64 00 00 53 28 04 00 00 00 4e 74 0b 00 00 00 70 6f 72 74 5f 63 68 61 69 6e 73 .6....d..S(....Nt....port_chains
9b00 74 04 00 00 00 70 6f 73 74 74 0a 00 00 00 70 6f 72 74 5f 63 68 61 69 6e 28 06 00 00 00 74 07 00 t....postt....port_chain(....t..
9b20 00 00 63 75 72 72 65 6e 74 74 04 00 00 00 63 6f 70 79 74 0a 00 00 00 6f 6e 6f 73 5f 75 74 69 6c ..currentt....copyt....onos_util
9b40 73 74 08 00 00 00 73 65 6e 64 5f 6d 73 67 52 0a 00 00 00 52 0d 00 00 00 28 04 00 00 00 52 0e 00 st....send_msgR....R....(....R..
9b60 00 00 74 07 00 00 00 63 6f 6e 74 65 78 74 74 0b 00 00 00 65 6e 74 69 74 79 5f 70 61 74 68 74 08 ..t....contextt....entity_patht.
9b80 00 00 00 72 65 73 6f 75 72 63 65 28 00 00 00 00 28 00 00 00 00 73 46 00 00 00 2f 75 73 72 2f 6c ...resource(....(....sF.../usr/l
9ba0 69 62 2f 70 79 74 68 6f 6e 32 2e 37 2f 64 69 73 74 2d 70 61 63 6b 61 67 65 73 2f 6e 65 74 77 6f ib/python2.7/dist-packages/netwo
9bc0 72 6b 69 6e 67 5f 6f 6e 6f 73 2f 70 6c 75 67 69 6e 73 2f 73 66 63 2f 64 72 69 76 65 72 2e 70 79 rking_onos/plugins/sfc/driver.py
9be0 74 11 00 00 00 63 72 65 61 74 65 5f 70 6f 72 74 5f 63 68 61 69 6e 2c 00 00 00 73 08 00 00 00 00 t....create_port_chain,...s.....
9c00 02 06 01 0f 01 15 01 63 02 00 00 00 04 00 00 00 08 00 00 00 43 00 00 00 73 4a 00 00 00 64 01 00 .......c............C...sJ...d..
9c20 7c 01 00 6a 00 00 64 02 00 19 17 7d 02 00 7c 01 00 6a 00 00 6a 01 00 83 00 00 7d 03 00 74 02 00 |..j..d....}..|..j..j.....}..t..
9c40 6a 03 00 7c 00 00 6a 04 00 7c 00 00 6a 05 00 64 03 00 7c 02 00 69 01 00 7c 03 00 64 04 00 36 83 j..|..j..|..j..d..|..i..|..d..6.
9c60 05 00 01 64 00 00 53 28 05 00 00 00 4e 73 0c 00 00 00 70 6f 72 74 5f 63 68 61 69 6e 73 2f 74 02 ...d..S(....Ns....port_chains/t.
9c80 00 00 00 69 64 74 03 00 00 00 70 75 74 52 13 00 00 00 28 06 00 00 00 52 14 00 00 00 52 15 00 00 ...idt....putR....(....R....R...
9ca0 00 52 16 00 00 00 52 17 00 00 00 52 0a 00 00 00 52 0d 00 00 00 28 04 00 00 00 52 0e 00 00 00 52 .R....R....R....R....(....R....R
9cc0 18 00 00 00 52 19 00 00 00 52 1a 00 00 00 28 00 00 00 00 28 00 00 00 00 73 46 00 00 00 2f 75 73 ....R....R....(....(....sF.../us
9ce0 72 2f 6c 69 62 2f 70 79 74 68 6f 6e 32 2e 37 2f 64 69 73 74 2d 70 61 63 6b 61 67 65 73 2f 6e 65 r/lib/python2.7/dist-packages/ne
9d00 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f 70 6c 75 67 69 6e 73 2f 73 66 63 2f 64 72 69 76 65 72 tworking_onos/plugins/sfc/driver
9d20 2e 70 79 74 11 00 00 00 75 70 64 61 74 65 5f 70 6f 72 74 5f 63 68 61 69 6e 33 00 00 00 73 08 00 .pyt....update_port_chain3...s..
9d40 00 00 00 02 11 01 0f 01 15 01 63 02 00 00 00 03 00 00 00 05 00 00 00 43 00 00 00 73 31 00 00 00 ..........c............C...s1...
9d60 64 01 00 7c 01 00 6a 00 00 64 02 00 19 17 7d 02 00 74 01 00 6a 02 00 7c 00 00 6a 03 00 7c 00 00 d..|..j..d....}..t..j..|..j..|..
9d80 6a 04 00 64 03 00 7c 02 00 83 04 00 01 64 00 00 53 28 04 00 00 00 4e 73 0c 00 00 00 70 6f 72 74 j..d..|......d..S(....Ns....port
9da0 5f 63 68 61 69 6e 73 2f 52 1c 00 00 00 74 06 00 00 00 64 65 6c 65 74 65 28 05 00 00 00 52 14 00 _chains/R....t....delete(....R..
9dc0 00 00 52 16 00 00 00 52 17 00 00 00 52 0a 00 00 00 52 0d 00 00 00 28 03 00 00 00 52 0e 00 00 00 ..R....R....R....R....(....R....
9de0 52 18 00 00 00 52 19 00 00 00 28 00 00 00 00 28 00 00 00 00 73 46 00 00 00 2f 75 73 72 2f 6c 69 R....R....(....(....sF.../usr/li
9e00 62 2f 70 79 74 68 6f 6e 32 2e 37 2f 64 69 73 74 2d 70 61 63 6b 61 67 65 73 2f 6e 65 74 77 6f 72 b/python2.7/dist-packages/networ
9e20 6b 69 6e 67 5f 6f 6e 6f 73 2f 70 6c 75 67 69 6e 73 2f 73 66 63 2f 64 72 69 76 65 72 2e 70 79 74 king_onos/plugins/sfc/driver.pyt
9e40 11 00 00 00 64 65 6c 65 74 65 5f 70 6f 72 74 5f 63 68 61 69 6e 3a 00 00 00 73 06 00 00 00 00 02 ....delete_port_chain:...s......
9e60 11 01 15 01 63 02 00 00 00 04 00 00 00 08 00 00 00 43 00 00 00 73 3f 00 00 00 64 01 00 7d 02 00 ....c............C...s?...d..}..
9e80 7c 01 00 6a 00 00 6a 01 00 83 00 00 7d 03 00 74 02 00 6a 03 00 7c 00 00 6a 04 00 7c 00 00 6a 05 |..j..j.....}..t..j..|..j..|..j.
9ea0 00 64 02 00 7c 02 00 69 01 00 7c 03 00 64 03 00 36 83 05 00 01 64 00 00 53 28 04 00 00 00 4e 74 .d..|..i..|..d..6....d..S(....Nt
9ec0 0a 00 00 00 70 6f 72 74 5f 70 61 69 72 73 52 12 00 00 00 74 09 00 00 00 70 6f 72 74 5f 70 61 69 ....port_pairsR....t....port_pai
9ee0 72 28 06 00 00 00 52 14 00 00 00 52 15 00 00 00 52 16 00 00 00 52 17 00 00 00 52 0a 00 00 00 52 r(....R....R....R....R....R....R
9f00 0d 00 00 00 28 04 00 00 00 52 0e 00 00 00 52 18 00 00 00 52 19 00 00 00 52 1a 00 00 00 28 00 00 ....(....R....R....R....R....(..
9f20 00 00 28 00 00 00 00 73 46 00 00 00 2f 75 73 72 2f 6c 69 62 2f 70 79 74 68 6f 6e 32 2e 37 2f 64 ..(....sF.../usr/lib/python2.7/d
9f40 69 73 74 2d 70 61 63 6b 61 67 65 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f 70 6c 75 ist-packages/networking_onos/plu
9f60 67 69 6e 73 2f 73 66 63 2f 64 72 69 76 65 72 2e 70 79 74 10 00 00 00 63 72 65 61 74 65 5f 70 6f gins/sfc/driver.pyt....create_po
9f80 72 74 5f 70 61 69 72 40 00 00 00 73 08 00 00 00 00 02 06 01 0f 01 15 01 63 02 00 00 00 04 00 00 rt_pair@...s............c.......
9fa0 00 08 00 00 00 43 00 00 00 73 4a 00 00 00 64 01 00 7c 01 00 6a 00 00 64 02 00 19 17 7d 02 00 7c .....C...sJ...d..|..j..d....}..|
9fc0 01 00 6a 00 00 6a 01 00 83 00 00 7d 03 00 74 02 00 6a 03 00 7c 00 00 6a 04 00 7c 00 00 6a 05 00 ..j..j.....}..t..j..|..j..|..j..
9fe0 64 03 00 7c 02 00 69 01 00 7c 03 00 64 04 00 36 83 05 00 01 64 00 00 53 28 05 00 00 00 4e 73 0b d..|..i..|..d..6....d..S(....Ns.
a000 00 00 00 70 6f 72 74 5f 70 61 69 72 73 2f 52 1c 00 00 00 52 1d 00 00 00 52 22 00 00 00 28 06 00 ...port_pairs/R....R....R"...(..
a020 00 00 52 14 00 00 00 52 15 00 00 00 52 16 00 00 00 52 17 00 00 00 52 0a 00 00 00 52 0d 00 00 00 ..R....R....R....R....R....R....
a040 28 04 00 00 00 52 0e 00 00 00 52 18 00 00 00 52 19 00 00 00 52 1a 00 00 00 28 00 00 00 00 28 00 (....R....R....R....R....(....(.
a060 00 00 00 73 46 00 00 00 2f 75 73 72 2f 6c 69 62 2f 70 79 74 68 6f 6e 32 2e 37 2f 64 69 73 74 2d ...sF.../usr/lib/python2.7/dist-
a080 70 61 63 6b 61 67 65 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f 70 6c 75 67 69 6e 73 packages/networking_onos/plugins
a0a0 2f 73 66 63 2f 64 72 69 76 65 72 2e 70 79 74 10 00 00 00 75 70 64 61 74 65 5f 70 6f 72 74 5f 70 /sfc/driver.pyt....update_port_p
a0c0 61 69 72 47 00 00 00 73 08 00 00 00 00 02 11 01 0f 01 15 01 63 02 00 00 00 03 00 00 00 05 00 00 airG...s............c...........
a0e0 00 43 00 00 00 73 31 00 00 00 64 01 00 7c 01 00 6a 00 00 64 02 00 19 17 7d 02 00 74 01 00 6a 02 .C...s1...d..|..j..d....}..t..j.
a100 00 7c 00 00 6a 03 00 7c 00 00 6a 04 00 64 03 00 7c 02 00 83 04 00 01 64 00 00 53 28 04 00 00 00 .|..j..|..j..d..|......d..S(....
a120 4e 73 0b 00 00 00 70 6f 72 74 5f 70 61 69 72 73 2f 52 1c 00 00 00 52 1f 00 00 00 28 05 00 00 00 Ns....port_pairs/R....R....(....
a140 52 14 00 00 00 52 16 00 00 00 52 17 00 00 00 52 0a 00 00 00 52 0d 00 00 00 28 03 00 00 00 52 0e R....R....R....R....R....(....R.
a160 00 00 00 52 18 00 00 00 52 19 00 00 00 28 00 00 00 00 28 00 00 00 00 73 46 00 00 00 2f 75 73 72 ...R....R....(....(....sF.../usr
a180 2f 6c 69 62 2f 70 79 74 68 6f 6e 32 2e 37 2f 64 69 73 74 2d 70 61 63 6b 61 67 65 73 2f 6e 65 74 /lib/python2.7/dist-packages/net
a1a0 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f 70 6c 75 67 69 6e 73 2f 73 66 63 2f 64 72 69 76 65 72 2e working_onos/plugins/sfc/driver.
a1c0 70 79 74 10 00 00 00 64 65 6c 65 74 65 5f 70 6f 72 74 5f 70 61 69 72 4e 00 00 00 73 06 00 00 00 pyt....delete_port_pairN...s....
a1e0 00 02 11 01 15 01 63 02 00 00 00 04 00 00 00 08 00 00 00 43 00 00 00 73 3f 00 00 00 64 01 00 7d ......c............C...s?...d..}
a200 02 00 7c 01 00 6a 00 00 6a 01 00 83 00 00 7d 03 00 74 02 00 6a 03 00 7c 00 00 6a 04 00 7c 00 00 ..|..j..j.....}..t..j..|..j..|..
a220 6a 05 00 64 02 00 7c 02 00 69 01 00 7c 03 00 64 03 00 36 83 05 00 01 64 00 00 53 28 04 00 00 00 j..d..|..i..|..d..6....d..S(....
a240 4e 74 10 00 00 00 70 6f 72 74 5f 70 61 69 72 5f 67 72 6f 75 70 73 52 12 00 00 00 74 0f 00 00 00 Nt....port_pair_groupsR....t....
a260 70 6f 72 74 5f 70 61 69 72 5f 67 72 6f 75 70 28 06 00 00 00 52 14 00 00 00 52 15 00 00 00 52 16 port_pair_group(....R....R....R.
a280 00 00 00 52 17 00 00 00 52 0a 00 00 00 52 0d 00 00 00 28 04 00 00 00 52 0e 00 00 00 52 18 00 00 ...R....R....R....(....R....R...
a2a0 00 52 19 00 00 00 52 1a 00 00 00 28 00 00 00 00 28 00 00 00 00 73 46 00 00 00 2f 75 73 72 2f 6c .R....R....(....(....sF.../usr/l
a2c0 69 62 2f 70 79 74 68 6f 6e 32 2e 37 2f 64 69 73 74 2d 70 61 63 6b 61 67 65 73 2f 6e 65 74 77 6f ib/python2.7/dist-packages/netwo
a2e0 72 6b 69 6e 67 5f 6f 6e 6f 73 2f 70 6c 75 67 69 6e 73 2f 73 66 63 2f 64 72 69 76 65 72 2e 70 79 rking_onos/plugins/sfc/driver.py
a300 74 16 00 00 00 63 72 65 61 74 65 5f 70 6f 72 74 5f 70 61 69 72 5f 67 72 6f 75 70 54 00 00 00 73 t....create_port_pair_groupT...s
a320 08 00 00 00 00 02 06 01 0f 01 15 01 63 02 00 00 00 04 00 00 00 08 00 00 00 43 00 00 00 73 4a 00 ............c............C...sJ.
a340 00 00 64 01 00 7c 01 00 6a 00 00 64 02 00 19 17 7d 02 00 7c 01 00 6a 00 00 6a 01 00 83 00 00 7d ..d..|..j..d....}..|..j..j.....}
a360 03 00 74 02 00 6a 03 00 7c 00 00 6a 04 00 7c 00 00 6a 05 00 64 03 00 7c 02 00 69 01 00 7c 03 00 ..t..j..|..j..|..j..d..|..i..|..
a380 64 04 00 36 83 05 00 01 64 00 00 53 28 05 00 00 00 4e 73 11 00 00 00 70 6f 72 74 5f 70 61 69 72 d..6....d..S(....Ns....port_pair
a3a0 5f 67 72 6f 75 70 73 2f 52 1c 00 00 00 52 1d 00 00 00 52 27 00 00 00 28 06 00 00 00 52 14 00 00 _groups/R....R....R'...(....R...
a3c0 00 52 15 00 00 00 52 16 00 00 00 52 17 00 00 00 52 0a 00 00 00 52 0d 00 00 00 28 04 00 00 00 52 .R....R....R....R....R....(....R
a3e0 0e 00 00 00 52 18 00 00 00 52 19 00 00 00 52 1a 00 00 00 28 00 00 00 00 28 00 00 00 00 73 46 00 ....R....R....R....(....(....sF.
a400 00 00 2f 75 73 72 2f 6c 69 62 2f 70 79 74 68 6f 6e 32 2e 37 2f 64 69 73 74 2d 70 61 63 6b 61 67 ../usr/lib/python2.7/dist-packag
a420 65 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f 70 6c 75 67 69 6e 73 2f 73 66 63 2f 64 es/networking_onos/plugins/sfc/d
a440 72 69 76 65 72 2e 70 79 74 16 00 00 00 75 70 64 61 74 65 5f 70 6f 72 74 5f 70 61 69 72 5f 67 72 river.pyt....update_port_pair_gr
a460 6f 75 70 5b 00 00 00 73 08 00 00 00 00 02 11 01 0f 01 15 01 63 02 00 00 00 03 00 00 00 05 00 00 oup[...s............c...........
a480 00 43 00 00 00 73 31 00 00 00 64 01 00 7c 01 00 6a 00 00 64 02 00 19 17 7d 02 00 74 01 00 6a 02 .C...s1...d..|..j..d....}..t..j.
a4a0 00 7c 00 00 6a 03 00 7c 00 00 6a 04 00 64 03 00 7c 02 00 83 04 00 01 64 00 00 53 28 04 00 00 00 .|..j..|..j..d..|......d..S(....
a4c0 4e 73 11 00 00 00 70 6f 72 74 5f 70 61 69 72 5f 67 72 6f 75 70 73 2f 52 1c 00 00 00 52 1f 00 00 Ns....port_pair_groups/R....R...
a4e0 00 28 05 00 00 00 52 14 00 00 00 52 16 00 00 00 52 17 00 00 00 52 0a 00 00 00 52 0d 00 00 00 28 .(....R....R....R....R....R....(
a500 03 00 00 00 52 0e 00 00 00 52 18 00 00 00 52 19 00 00 00 28 00 00 00 00 28 00 00 00 00 73 46 00 ....R....R....R....(....(....sF.
a520 00 00 2f 75 73 72 2f 6c 69 62 2f 70 79 74 68 6f 6e 32 2e 37 2f 64 69 73 74 2d 70 61 63 6b 61 67 ../usr/lib/python2.7/dist-packag
a540 65 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f 70 6c 75 67 69 6e 73 2f 73 66 63 2f 64 es/networking_onos/plugins/sfc/d
a560 72 69 76 65 72 2e 70 79 74 16 00 00 00 64 65 6c 65 74 65 5f 70 6f 72 74 5f 70 61 69 72 5f 67 72 river.pyt....delete_port_pair_gr
a580 6f 75 70 62 00 00 00 73 06 00 00 00 00 02 11 01 15 01 63 02 00 00 00 04 00 00 00 08 00 00 00 43 oupb...s..........c............C
a5a0 00 00 00 73 3f 00 00 00 64 01 00 7d 02 00 7c 01 00 6a 00 00 6a 01 00 83 00 00 7d 03 00 74 02 00 ...s?...d..}..|..j..j.....}..t..
a5c0 6a 03 00 7c 00 00 6a 04 00 7c 00 00 6a 05 00 64 02 00 7c 02 00 69 01 00 7c 03 00 64 03 00 36 83 j..|..j..|..j..d..|..i..|..d..6.
a5e0 05 00 01 64 00 00 53 28 04 00 00 00 4e 74 10 00 00 00 66 6c 6f 77 5f 63 6c 61 73 73 69 66 69 65 ...d..S(....Nt....flow_classifie
a600 72 73 52 12 00 00 00 74 0f 00 00 00 66 6c 6f 77 5f 63 6c 61 73 73 69 66 69 65 72 28 06 00 00 00 rsR....t....flow_classifier(....
a620 52 14 00 00 00 52 15 00 00 00 52 16 00 00 00 52 17 00 00 00 52 0a 00 00 00 52 0d 00 00 00 28 04 R....R....R....R....R....R....(.
a640 00 00 00 52 0e 00 00 00 52 18 00 00 00 52 19 00 00 00 52 1a 00 00 00 28 00 00 00 00 28 00 00 00 ...R....R....R....R....(....(...
a660 00 73 46 00 00 00 2f 75 73 72 2f 6c 69 62 2f 70 79 74 68 6f 6e 32 2e 37 2f 64 69 73 74 2d 70 61 .sF.../usr/lib/python2.7/dist-pa
a680 63 6b 61 67 65 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f 70 6c 75 67 69 6e 73 2f 73 ckages/networking_onos/plugins/s
a6a0 66 63 2f 64 72 69 76 65 72 2e 70 79 74 16 00 00 00 63 72 65 61 74 65 5f 66 6c 6f 77 5f 63 6c 61 fc/driver.pyt....create_flow_cla
a6c0 73 73 69 66 69 65 72 68 00 00 00 73 08 00 00 00 00 02 06 01 0f 01 15 01 63 02 00 00 00 04 00 00 ssifierh...s............c.......
a6e0 00 08 00 00 00 43 00 00 00 73 4a 00 00 00 64 01 00 7c 01 00 6a 00 00 64 02 00 19 17 7d 02 00 7c .....C...sJ...d..|..j..d....}..|
a700 01 00 6a 00 00 6a 01 00 83 00 00 7d 03 00 74 02 00 6a 03 00 7c 00 00 6a 04 00 7c 00 00 6a 05 00 ..j..j.....}..t..j..|..j..|..j..
a720 64 03 00 7c 02 00 69 01 00 7c 03 00 64 04 00 36 83 05 00 01 64 00 00 53 28 05 00 00 00 4e 73 11 d..|..i..|..d..6....d..S(....Ns.
a740 00 00 00 66 6c 6f 77 5f 63 6c 61 73 73 69 66 69 65 72 73 2f 52 1c 00 00 00 52 1d 00 00 00 52 2c ...flow_classifiers/R....R....R,
a760 00 00 00 28 06 00 00 00 52 14 00 00 00 52 15 00 00 00 52 16 00 00 00 52 17 00 00 00 52 0a 00 00 ...(....R....R....R....R....R...
a780 00 52 0d 00 00 00 28 04 00 00 00 52 0e 00 00 00 52 18 00 00 00 52 19 00 00 00 52 1a 00 00 00 28 .R....(....R....R....R....R....(
a7a0 00 00 00 00 28 00 00 00 00 73 46 00 00 00 2f 75 73 72 2f 6c 69 62 2f 70 79 74 68 6f 6e 32 2e 37 ....(....sF.../usr/lib/python2.7
a7c0 2f 64 69 73 74 2d 70 61 63 6b 61 67 65 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f 70 /dist-packages/networking_onos/p
a7e0 6c 75 67 69 6e 73 2f 73 66 63 2f 64 72 69 76 65 72 2e 70 79 74 16 00 00 00 75 70 64 61 74 65 5f lugins/sfc/driver.pyt....update_
a800 66 6c 6f 77 5f 63 6c 61 73 73 69 66 69 65 72 6f 00 00 00 73 08 00 00 00 00 02 11 01 0f 01 15 01 flow_classifiero...s............
a820 63 02 00 00 00 03 00 00 00 05 00 00 00 43 00 00 00 73 31 00 00 00 64 01 00 7c 01 00 6a 00 00 64 c............C...s1...d..|..j..d
a840 02 00 19 17 7d 02 00 74 01 00 6a 02 00 7c 00 00 6a 03 00 7c 00 00 6a 04 00 64 03 00 7c 02 00 83 ....}..t..j..|..j..|..j..d..|...
a860 04 00 01 64 00 00 53 28 04 00 00 00 4e 73 11 00 00 00 66 6c 6f 77 5f 63 6c 61 73 73 69 66 69 65 ...d..S(....Ns....flow_classifie
a880 72 73 2f 52 1c 00 00 00 52 1f 00 00 00 28 05 00 00 00 52 14 00 00 00 52 16 00 00 00 52 17 00 00 rs/R....R....(....R....R....R...
a8a0 00 52 0a 00 00 00 52 0d 00 00 00 28 03 00 00 00 52 0e 00 00 00 52 18 00 00 00 52 19 00 00 00 28 .R....R....(....R....R....R....(
a8c0 00 00 00 00 28 00 00 00 00 73 46 00 00 00 2f 75 73 72 2f 6c 69 62 2f 70 79 74 68 6f 6e 32 2e 37 ....(....sF.../usr/lib/python2.7
a8e0 2f 64 69 73 74 2d 70 61 63 6b 61 67 65 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f 70 /dist-packages/networking_onos/p
a900 6c 75 67 69 6e 73 2f 73 66 63 2f 64 72 69 76 65 72 2e 70 79 74 16 00 00 00 64 65 6c 65 74 65 5f lugins/sfc/driver.pyt....delete_
a920 66 6c 6f 77 5f 63 6c 61 73 73 69 66 69 65 72 76 00 00 00 73 06 00 00 00 00 02 11 01 15 01 28 13 flow_classifierv...s..........(.
a940 00 00 00 74 08 00 00 00 5f 5f 6e 61 6d 65 5f 5f 74 0a 00 00 00 5f 5f 6d 6f 64 75 6c 65 5f 5f 74 ...t....__name__t....__module__t
a960 07 00 00 00 5f 5f 64 6f 63 5f 5f 52 0f 00 00 00 52 10 00 00 00 74 0b 00 00 00 6c 6f 67 5f 68 65 ....__doc__R....R....t....log_he
a980 6c 70 65 72 73 74 0f 00 00 00 6c 6f 67 5f 6d 65 74 68 6f 64 5f 63 61 6c 6c 52 1b 00 00 00 52 1e lperst....log_method_callR....R.
a9a0 00 00 00 52 20 00 00 00 52 23 00 00 00 52 24 00 00 00 52 25 00 00 00 52 28 00 00 00 52 29 00 00 ...R....R#...R$...R%...R(...R)..
a9c0 00 52 2a 00 00 00 52 2d 00 00 00 52 2e 00 00 00 52 2f 00 00 00 28 00 00 00 00 28 00 00 00 00 28 .R*...R-...R....R/...(....(....(
a9e0 00 00 00 00 73 46 00 00 00 2f 75 73 72 2f 6c 69 62 2f 70 79 74 68 6f 6e 32 2e 37 2f 64 69 73 74 ....sF.../usr/lib/python2.7/dist
aa00 2d 70 61 63 6b 61 67 65 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f 70 6c 75 67 69 6e -packages/networking_onos/plugin
aa20 73 2f 73 66 63 2f 64 72 69 76 65 72 2e 70 79 52 06 00 00 00 1c 00 00 00 73 1e 00 00 00 06 06 06 s/sfc/driver.pyR........s.......
aa40 01 09 04 09 05 12 07 12 07 12 06 12 07 12 07 12 06 12 07 12 07 12 06 12 07 12 07 4e 28 13 00 00 ...........................N(...
aa60 00 74 0b 00 00 00 6f 73 6c 6f 5f 63 6f 6e 66 69 67 52 00 00 00 00 74 08 00 00 00 6f 73 6c 6f 5f .t....oslo_configR....t....oslo_
aa80 6c 6f 67 52 01 00 00 00 52 33 00 00 00 52 02 00 00 00 74 07 00 00 00 6c 6f 67 67 69 6e 67 74 16 logR....R3...R....t....loggingt.
aaa0 00 00 00 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2e 63 6f 6d 6d 6f 6e 52 03 00 00 00 52 04 ...networking_onos.commonR....R.
aac0 00 00 00 52 16 00 00 00 74 23 00 00 00 6e 65 74 77 6f 72 6b 69 6e 67 5f 73 66 63 2e 73 65 72 76 ...R....t#...networking_sfc.serv
aae0 69 63 65 73 2e 73 66 63 2e 64 72 69 76 65 72 73 52 05 00 00 00 74 0b 00 00 00 64 72 69 76 65 72 ices.sfc.driversR....t....driver
ab00 5f 62 61 73 65 74 09 00 00 00 67 65 74 4c 6f 67 67 65 72 52 30 00 00 00 74 03 00 00 00 4c 4f 47 _baset....getLoggerR0...t....LOG
ab20 74 0d 00 00 00 53 66 63 44 72 69 76 65 72 42 61 73 65 52 06 00 00 00 28 00 00 00 00 28 00 00 00 t....SfcDriverBaseR....(....(...
ab40 00 28 00 00 00 00 73 46 00 00 00 2f 75 73 72 2f 6c 69 62 2f 70 79 74 68 6f 6e 32 2e 37 2f 64 69 .(....sF.../usr/lib/python2.7/di
ab60 73 74 2d 70 61 63 6b 61 67 65 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f 70 6c 75 67 st-packages/networking_onos/plug
ab80 69 6e 73 2f 73 66 63 2f 64 72 69 76 65 72 2e 70 79 74 08 00 00 00 3c 6d 6f 64 75 6c 65 3e 10 00 ins/sfc/driver.pyt....<module>..
aba0 00 00 73 0e 00 00 00 10 01 10 01 10 02 10 01 10 02 10 02 0f 03 00 00 00 00 00 00 00 00 00 00 00 ..s.............................
abc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
abe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ac00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
ac20 70 6c 75 67 69 6e 73 2f 73 66 63 2f 5f 5f 69 6e 69 74 5f 5f 2e 70 79 63 00 00 00 00 00 00 00 00 plugins/sfc/__init__.pyc........
ac40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ac60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
ac80 30 30 30 30 32 33 37 00 31 32 37 32 31 35 31 36 31 30 30 00 30 32 32 36 37 31 00 20 30 00 00 00 0000237.12721516100.022671..0...
aca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
acc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ace0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ad00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
ad20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
ad40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ad60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ad80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ada0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
adc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ade0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ae00 03 f3 0d 0a 44 0b 09 56 63 00 00 00 00 00 00 00 00 01 00 00 00 40 00 00 00 73 04 00 00 00 64 00 ....D..Vc............@...s....d.
ae20 00 53 28 01 00 00 00 4e 28 00 00 00 00 28 00 00 00 00 28 00 00 00 00 28 00 00 00 00 73 48 00 00 .S(....N(....(....(....(....sH..
ae40 00 2f 75 73 72 2f 6c 69 62 2f 70 79 74 68 6f 6e 32 2e 37 2f 64 69 73 74 2d 70 61 63 6b 61 67 65 ./usr/lib/python2.7/dist-package
ae60 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f 70 6c 75 67 69 6e 73 2f 73 66 63 2f 5f 5f s/networking_onos/plugins/sfc/__
ae80 69 6e 69 74 5f 5f 2e 70 79 74 08 00 00 00 3c 6d 6f 64 75 6c 65 3e 01 00 00 00 73 00 00 00 00 00 init__.pyt....<module>....s.....
aea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
aec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
aee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
af00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
af20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
af40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
af60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
af80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
afa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
afc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
afe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b000 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
b020 5f 5f 69 6e 69 74 5f 5f 2e 70 79 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 __init__.py.....................
b040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b060 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
b080 30 30 30 31 32 33 37 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 30 33 30 36 00 20 30 00 00 00 0001237.12627513442.020306..0...
b0a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b0c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b0e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b100 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
b120 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
b140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b1a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b1c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b1e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b200 23 20 2d 2a 2d 20 63 6f 64 69 6e 67 3a 20 75 74 66 2d 38 20 2d 2a 2d 0a 0a 23 20 4c 69 63 65 6e #.-*-.coding:.utf-8.-*-..#.Licen
b220 73 65 64 20 75 6e 64 65 72 20 74 68 65 20 41 70 61 63 68 65 20 4c 69 63 65 6e 73 65 2c 20 56 65 sed.under.the.Apache.License,.Ve
b240 72 73 69 6f 6e 20 32 2e 30 20 28 74 68 65 20 22 4c 69 63 65 6e 73 65 22 29 3b 20 79 6f 75 20 6d rsion.2.0.(the."License");.you.m
b260 61 79 0a 23 20 6e 6f 74 20 75 73 65 20 74 68 69 73 20 66 69 6c 65 20 65 78 63 65 70 74 20 69 6e ay.#.not.use.this.file.except.in
b280 20 63 6f 6d 70 6c 69 61 6e 63 65 20 77 69 74 68 20 74 68 65 20 4c 69 63 65 6e 73 65 2e 20 59 6f .compliance.with.the.License..Yo
b2a0 75 20 6d 61 79 20 6f 62 74 61 69 6e 0a 23 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 4c 69 63 u.may.obtain.#.a.copy.of.the.Lic
b2c0 65 6e 73 65 20 61 74 0a 23 0a 23 20 20 20 20 20 20 68 74 74 70 3a 2f 2f 77 77 77 2e 61 70 61 63 ense.at.#.#......http://www.apac
b2e0 68 65 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 4c 49 43 45 4e 53 45 2d 32 2e 30 0a 23 0a 23 20 he.org/licenses/LICENSE-2.0.#.#.
b300 55 6e 6c 65 73 73 20 72 65 71 75 69 72 65 64 20 62 79 20 61 70 70 6c 69 63 61 62 6c 65 20 6c 61 Unless.required.by.applicable.la
b320 77 20 6f 72 20 61 67 72 65 65 64 20 74 6f 20 69 6e 20 77 72 69 74 69 6e 67 2c 20 73 6f 66 74 77 w.or.agreed.to.in.writing,.softw
b340 61 72 65 0a 23 20 64 69 73 74 72 69 62 75 74 65 64 20 75 6e 64 65 72 20 74 68 65 20 4c 69 63 65 are.#.distributed.under.the.Lice
b360 6e 73 65 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 6f 6e 20 61 6e 20 22 41 53 20 49 53 22 nse.is.distributed.on.an."AS.IS"
b380 20 42 41 53 49 53 2c 20 57 49 54 48 4f 55 54 0a 23 20 57 41 52 52 41 4e 54 49 45 53 20 4f 52 20 .BASIS,.WITHOUT.#.WARRANTIES.OR.
b3a0 43 4f 4e 44 49 54 49 4f 4e 53 20 4f 46 20 41 4e 59 20 4b 49 4e 44 2c 20 65 69 74 68 65 72 20 65 CONDITIONS.OF.ANY.KIND,.either.e
b3c0 78 70 72 65 73 73 20 6f 72 20 69 6d 70 6c 69 65 64 2e 20 53 65 65 20 74 68 65 0a 23 20 4c 69 63 xpress.or.implied..See.the.#.Lic
b3e0 65 6e 73 65 20 66 6f 72 20 74 68 65 20 73 70 65 63 69 66 69 63 20 6c 61 6e 67 75 61 67 65 20 67 ense.for.the.specific.language.g
b400 6f 76 65 72 6e 69 6e 67 20 70 65 72 6d 69 73 73 69 6f 6e 73 20 61 6e 64 20 6c 69 6d 69 74 61 74 overning.permissions.and.limitat
b420 69 6f 6e 73 0a 23 20 75 6e 64 65 72 20 74 68 65 20 4c 69 63 65 6e 73 65 2e 0a 0a 69 6d 70 6f 72 ions.#.under.the.License...impor
b440 74 20 70 62 72 2e 76 65 72 73 69 6f 6e 0a 0a 0a 5f 5f 76 65 72 73 69 6f 6e 5f 5f 20 3d 20 70 62 t.pbr.version...__version__.=.pb
b460 72 2e 76 65 72 73 69 6f 6e 2e 56 65 72 73 69 6f 6e 49 6e 66 6f 28 0a 20 20 20 20 27 6e 65 74 77 r.version.VersionInfo(.....'netw
b480 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 27 29 2e 76 65 72 73 69 6f 6e 5f 73 74 72 69 6e 67 28 29 0a 00 orking-onos').version_string()..
b4a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b4c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b4e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b5a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b5c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b5e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b600 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
b620 74 65 73 74 73 2f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 tests/..........................
b640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b660 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000755.0001750.0001750.0000
b680 30 30 30 30 30 30 30 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 37 33 33 34 00 20 35 00 00 00 0000000.12627513442.017334..5...
b6a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b6c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b6e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b700 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
b720 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
b740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b7a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b7c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b7e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b800 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
b820 74 65 73 74 73 2f 5f 5f 69 6e 69 74 5f 5f 2e 70 79 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 tests/__init__.py...............
b840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b860 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
b880 30 30 30 30 30 30 30 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 31 34 33 33 00 20 30 00 00 00 0000000.12627513442.021433..0...
b8a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b8c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b8e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b900 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
b920 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
b940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b9a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b9c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
b9e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ba00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
ba20 74 65 73 74 73 2f 75 6e 69 74 2f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 tests/unit/.....................
ba40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ba60 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000755.0001750.0001750.0000
ba80 30 30 30 30 30 30 30 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 30 33 31 33 00 20 35 00 00 00 0000000.12627513442.020313..5...
baa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bb00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
bb20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
bb40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bb60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bb80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bbc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bbe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bc00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
bc20 74 65 73 74 73 2f 75 6e 69 74 2f 70 6c 75 67 69 6e 73 2f 00 00 00 00 00 00 00 00 00 00 00 00 00 tests/unit/plugins/.............
bc40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bc60 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000755.0001750.0001750.0000
bc80 30 30 30 30 30 30 30 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 31 37 37 34 00 20 35 00 00 00 0000000.12627513442.021774..5...
bca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bcc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bd00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
bd20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
bd40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bd60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bd80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bda0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bdc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bde0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
be00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
be20 74 65 73 74 73 2f 75 6e 69 74 2f 70 6c 75 67 69 6e 73 2f 5f 5f 69 6e 69 74 5f 5f 2e 70 79 00 00 tests/unit/plugins/__init__.py..
be40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
be60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
be80 30 30 30 30 30 30 30 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 34 30 37 33 00 20 30 00 00 00 0000000.12627513442.024073..0...
bea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bf00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
bf20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
bf40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bf60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bf80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bfa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bfc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bfe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c000 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
c020 74 65 73 74 73 2f 75 6e 69 74 2f 70 6c 75 67 69 6e 73 2f 6d 6c 32 2f 00 00 00 00 00 00 00 00 00 tests/unit/plugins/ml2/.........
c040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c060 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000755.0001750.0001750.0000
c080 30 30 30 30 30 30 30 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 32 34 36 36 00 20 35 00 00 00 0000000.12627513442.022466..5...
c0a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c0c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c0e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c100 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
c120 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
c140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c1a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c1c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c1e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c200 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
c220 74 65 73 74 73 2f 75 6e 69 74 2f 70 6c 75 67 69 6e 73 2f 6d 6c 32 2f 74 65 73 74 5f 64 72 69 76 tests/unit/plugins/ml2/test_driv
c240 65 72 2e 70 79 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 er.py...........................
c260 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
c280 30 30 32 33 37 36 37 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 35 34 31 31 00 20 30 00 00 00 0023767.12627513442.025411..0...
c2a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c2c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c2e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c300 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
c320 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
c340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c3a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c3c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c3e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c400 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 32 30 31 35 20 48 75 61 77 65 69 20 54 65 63 68 #.Copyright.(c).2015.Huawei.Tech
c420 6e 6f 6c 6f 67 69 65 73 20 49 6e 64 69 61 20 50 76 74 20 4c 74 64 0a 23 20 41 6c 6c 20 52 69 67 nologies.India.Pvt.Ltd.#.All.Rig
c440 68 74 73 20 52 65 73 65 72 76 65 64 2e 0a 23 0a 23 20 20 20 20 4c 69 63 65 6e 73 65 64 20 75 6e hts.Reserved..#.#....Licensed.un
c460 64 65 72 20 74 68 65 20 41 70 61 63 68 65 20 4c 69 63 65 6e 73 65 2c 20 56 65 72 73 69 6f 6e 20 der.the.Apache.License,.Version.
c480 32 2e 30 20 28 74 68 65 20 22 4c 69 63 65 6e 73 65 22 29 3b 20 79 6f 75 20 6d 61 79 0a 23 20 20 2.0.(the."License");.you.may.#..
c4a0 20 20 6e 6f 74 20 75 73 65 20 74 68 69 73 20 66 69 6c 65 20 65 78 63 65 70 74 20 69 6e 20 63 6f ..not.use.this.file.except.in.co
c4c0 6d 70 6c 69 61 6e 63 65 20 77 69 74 68 20 74 68 65 20 4c 69 63 65 6e 73 65 2e 20 59 6f 75 20 6d mpliance.with.the.License..You.m
c4e0 61 79 20 6f 62 74 61 69 6e 0a 23 20 20 20 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 4c 69 63 ay.obtain.#....a.copy.of.the.Lic
c500 65 6e 73 65 20 61 74 0a 23 0a 23 20 20 20 20 20 20 20 20 20 68 74 74 70 3a 2f 2f 77 77 77 2e 61 ense.at.#.#.........http://www.a
c520 70 61 63 68 65 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 4c 49 43 45 4e 53 45 2d 32 2e 30 0a 23 pache.org/licenses/LICENSE-2.0.#
c540 0a 23 20 20 20 20 55 6e 6c 65 73 73 20 72 65 71 75 69 72 65 64 20 62 79 20 61 70 70 6c 69 63 61 .#....Unless.required.by.applica
c560 62 6c 65 20 6c 61 77 20 6f 72 20 61 67 72 65 65 64 20 74 6f 20 69 6e 20 77 72 69 74 69 6e 67 2c ble.law.or.agreed.to.in.writing,
c580 20 73 6f 66 74 77 61 72 65 0a 23 20 20 20 20 64 69 73 74 72 69 62 75 74 65 64 20 75 6e 64 65 72 .software.#....distributed.under
c5a0 20 74 68 65 20 4c 69 63 65 6e 73 65 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 6f 6e 20 61 .the.License.is.distributed.on.a
c5c0 6e 20 22 41 53 20 49 53 22 20 42 41 53 49 53 2c 20 57 49 54 48 4f 55 54 0a 23 20 20 20 20 57 41 n."AS.IS".BASIS,.WITHOUT.#....WA
c5e0 52 52 41 4e 54 49 45 53 20 4f 52 20 43 4f 4e 44 49 54 49 4f 4e 53 20 4f 46 20 41 4e 59 20 4b 49 RRANTIES.OR.CONDITIONS.OF.ANY.KI
c600 4e 44 2c 20 65 69 74 68 65 72 20 65 78 70 72 65 73 73 20 6f 72 20 69 6d 70 6c 69 65 64 2e 20 53 ND,.either.express.or.implied..S
c620 65 65 20 74 68 65 0a 23 20 20 20 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 74 68 65 20 73 70 65 63 ee.the.#....License.for.the.spec
c640 69 66 69 63 20 6c 61 6e 67 75 61 67 65 20 67 6f 76 65 72 6e 69 6e 67 20 70 65 72 6d 69 73 73 69 ific.language.governing.permissi
c660 6f 6e 73 20 61 6e 64 20 6c 69 6d 69 74 61 74 69 6f 6e 73 0a 23 20 20 20 20 75 6e 64 65 72 20 74 ons.and.limitations.#....under.t
c680 68 65 20 4c 69 63 65 6e 73 65 2e 0a 0a 69 6d 70 6f 72 74 20 6d 6f 63 6b 0a 69 6d 70 6f 72 74 20 he.License...import.mock.import.
c6a0 72 65 71 75 65 73 74 73 0a 0a 66 72 6f 6d 20 6f 73 6c 6f 5f 63 6f 6e 66 69 67 20 69 6d 70 6f 72 requests..from.oslo_config.impor
c6c0 74 20 63 66 67 0a 66 72 6f 6d 20 6f 73 6c 6f 5f 73 65 72 69 61 6c 69 7a 61 74 69 6f 6e 20 69 6d t.cfg.from.oslo_serialization.im
c6e0 70 6f 72 74 20 6a 73 6f 6e 75 74 69 6c 73 0a 66 72 6f 6d 20 6f 73 6c 6f 74 65 73 74 20 69 6d 70 port.jsonutils.from.oslotest.imp
c700 6f 72 74 20 62 61 73 65 0a 0a 66 72 6f 6d 20 6e 65 75 74 72 6f 6e 2e 63 6f 6d 6d 6f 6e 20 69 6d ort.base..from.neutron.common.im
c720 70 6f 72 74 20 63 6f 6e 73 74 61 6e 74 73 20 61 73 20 6e 5f 63 6f 6e 73 74 0a 66 72 6f 6d 20 6e port.constants.as.n_const.from.n
c740 65 75 74 72 6f 6e 2e 70 6c 75 67 69 6e 73 2e 63 6f 6d 6d 6f 6e 20 69 6d 70 6f 72 74 20 63 6f 6e eutron.plugins.common.import.con
c760 73 74 61 6e 74 73 0a 66 72 6f 6d 20 6e 65 75 74 72 6f 6e 2e 70 6c 75 67 69 6e 73 2e 6d 6c 32 20 stants.from.neutron.plugins.ml2.
c780 69 6d 70 6f 72 74 20 64 72 69 76 65 72 5f 61 70 69 20 61 73 20 61 70 69 0a 66 72 6f 6d 20 6e 65 import.driver_api.as.api.from.ne
c7a0 75 74 72 6f 6e 2e 70 6c 75 67 69 6e 73 2e 6d 6c 32 20 69 6d 70 6f 72 74 20 64 72 69 76 65 72 5f utron.plugins.ml2.import.driver_
c7c0 63 6f 6e 74 65 78 74 20 61 73 20 63 74 78 0a 0a 69 6d 70 6f 72 74 20 6e 65 74 77 6f 72 6b 69 6e context.as.ctx..import.networkin
c7e0 67 5f 6f 6e 6f 73 2e 70 6c 75 67 69 6e 73 2e 6d 6c 32 2e 64 72 69 76 65 72 20 61 73 20 6f 6e 6f g_onos.plugins.ml2.driver.as.ono
c800 73 5f 6d 6c 32 5f 64 72 69 76 65 72 0a 0a 0a 66 61 6b 65 5f 6e 65 74 77 6f 72 6b 5f 75 75 69 64 s_ml2_driver...fake_network_uuid
c820 20 3d 20 27 64 38 39 37 65 32 31 61 2d 64 66 64 36 2d 34 33 33 31 2d 61 35 64 64 2d 37 35 32 34 .=.'d897e21a-dfd6-4331-a5dd-7524
c840 66 61 34 32 31 63 33 65 27 0a 66 61 6b 65 5f 6e 65 74 77 6f 72 6b 5f 6f 62 6a 65 63 74 20 3d 20 fa421c3e'.fake_network_object.=.
c860 7b 27 73 74 61 74 75 73 27 3a 20 27 41 43 54 49 56 45 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 {'status':.'ACTIVE',............
c880 20 20 20 20 20 20 20 20 20 20 20 20 27 73 75 62 6e 65 74 73 27 3a 20 5b 5d 2c 0a 20 20 20 20 20 ............'subnets':.[],......
c8a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 6e 61 6d 65 27 3a 20 27 6e 65 74 31 27 ..................'name':.'net1'
c8c0 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 70 72 6f 76 69 64 ,........................'provid
c8e0 65 72 3a 70 68 79 73 69 63 61 6c 5f 6e 65 74 77 6f 72 6b 27 3a 20 4e 6f 6e 65 2c 0a 20 20 20 20 er:physical_network':.None,.....
c900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 61 64 6d 69 6e 5f 73 74 61 74 65 5f ...................'admin_state_
c920 75 70 27 3a 20 54 72 75 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 up':.True,......................
c940 20 20 27 74 65 6e 61 6e 74 5f 69 64 27 3a 20 27 74 65 73 74 2d 74 65 6e 61 6e 74 27 2c 0a 20 20 ..'tenant_id':.'test-tenant',...
c960 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 70 72 6f 76 69 64 65 72 3a 6e .....................'provider:n
c980 65 74 77 6f 72 6b 5f 74 79 70 65 27 3a 20 27 6c 6f 63 61 6c 27 2c 0a 20 20 20 20 20 20 20 20 20 etwork_type':.'local',..........
c9a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 72 6f 75 74 65 72 3a 65 78 74 65 72 6e 61 6c 27 3a ..............'router:external':
c9c0 20 46 61 6c 73 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 .False,........................'
c9e0 73 68 61 72 65 64 27 3a 20 46 61 6c 73 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 shared':.False,.................
ca00 20 20 20 20 20 20 20 27 69 64 27 3a 20 66 61 6b 65 5f 6e 65 74 77 6f 72 6b 5f 75 75 69 64 2c 0a .......'id':.fake_network_uuid,.
ca20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 70 72 6f 76 69 64 65 72 .......................'provider
ca40 3a 73 65 67 6d 65 6e 74 61 74 69 6f 6e 5f 69 64 27 3a 20 4e 6f 6e 65 7d 0a 0a 66 61 6b 65 5f 73 :segmentation_id':.None}..fake_s
ca60 75 62 6e 65 74 5f 75 75 69 64 20 3d 20 27 64 38 39 37 65 32 31 61 2d 64 66 64 36 2d 34 33 33 31 ubnet_uuid.=.'d897e21a-dfd6-4331
ca80 2d 61 35 64 64 2d 37 35 32 34 66 61 34 32 31 63 33 65 27 0a 66 61 6b 65 5f 73 75 62 6e 65 74 5f -a5dd-7524fa421c3e'.fake_subnet_
caa0 6f 62 6a 65 63 74 20 3d 20 7b 27 69 70 76 36 5f 72 61 5f 6d 6f 64 65 27 3a 20 4e 6f 6e 65 2c 0a object.=.{'ipv6_ra_mode':.None,.
cac0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 61 6c 6c 6f 63 61 74 69 6f ......................'allocatio
cae0 6e 5f 70 6f 6f 6c 73 27 3a 20 5b 7b 27 73 74 61 72 74 27 3a 20 27 31 30 2e 30 2e 30 2e 32 27 2c n_pools':.[{'start':.'10.0.0.2',
cb00 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
cb20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 65 6e 64 27 3a 20 27 31 30 2e 30 2e 31 2e 32 35 34 27 .............'end':.'10.0.1.254'
cb40 7d 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 68 6f 73 74 5f }],.......................'host_
cb60 72 6f 75 74 65 73 27 3a 20 5b 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 routes':.[],....................
cb80 20 20 20 27 69 70 76 36 5f 61 64 64 72 65 73 73 5f 6d 6f 64 65 27 3a 20 4e 6f 6e 65 2c 0a 20 20 ...'ipv6_address_mode':.None,...
cba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 63 69 64 72 27 3a 20 27 31 30 2e ....................'cidr':.'10.
cbc0 30 2e 30 2e 30 2f 32 33 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0.0.0/23',......................
cbe0 20 27 69 64 27 3a 20 66 61 6b 65 5f 73 75 62 6e 65 74 5f 75 75 69 64 2c 0a 20 20 20 20 20 20 20 .'id':.fake_subnet_uuid,........
cc00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 6e 61 6d 65 27 3a 20 27 27 2c 0a 20 20 20 20 20 ...............'name':.'',......
cc20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 65 6e 61 62 6c 65 5f 64 68 63 70 27 3a 20 .................'enable_dhcp':.
cc40 54 72 75 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 6e 65 74 True,.......................'net
cc60 77 6f 72 6b 5f 69 64 27 3a 20 66 61 6b 65 5f 6e 65 74 77 6f 72 6b 5f 75 75 69 64 2c 0a 20 20 20 work_id':.fake_network_uuid,....
cc80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 74 65 6e 61 6e 74 5f 69 64 27 3a 20 ...................'tenant_id':.
cca0 27 74 65 73 74 2d 74 65 6e 61 6e 74 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 'test-tenant',..................
ccc0 20 20 20 20 20 27 64 6e 73 5f 6e 61 6d 65 73 65 72 76 65 72 73 27 3a 20 5b 5d 2c 0a 20 20 20 20 .....'dns_nameservers':.[],.....
cce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 67 61 74 65 77 61 79 5f 69 70 27 3a 20 ..................'gateway_ip':.
cd00 27 31 30 2e 30 2e 30 2e 31 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 '10.0.0.1',.....................
cd20 20 20 27 69 70 5f 76 65 72 73 69 6f 6e 27 3a 20 34 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ..'ip_version':.4,..............
cd40 20 20 20 20 20 20 20 20 20 27 73 68 61 72 65 64 27 3a 20 46 61 6c 73 65 7d 0a 0a 66 61 6b 65 5f .........'shared':.False}..fake_
cd60 70 6f 72 74 5f 75 75 69 64 20 3d 20 27 37 32 63 35 36 63 34 38 2d 65 39 62 38 2d 34 64 63 66 2d port_uuid.=.'72c56c48-e9b8-4dcf-
cd80 62 33 61 37 2d 30 38 31 33 62 62 33 62 64 38 33 39 27 0a 66 61 6b 65 5f 70 6f 72 74 5f 6f 62 6a b3a7-0813bb3bd839'.fake_port_obj
cda0 65 63 74 20 3d 20 7b 27 73 74 61 74 75 73 27 3a 20 27 44 4f 57 4e 27 2c 0a 20 20 20 20 20 20 20 ect.=.{'status':.'DOWN',........
cdc0 20 20 20 20 20 20 20 20 20 20 20 20 20 27 62 69 6e 64 69 6e 67 3a 68 6f 73 74 5f 69 64 27 3a 20 .............'binding:host_id':.
cde0 27 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 61 6c 6c 6f 77 65 64 '',.....................'allowed
ce00 5f 61 64 64 72 65 73 73 5f 70 61 69 72 73 27 3a 20 5b 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 _address_pairs':.[],............
ce20 20 20 20 20 20 20 20 20 20 27 64 65 76 69 63 65 5f 6f 77 6e 65 72 27 3a 20 27 66 61 6b 65 5f 6f .........'device_owner':.'fake_o
ce40 77 6e 65 72 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 62 69 6e 64 wner',.....................'bind
ce60 69 6e 67 3a 70 72 6f 66 69 6c 65 27 3a 20 7b 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ing:profile':.{},...............
ce80 20 20 20 20 20 20 27 66 69 78 65 64 5f 69 70 73 27 3a 20 5b 5d 2c 0a 20 20 20 20 20 20 20 20 20 ......'fixed_ips':.[],..........
cea0 20 20 20 20 20 20 20 20 20 20 20 27 69 64 27 3a 20 66 61 6b 65 5f 70 6f 72 74 5f 75 75 69 64 2c ...........'id':.fake_port_uuid,
cec0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 73 65 63 75 72 69 74 79 5f 67 .....................'security_g
cee0 72 6f 75 70 73 27 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5b 27 32 66 roups':.....................['2f
cf00 39 32 34 34 62 34 2d 39 62 65 65 2d 34 65 38 31 2d 62 63 34 61 2d 33 66 33 63 32 30 34 35 62 33 9244b4-9bee-4e81-bc4a-3f3c2045b3
cf20 64 37 27 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 64 65 76 69 63 d7'],.....................'devic
cf40 65 5f 69 64 27 3a 20 27 66 61 6b 65 5f 64 65 76 69 63 65 27 2c 0a 20 20 20 20 20 20 20 20 20 20 e_id':.'fake_device',...........
cf60 20 20 20 20 20 20 20 20 20 20 27 6e 61 6d 65 27 3a 20 27 27 2c 0a 20 20 20 20 20 20 20 20 20 20 ..........'name':.'',...........
cf80 20 20 20 20 20 20 20 20 20 20 27 61 64 6d 69 6e 5f 73 74 61 74 65 5f 75 70 27 3a 20 54 72 75 65 ..........'admin_state_up':.True
cfa0 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 6e 65 74 77 6f 72 6b 5f 69 ,.....................'network_i
cfc0 64 27 3a 20 66 61 6b 65 5f 6e 65 74 77 6f 72 6b 5f 75 75 69 64 2c 0a 20 20 20 20 20 20 20 20 20 d':.fake_network_uuid,..........
cfe0 20 20 20 20 20 20 20 20 20 20 20 27 74 65 6e 61 6e 74 5f 69 64 27 3a 20 27 74 65 73 74 2d 74 65 ...........'tenant_id':.'test-te
d000 6e 61 6e 74 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 62 69 6e 64 nant',.....................'bind
d020 69 6e 67 3a 76 69 66 5f 64 65 74 61 69 6c 73 27 3a 20 7b 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 ing:vif_details':.{},...........
d040 20 20 20 20 20 20 20 20 20 20 27 62 69 6e 64 69 6e 67 3a 76 6e 69 63 5f 74 79 70 65 27 3a 20 27 ..........'binding:vnic_type':.'
d060 6e 6f 72 6d 61 6c 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 62 69 normal',.....................'bi
d080 6e 64 69 6e 67 3a 76 69 66 5f 74 79 70 65 27 3a 20 27 75 6e 62 6f 75 6e 64 27 2c 0a 20 20 20 20 nding:vif_type':.'unbound',.....
d0a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 6d 61 63 5f 61 64 64 72 65 73 73 27 3a 20 27 ................'mac_address':.'
d0c0 31 32 3a 33 34 3a 35 36 20 3a 37 38 3a 32 31 3a 62 36 27 7d 0a 0a 0a 63 6c 61 73 73 20 4f 4e 4f 12:34:56.:78:21:b6'}...class.ONO
d0e0 53 4d 65 63 68 61 6e 69 73 6d 44 72 69 76 65 72 54 65 73 74 43 61 73 65 28 62 61 73 65 2e 42 61 SMechanismDriverTestCase(base.Ba
d100 73 65 54 65 73 74 43 61 73 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 seTestCase,.....................
d120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 6e 6f 73 5f 6d 6c 32 5f 64 72 69 76 65 72 2e 4f 4e ..............onos_ml2_driver.ON
d140 4f 53 4d 65 63 68 61 6e 69 73 6d 44 72 69 76 65 72 29 3a 0a 0a 20 20 20 20 64 65 66 20 73 65 74 OSMechanismDriver):......def.set
d160 55 70 28 73 65 6c 66 29 3a 0a 20 20 20 20 20 20 20 20 73 75 70 65 72 28 4f 4e 4f 53 4d 65 63 68 Up(self):.........super(ONOSMech
d180 61 6e 69 73 6d 44 72 69 76 65 72 54 65 73 74 43 61 73 65 2c 20 73 65 6c 66 29 2e 73 65 74 55 70 anismDriverTestCase,.self).setUp
d1a0 28 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 73 65 74 5f 74 65 73 74 5f 63 6f 6e 66 69 67 28 ().........self.set_test_config(
d1c0 29 0a 0a 20 20 20 20 64 65 66 20 73 65 74 5f 74 65 73 74 5f 63 6f 6e 66 69 67 28 73 65 6c 66 29 )......def.set_test_config(self)
d1e0 3a 0a 20 20 20 20 20 20 20 20 63 66 67 2e 43 4f 4e 46 2e 73 65 74 5f 6f 76 65 72 72 69 64 65 28 :.........cfg.CONF.set_override(
d200 27 75 72 6c 5f 70 61 74 68 27 2c 20 27 68 74 74 70 3a 2f 2f 31 32 37 2e 30 2e 30 2e 31 3a 31 31 'url_path',.'http://127.0.0.1:11
d220 31 31 27 2c 20 27 6f 6e 6f 73 27 29 0a 20 20 20 20 20 20 20 20 63 66 67 2e 43 4f 4e 46 2e 73 65 11',.'onos').........cfg.CONF.se
d240 74 5f 6f 76 65 72 72 69 64 65 28 27 75 73 65 72 6e 61 6d 65 27 2c 20 27 6f 6e 6f 73 5f 75 73 65 t_override('username',.'onos_use
d260 72 27 2c 20 27 6f 6e 6f 73 27 29 0a 20 20 20 20 20 20 20 20 63 66 67 2e 43 4f 4e 46 2e 73 65 74 r',.'onos').........cfg.CONF.set
d280 5f 6f 76 65 72 72 69 64 65 28 27 70 61 73 73 77 6f 72 64 27 2c 20 27 61 77 65 73 6f 6d 65 27 2c _override('password',.'awesome',
d2a0 20 27 6f 6e 6f 73 27 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 6f 6e 6f 73 5f 70 61 74 68 20 .'onos').........self.onos_path.
d2c0 3d 20 63 66 67 2e 43 4f 4e 46 2e 6f 6e 6f 73 2e 75 72 6c 5f 70 61 74 68 0a 20 20 20 20 20 20 20 =.cfg.CONF.onos.url_path........
d2e0 20 73 65 6c 66 2e 6f 6e 6f 73 5f 61 75 74 68 20 3d 20 28 63 66 67 2e 43 4f 4e 46 2e 6f 6e 6f 73 .self.onos_auth.=.(cfg.CONF.onos
d300 2e 75 73 65 72 6e 61 6d 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .username,......................
d320 20 20 20 20 20 63 66 67 2e 43 4f 4e 46 2e 6f 6e 6f 73 2e 70 61 73 73 77 6f 72 64 29 0a 0a 20 20 .....cfg.CONF.onos.password)....
d340 20 20 64 65 66 20 5f 6d 6f 63 6b 5f 72 65 71 5f 72 65 73 70 28 73 65 6c 66 2c 20 73 74 61 74 75 ..def._mock_req_resp(self,.statu
d360 73 5f 63 6f 64 65 29 3a 0a 20 20 20 20 20 20 20 20 72 65 73 70 6f 6e 73 65 20 3d 20 6d 6f 63 6b s_code):.........response.=.mock
d380 2e 4d 6f 63 6b 28 73 74 61 74 75 73 5f 63 6f 64 65 3d 73 74 61 74 75 73 5f 63 6f 64 65 29 0a 20 .Mock(status_code=status_code)..
d3a0 20 20 20 20 20 20 20 72 65 73 70 6f 6e 73 65 2e 72 61 69 73 65 5f 66 6f 72 5f 73 74 61 74 75 73 .......response.raise_for_status
d3c0 20 3d 20 6d 6f 63 6b 2e 4d 6f 63 6b 28 29 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 72 65 .=.mock.Mock().........return.re
d3e0 73 70 6f 6e 73 65 0a 0a 20 20 20 20 64 65 66 20 5f 74 65 73 74 5f 72 65 73 70 6f 6e 73 65 28 73 sponse......def._test_response(s
d400 65 6c 66 2c 20 63 6f 6e 74 65 78 74 2c 20 6f 70 65 72 5f 74 79 70 65 2c 20 6f 62 6a 5f 74 79 70 elf,.context,.oper_type,.obj_typ
d420 65 2c 20 6d 6f 63 6b 5f 6d 65 74 68 6f 64 29 3a 0a 20 20 20 20 20 20 20 20 62 6f 64 79 20 3d 20 e,.mock_method):.........body.=.
d440 4e 6f 6e 65 0a 20 20 20 20 20 20 20 20 69 66 20 6f 70 65 72 5f 74 79 70 65 20 69 73 20 6e 6f 74 None.........if.oper_type.is.not
d460 20 27 64 65 6c 65 74 65 27 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 74 69 74 79 20 3d 20 .'delete':.............entity.=.
d480 7b 6f 62 6a 5f 74 79 70 65 3a 20 63 6f 6e 74 65 78 74 2e 63 75 72 72 65 6e 74 2e 63 6f 70 79 28 {obj_type:.context.current.copy(
d4a0 29 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 62 6f 64 79 20 3d 20 6a 73 6f 6e 75 74 69 6c 73 2e )}.............body.=.jsonutils.
d4c0 64 75 6d 70 73 28 65 6e 74 69 74 79 2c 20 69 6e 64 65 6e 74 3d 32 29 0a 20 20 20 20 20 20 20 20 dumps(entity,.indent=2).........
d4e0 69 66 20 6f 70 65 72 5f 74 79 70 65 20 3d 3d 20 27 70 6f 73 74 27 3a 0a 20 20 20 20 20 20 20 20 if.oper_type.==.'post':.........
d500 20 20 20 20 75 72 6c 20 3d 20 27 25 73 2f 25 73 27 20 25 20 28 73 65 6c 66 2e 6f 6e 6f 73 5f 70 ....url.=.'%s/%s'.%.(self.onos_p
d520 61 74 68 2c 20 6f 62 6a 5f 74 79 70 65 20 2b 20 27 73 27 29 0a 20 20 20 20 20 20 20 20 65 6c 73 ath,.obj_type.+.'s').........els
d540 65 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 75 72 6c 20 3d 20 27 25 73 2f 25 73 2f 25 73 27 20 e:.............url.=.'%s/%s/%s'.
d560 25 20 28 73 65 6c 66 2e 6f 6e 6f 73 5f 70 61 74 68 2c 20 6f 62 6a 5f 74 79 70 65 20 2b 20 27 73 %.(self.onos_path,.obj_type.+.'s
d580 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ',..............................
d5a0 20 20 20 63 6f 6e 74 65 78 74 2e 63 75 72 72 65 6e 74 5b 27 69 64 27 5d 29 0a 20 20 20 20 20 20 ...context.current['id']).......
d5c0 20 20 6b 77 61 72 67 73 20 3d 20 7b 27 75 72 6c 27 3a 20 75 72 6c 2c 20 27 64 61 74 61 27 3a 20 ..kwargs.=.{'url':.url,.'data':.
d5e0 62 6f 64 79 7d 0a 20 20 20 20 20 20 20 20 6d 6f 63 6b 5f 6d 65 74 68 6f 64 2e 61 73 73 65 72 74 body}.........mock_method.assert
d600 5f 63 61 6c 6c 65 64 5f 6f 6e 63 65 5f 77 69 74 68 28 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d _called_once_with(.............m
d620 65 74 68 6f 64 3d 6f 70 65 72 5f 74 79 70 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 68 65 61 ethod=oper_type,.............hea
d640 64 65 72 73 3d 7b 27 43 6f 6e 74 65 6e 74 2d 54 79 70 65 27 3a 20 27 61 70 70 6c 69 63 61 74 69 ders={'Content-Type':.'applicati
d660 6f 6e 2f 6a 73 6f 6e 27 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 61 75 74 68 3d 73 65 6c 66 on/json'},.............auth=self
d680 2e 6f 6e 6f 73 5f 61 75 74 68 2c 20 2a 2a 6b 77 61 72 67 73 29 0a 0a 20 20 20 20 64 65 66 20 74 .onos_auth,.**kwargs)......def.t
d6a0 65 73 74 5f 63 72 65 61 74 65 5f 6e 65 74 77 6f 72 6b 5f 70 6f 73 74 63 6f 6d 6d 69 74 28 73 65 est_create_network_postcommit(se
d6c0 6c 66 29 3a 0a 20 20 20 20 20 20 20 20 63 6f 6e 74 65 78 74 20 3d 20 6d 6f 63 6b 2e 4d 6f 63 6b lf):.........context.=.mock.Mock
d6e0 28 63 75 72 72 65 6e 74 3d 66 61 6b 65 5f 6e 65 74 77 6f 72 6b 5f 6f 62 6a 65 63 74 29 0a 20 20 (current=fake_network_object)...
d700 20 20 20 20 20 20 72 65 73 70 20 3d 20 73 65 6c 66 2e 5f 6d 6f 63 6b 5f 72 65 71 5f 72 65 73 70 ......resp.=.self._mock_req_resp
d720 28 72 65 71 75 65 73 74 73 2e 63 6f 64 65 73 2e 63 72 65 61 74 65 64 29 0a 20 20 20 20 20 20 20 (requests.codes.created)........
d740 20 77 69 74 68 20 6d 6f 63 6b 2e 70 61 74 63 68 28 27 72 65 71 75 65 73 74 73 2e 72 65 71 75 65 .with.mock.patch('requests.reque
d760 73 74 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 st',.........................ret
d780 75 72 6e 5f 76 61 6c 75 65 3d 72 65 73 70 29 20 61 73 20 6d 6f 63 6b 5f 6d 65 74 68 6f 64 3a 0a urn_value=resp).as.mock_method:.
d7a0 20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 63 72 65 61 74 65 5f 6e 65 74 77 6f 72 6b 5f ............self.create_network_
d7c0 70 6f 73 74 63 6f 6d 6d 69 74 28 63 6f 6e 74 65 78 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 postcommit(context).............
d7e0 73 65 6c 66 2e 5f 74 65 73 74 5f 72 65 73 70 6f 6e 73 65 28 63 6f 6e 74 65 78 74 2c 20 27 70 6f self._test_response(context,.'po
d800 73 74 27 2c 20 27 6e 65 74 77 6f 72 6b 27 2c 20 6d 6f 63 6b 5f 6d 65 74 68 6f 64 29 0a 0a 20 20 st',.'network',.mock_method)....
d820 20 20 64 65 66 20 74 65 73 74 5f 75 70 64 61 74 65 5f 6e 65 74 77 6f 72 6b 5f 70 6f 73 74 63 6f ..def.test_update_network_postco
d840 6d 6d 69 74 28 73 65 6c 66 29 3a 0a 20 20 20 20 20 20 20 20 63 6f 6e 74 65 78 74 20 3d 20 6d 6f mmit(self):.........context.=.mo
d860 63 6b 2e 4d 6f 63 6b 28 63 75 72 72 65 6e 74 3d 66 61 6b 65 5f 6e 65 74 77 6f 72 6b 5f 6f 62 6a ck.Mock(current=fake_network_obj
d880 65 63 74 29 0a 20 20 20 20 20 20 20 20 72 65 73 70 20 3d 20 73 65 6c 66 2e 5f 6d 6f 63 6b 5f 72 ect).........resp.=.self._mock_r
d8a0 65 71 5f 72 65 73 70 28 72 65 71 75 65 73 74 73 2e 63 6f 64 65 73 2e 63 72 65 61 74 65 64 29 0a eq_resp(requests.codes.created).
d8c0 20 20 20 20 20 20 20 20 77 69 74 68 20 6d 6f 63 6b 2e 70 61 74 63 68 28 27 72 65 71 75 65 73 74 ........with.mock.patch('request
d8e0 73 2e 72 65 71 75 65 73 74 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 s.request',.....................
d900 20 20 20 20 72 65 74 75 72 6e 5f 76 61 6c 75 65 3d 72 65 73 70 29 20 61 73 20 6d 6f 63 6b 5f 6d ....return_value=resp).as.mock_m
d920 65 74 68 6f 64 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 75 70 64 61 74 65 5f 6e ethod:.............self.update_n
d940 65 74 77 6f 72 6b 5f 70 6f 73 74 63 6f 6d 6d 69 74 28 63 6f 6e 74 65 78 74 29 0a 20 20 20 20 20 etwork_postcommit(context)......
d960 20 20 20 20 20 20 20 73 65 6c 66 2e 5f 74 65 73 74 5f 72 65 73 70 6f 6e 73 65 28 63 6f 6e 74 65 .......self._test_response(conte
d980 78 74 2c 20 27 70 75 74 27 2c 20 27 6e 65 74 77 6f 72 6b 27 2c 20 6d 6f 63 6b 5f 6d 65 74 68 6f xt,.'put',.'network',.mock_metho
d9a0 64 29 0a 0a 20 20 20 20 64 65 66 20 74 65 73 74 5f 64 65 6c 65 74 65 5f 6e 65 74 77 6f 72 6b 5f d)......def.test_delete_network_
d9c0 70 6f 73 74 63 6f 6d 6d 69 74 28 73 65 6c 66 29 3a 0a 20 20 20 20 20 20 20 20 63 6f 6e 74 65 78 postcommit(self):.........contex
d9e0 74 20 3d 20 6d 6f 63 6b 2e 4d 6f 63 6b 28 63 75 72 72 65 6e 74 3d 7b 27 69 64 27 3a 20 66 61 6b t.=.mock.Mock(current={'id':.fak
da00 65 5f 6e 65 74 77 6f 72 6b 5f 75 75 69 64 7d 29 0a 20 20 20 20 20 20 20 20 72 65 73 70 20 3d 20 e_network_uuid}).........resp.=.
da20 73 65 6c 66 2e 5f 6d 6f 63 6b 5f 72 65 71 5f 72 65 73 70 28 72 65 71 75 65 73 74 73 2e 63 6f 64 self._mock_req_resp(requests.cod
da40 65 73 2e 63 72 65 61 74 65 64 29 0a 20 20 20 20 20 20 20 20 77 69 74 68 20 6d 6f 63 6b 2e 70 61 es.created).........with.mock.pa
da60 74 63 68 28 27 72 65 71 75 65 73 74 73 2e 72 65 71 75 65 73 74 27 2c 0a 20 20 20 20 20 20 20 20 tch('requests.request',.........
da80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 5f 76 61 6c 75 65 3d 72 65 73 ................return_value=res
daa0 70 29 20 61 73 20 6d 6f 63 6b 5f 6d 65 74 68 6f 64 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 p).as.mock_method:.............s
dac0 65 6c 66 2e 64 65 6c 65 74 65 5f 6e 65 74 77 6f 72 6b 5f 70 6f 73 74 63 6f 6d 6d 69 74 28 63 6f elf.delete_network_postcommit(co
dae0 6e 74 65 78 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 5f 74 65 73 74 5f 72 65 ntext).............self._test_re
db00 73 70 6f 6e 73 65 28 63 6f 6e 74 65 78 74 2c 20 27 64 65 6c 65 74 65 27 2c 20 27 6e 65 74 77 6f sponse(context,.'delete',.'netwo
db20 72 6b 27 2c 20 6d 6f 63 6b 5f 6d 65 74 68 6f 64 29 0a 0a 20 20 20 20 64 65 66 20 74 65 73 74 5f rk',.mock_method)......def.test_
db40 63 72 65 61 74 65 5f 73 75 62 6e 65 74 5f 70 6f 73 74 63 6f 6d 6d 69 74 28 73 65 6c 66 29 3a 0a create_subnet_postcommit(self):.
db60 20 20 20 20 20 20 20 20 63 6f 6e 74 65 78 74 20 3d 20 6d 6f 63 6b 2e 4d 6f 63 6b 28 63 75 72 72 ........context.=.mock.Mock(curr
db80 65 6e 74 3d 66 61 6b 65 5f 73 75 62 6e 65 74 5f 6f 62 6a 65 63 74 29 0a 20 20 20 20 20 20 20 20 ent=fake_subnet_object).........
dba0 72 65 73 70 20 3d 20 73 65 6c 66 2e 5f 6d 6f 63 6b 5f 72 65 71 5f 72 65 73 70 28 72 65 71 75 65 resp.=.self._mock_req_resp(reque
dbc0 73 74 73 2e 63 6f 64 65 73 2e 63 72 65 61 74 65 64 29 0a 20 20 20 20 20 20 20 20 77 69 74 68 20 sts.codes.created).........with.
dbe0 6d 6f 63 6b 2e 70 61 74 63 68 28 27 72 65 71 75 65 73 74 73 2e 72 65 71 75 65 73 74 27 2c 0a 20 mock.patch('requests.request',..
dc00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 5f 76 61 .......................return_va
dc20 6c 75 65 3d 72 65 73 70 29 20 61 73 20 6d 6f 63 6b 5f 6d 65 74 68 6f 64 3a 0a 20 20 20 20 20 20 lue=resp).as.mock_method:.......
dc40 20 20 20 20 20 20 73 65 6c 66 2e 63 72 65 61 74 65 5f 73 75 62 6e 65 74 5f 70 6f 73 74 63 6f 6d ......self.create_subnet_postcom
dc60 6d 69 74 28 63 6f 6e 74 65 78 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 5f 74 mit(context).............self._t
dc80 65 73 74 5f 72 65 73 70 6f 6e 73 65 28 63 6f 6e 74 65 78 74 2c 20 27 70 6f 73 74 27 2c 20 27 73 est_response(context,.'post',.'s
dca0 75 62 6e 65 74 27 2c 20 6d 6f 63 6b 5f 6d 65 74 68 6f 64 29 0a 0a 20 20 20 20 64 65 66 20 74 65 ubnet',.mock_method)......def.te
dcc0 73 74 5f 75 70 64 61 74 65 5f 73 75 62 6e 65 74 5f 70 6f 73 74 63 6f 6d 6d 69 74 28 73 65 6c 66 st_update_subnet_postcommit(self
dce0 29 3a 0a 20 20 20 20 20 20 20 20 63 6f 6e 74 65 78 74 20 3d 20 6d 6f 63 6b 2e 4d 6f 63 6b 28 63 ):.........context.=.mock.Mock(c
dd00 75 72 72 65 6e 74 3d 66 61 6b 65 5f 73 75 62 6e 65 74 5f 6f 62 6a 65 63 74 29 0a 20 20 20 20 20 urrent=fake_subnet_object)......
dd20 20 20 20 72 65 73 70 20 3d 20 73 65 6c 66 2e 5f 6d 6f 63 6b 5f 72 65 71 5f 72 65 73 70 28 72 65 ...resp.=.self._mock_req_resp(re
dd40 71 75 65 73 74 73 2e 63 6f 64 65 73 2e 63 72 65 61 74 65 64 29 0a 20 20 20 20 20 20 20 20 77 69 quests.codes.created).........wi
dd60 74 68 20 6d 6f 63 6b 2e 70 61 74 63 68 28 27 72 65 71 75 65 73 74 73 2e 72 65 71 75 65 73 74 27 th.mock.patch('requests.request'
dd80 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e ,.........................return
dda0 5f 76 61 6c 75 65 3d 72 65 73 70 29 20 61 73 20 6d 6f 63 6b 5f 6d 65 74 68 6f 64 3a 0a 20 20 20 _value=resp).as.mock_method:....
ddc0 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 75 70 64 61 74 65 5f 73 75 62 6e 65 74 5f 70 6f 73 74 .........self.update_subnet_post
dde0 63 6f 6d 6d 69 74 28 63 6f 6e 74 65 78 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 commit(context).............self
de00 2e 5f 74 65 73 74 5f 72 65 73 70 6f 6e 73 65 28 63 6f 6e 74 65 78 74 2c 20 27 70 75 74 27 2c 20 ._test_response(context,.'put',.
de20 27 73 75 62 6e 65 74 27 2c 20 6d 6f 63 6b 5f 6d 65 74 68 6f 64 29 0a 0a 20 20 20 20 64 65 66 20 'subnet',.mock_method)......def.
de40 74 65 73 74 5f 64 65 6c 65 74 65 5f 73 75 62 6e 65 74 5f 70 6f 73 74 63 6f 6d 6d 69 74 28 73 65 test_delete_subnet_postcommit(se
de60 6c 66 29 3a 0a 20 20 20 20 20 20 20 20 63 6f 6e 74 65 78 74 20 3d 20 6d 6f 63 6b 2e 4d 6f 63 6b lf):.........context.=.mock.Mock
de80 28 63 75 72 72 65 6e 74 3d 7b 27 69 64 27 3a 20 66 61 6b 65 5f 73 75 62 6e 65 74 5f 75 75 69 64 (current={'id':.fake_subnet_uuid
dea0 7d 29 0a 20 20 20 20 20 20 20 20 72 65 73 70 20 3d 20 73 65 6c 66 2e 5f 6d 6f 63 6b 5f 72 65 71 }).........resp.=.self._mock_req
dec0 5f 72 65 73 70 28 72 65 71 75 65 73 74 73 2e 63 6f 64 65 73 2e 63 72 65 61 74 65 64 29 0a 20 20 _resp(requests.codes.created)...
dee0 20 20 20 20 20 20 77 69 74 68 20 6d 6f 63 6b 2e 70 61 74 63 68 28 27 72 65 71 75 65 73 74 73 2e ......with.mock.patch('requests.
df00 72 65 71 75 65 73 74 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 request',.......................
df20 20 20 72 65 74 75 72 6e 5f 76 61 6c 75 65 3d 72 65 73 70 29 20 61 73 20 6d 6f 63 6b 5f 6d 65 74 ..return_value=resp).as.mock_met
df40 68 6f 64 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 64 65 6c 65 74 65 5f 73 75 62 hod:.............self.delete_sub
df60 6e 65 74 5f 70 6f 73 74 63 6f 6d 6d 69 74 28 63 6f 6e 74 65 78 74 29 0a 20 20 20 20 20 20 20 20 net_postcommit(context).........
df80 20 20 20 20 73 65 6c 66 2e 5f 74 65 73 74 5f 72 65 73 70 6f 6e 73 65 28 63 6f 6e 74 65 78 74 2c ....self._test_response(context,
dfa0 20 27 64 65 6c 65 74 65 27 2c 20 27 73 75 62 6e 65 74 27 2c 20 6d 6f 63 6b 5f 6d 65 74 68 6f 64 .'delete',.'subnet',.mock_method
dfc0 29 0a 0a 20 20 20 20 64 65 66 20 74 65 73 74 5f 63 72 65 61 74 65 5f 70 6f 72 74 5f 70 6f 73 74 )......def.test_create_port_post
dfe0 63 6f 6d 6d 69 74 28 73 65 6c 66 29 3a 0a 20 20 20 20 20 20 20 20 63 6f 6e 74 65 78 74 20 3d 20 commit(self):.........context.=.
e000 6d 6f 63 6b 2e 4d 6f 63 6b 28 63 75 72 72 65 6e 74 3d 66 61 6b 65 5f 70 6f 72 74 5f 6f 62 6a 65 mock.Mock(current=fake_port_obje
e020 63 74 29 0a 20 20 20 20 20 20 20 20 72 65 73 70 20 3d 20 73 65 6c 66 2e 5f 6d 6f 63 6b 5f 72 65 ct).........resp.=.self._mock_re
e040 71 5f 72 65 73 70 28 72 65 71 75 65 73 74 73 2e 63 6f 64 65 73 2e 63 72 65 61 74 65 64 29 0a 20 q_resp(requests.codes.created)..
e060 20 20 20 20 20 20 20 77 69 74 68 20 6d 6f 63 6b 2e 70 61 74 63 68 28 27 72 65 71 75 65 73 74 73 .......with.mock.patch('requests
e080 2e 72 65 71 75 65 73 74 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .request',......................
e0a0 20 20 20 72 65 74 75 72 6e 5f 76 61 6c 75 65 3d 72 65 73 70 29 20 61 73 20 6d 6f 63 6b 5f 6d 65 ...return_value=resp).as.mock_me
e0c0 74 68 6f 64 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 63 72 65 61 74 65 5f 70 6f thod:.............self.create_po
e0e0 72 74 5f 70 6f 73 74 63 6f 6d 6d 69 74 28 63 6f 6e 74 65 78 74 29 0a 20 20 20 20 20 20 20 20 20 rt_postcommit(context)..........
e100 20 20 20 73 65 6c 66 2e 5f 74 65 73 74 5f 72 65 73 70 6f 6e 73 65 28 63 6f 6e 74 65 78 74 2c 20 ...self._test_response(context,.
e120 27 70 6f 73 74 27 2c 20 27 70 6f 72 74 27 2c 20 6d 6f 63 6b 5f 6d 65 74 68 6f 64 29 0a 0a 20 20 'post',.'port',.mock_method)....
e140 20 20 64 65 66 20 74 65 73 74 5f 75 70 64 61 74 65 5f 70 6f 72 74 5f 70 6f 73 74 63 6f 6d 6d 69 ..def.test_update_port_postcommi
e160 74 28 73 65 6c 66 29 3a 0a 20 20 20 20 20 20 20 20 63 6f 6e 74 65 78 74 20 3d 20 6d 6f 63 6b 2e t(self):.........context.=.mock.
e180 4d 6f 63 6b 28 63 75 72 72 65 6e 74 3d 66 61 6b 65 5f 70 6f 72 74 5f 6f 62 6a 65 63 74 29 0a 20 Mock(current=fake_port_object)..
e1a0 20 20 20 20 20 20 20 72 65 73 70 20 3d 20 73 65 6c 66 2e 5f 6d 6f 63 6b 5f 72 65 71 5f 72 65 73 .......resp.=.self._mock_req_res
e1c0 70 28 72 65 71 75 65 73 74 73 2e 63 6f 64 65 73 2e 63 72 65 61 74 65 64 29 0a 20 20 20 20 20 20 p(requests.codes.created).......
e1e0 20 20 77 69 74 68 20 6d 6f 63 6b 2e 70 61 74 63 68 28 27 72 65 71 75 65 73 74 73 2e 72 65 71 75 ..with.mock.patch('requests.requ
e200 65 73 74 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 est',.........................re
e220 74 75 72 6e 5f 76 61 6c 75 65 3d 72 65 73 70 29 20 61 73 20 6d 6f 63 6b 5f 6d 65 74 68 6f 64 3a turn_value=resp).as.mock_method:
e240 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 75 70 64 61 74 65 5f 70 6f 72 74 5f 70 6f .............self.update_port_po
e260 73 74 63 6f 6d 6d 69 74 28 63 6f 6e 74 65 78 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 stcommit(context).............se
e280 6c 66 2e 5f 74 65 73 74 5f 72 65 73 70 6f 6e 73 65 28 63 6f 6e 74 65 78 74 2c 20 27 70 75 74 27 lf._test_response(context,.'put'
e2a0 2c 20 27 70 6f 72 74 27 2c 20 6d 6f 63 6b 5f 6d 65 74 68 6f 64 29 0a 0a 20 20 20 20 64 65 66 20 ,.'port',.mock_method)......def.
e2c0 74 65 73 74 5f 64 65 6c 65 74 65 5f 70 6f 72 74 5f 70 6f 73 74 63 6f 6d 6d 69 74 28 73 65 6c 66 test_delete_port_postcommit(self
e2e0 29 3a 0a 20 20 20 20 20 20 20 20 63 6f 6e 74 65 78 74 20 3d 20 6d 6f 63 6b 2e 4d 6f 63 6b 28 63 ):.........context.=.mock.Mock(c
e300 75 72 72 65 6e 74 3d 7b 27 69 64 27 3a 20 66 61 6b 65 5f 70 6f 72 74 5f 75 75 69 64 7d 29 0a 20 urrent={'id':.fake_port_uuid})..
e320 20 20 20 20 20 20 20 72 65 73 70 20 3d 20 73 65 6c 66 2e 5f 6d 6f 63 6b 5f 72 65 71 5f 72 65 73 .......resp.=.self._mock_req_res
e340 70 28 72 65 71 75 65 73 74 73 2e 63 6f 64 65 73 2e 63 72 65 61 74 65 64 29 0a 20 20 20 20 20 20 p(requests.codes.created).......
e360 20 20 77 69 74 68 20 6d 6f 63 6b 2e 70 61 74 63 68 28 27 72 65 71 75 65 73 74 73 2e 72 65 71 75 ..with.mock.patch('requests.requ
e380 65 73 74 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 est',.........................re
e3a0 74 75 72 6e 5f 76 61 6c 75 65 3d 72 65 73 70 29 20 61 73 20 6d 6f 63 6b 5f 6d 65 74 68 6f 64 3a turn_value=resp).as.mock_method:
e3c0 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 64 65 6c 65 74 65 5f 70 6f 72 74 5f 70 6f .............self.delete_port_po
e3e0 73 74 63 6f 6d 6d 69 74 28 63 6f 6e 74 65 78 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 stcommit(context).............se
e400 6c 66 2e 5f 74 65 73 74 5f 72 65 73 70 6f 6e 73 65 28 63 6f 6e 74 65 78 74 2c 20 27 64 65 6c 65 lf._test_response(context,.'dele
e420 74 65 27 2c 20 27 70 6f 72 74 27 2c 20 6d 6f 63 6b 5f 6d 65 74 68 6f 64 29 0a 0a 20 20 20 20 23 te',.'port',.mock_method)......#
e440 20 67 69 76 65 6e 20 76 61 6c 69 64 20 20 61 6e 64 20 69 6e 76 61 6c 69 64 20 73 65 67 6d 65 6e .given.valid..and.invalid.segmen
e460 74 73 0a 20 20 20 20 76 61 6c 69 64 5f 73 65 67 6d 65 6e 74 20 3d 20 7b 0a 20 20 20 20 20 20 20 ts.....valid_segment.=.{........
e480 20 61 70 69 2e 49 44 3a 20 27 41 50 49 5f 49 44 27 2c 0a 20 20 20 20 20 20 20 20 61 70 69 2e 4e .api.ID:.'API_ID',.........api.N
e4a0 45 54 57 4f 52 4b 5f 54 59 50 45 3a 20 63 6f 6e 73 74 61 6e 74 73 2e 54 59 50 45 5f 4c 4f 43 41 ETWORK_TYPE:.constants.TYPE_LOCA
e4c0 4c 2c 0a 20 20 20 20 20 20 20 20 61 70 69 2e 53 45 47 4d 45 4e 54 41 54 49 4f 4e 5f 49 44 3a 20 L,.........api.SEGMENTATION_ID:.
e4e0 27 41 50 49 5f 53 45 47 4d 45 4e 54 41 54 49 4f 4e 5f 49 44 27 2c 0a 20 20 20 20 20 20 20 20 61 'API_SEGMENTATION_ID',.........a
e500 70 69 2e 50 48 59 53 49 43 41 4c 5f 4e 45 54 57 4f 52 4b 3a 20 27 41 50 49 5f 50 48 59 53 49 43 pi.PHYSICAL_NETWORK:.'API_PHYSIC
e520 41 4c 5f 4e 45 54 57 4f 52 4b 27 7d 0a 0a 20 20 20 20 69 6e 76 61 6c 69 64 5f 73 65 67 6d 65 6e AL_NETWORK'}......invalid_segmen
e540 74 20 3d 20 7b 0a 20 20 20 20 20 20 20 20 61 70 69 2e 49 44 3a 20 27 41 50 49 5f 49 44 27 2c 0a t.=.{.........api.ID:.'API_ID',.
e560 20 20 20 20 20 20 20 20 61 70 69 2e 4e 45 54 57 4f 52 4b 5f 54 59 50 45 3a 20 63 6f 6e 73 74 61 ........api.NETWORK_TYPE:.consta
e580 6e 74 73 2e 54 59 50 45 5f 4e 4f 4e 45 2c 0a 20 20 20 20 20 20 20 20 61 70 69 2e 53 45 47 4d 45 nts.TYPE_NONE,.........api.SEGME
e5a0 4e 54 41 54 49 4f 4e 5f 49 44 3a 20 27 41 50 49 5f 53 45 47 4d 45 4e 54 41 54 49 4f 4e 5f 49 44 NTATION_ID:.'API_SEGMENTATION_ID
e5c0 27 2c 0a 20 20 20 20 20 20 20 20 61 70 69 2e 50 48 59 53 49 43 41 4c 5f 4e 45 54 57 4f 52 4b 3a ',.........api.PHYSICAL_NETWORK:
e5e0 20 27 41 50 49 5f 50 48 59 53 49 43 41 4c 5f 4e 45 54 57 4f 52 4b 27 7d 0a 0a 20 20 20 20 64 65 .'API_PHYSICAL_NETWORK'}......de
e600 66 20 74 65 73 74 5f 63 68 65 63 6b 5f 73 65 67 6d 65 6e 74 28 73 65 6c 66 29 3a 0a 20 20 20 20 f.test_check_segment(self):.....
e620 20 20 20 20 22 22 22 56 61 6c 69 64 61 74 65 20 74 68 65 20 63 68 65 63 6b 5f 73 65 67 6d 65 6e ...."""Validate.the.check_segmen
e640 74 20 6d 65 74 68 6f 64 2e 22 22 22 0a 0a 20 20 20 20 20 20 20 20 23 20 67 69 76 65 6e 20 64 72 t.method."""..........#.given.dr
e660 69 76 65 72 20 61 6e 64 20 61 6c 6c 20 6e 65 74 77 6f 72 6b 20 74 79 70 65 73 0a 20 20 20 20 20 iver.and.all.network.types......
e680 20 20 20 61 6c 6c 5f 6e 65 74 77 6f 72 6b 5f 74 79 70 65 73 20 3d 20 5b 63 6f 6e 73 74 61 6e 74 ...all_network_types.=.[constant
e6a0 73 2e 54 59 50 45 5f 46 4c 41 54 2c 20 63 6f 6e 73 74 61 6e 74 73 2e 54 59 50 45 5f 47 52 45 2c s.TYPE_FLAT,.constants.TYPE_GRE,
e6c0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f ..............................co
e6e0 6e 73 74 61 6e 74 73 2e 54 59 50 45 5f 4c 4f 43 41 4c 2c 20 63 6f 6e 73 74 61 6e 74 73 2e 54 59 nstants.TYPE_LOCAL,.constants.TY
e700 50 45 5f 56 58 4c 41 4e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 PE_VXLAN,.......................
e720 20 20 20 20 20 20 20 63 6f 6e 73 74 61 6e 74 73 2e 54 59 50 45 5f 56 4c 41 4e 2c 20 63 6f 6e 73 .......constants.TYPE_VLAN,.cons
e740 74 61 6e 74 73 2e 54 59 50 45 5f 4e 4f 4e 45 5d 0a 0a 20 20 20 20 20 20 20 20 23 20 77 68 65 6e tants.TYPE_NONE]..........#.when
e760 20 63 68 65 63 6b 69 6e 67 20 73 65 67 6d 65 6e 74 73 20 6e 65 74 77 6f 72 6b 20 74 79 70 65 0a .checking.segments.network.type.
e780 20 20 20 20 20 20 20 20 76 61 6c 69 64 5f 74 79 70 65 73 20 3d 20 7b 6e 65 74 77 6f 72 6b 5f 74 ........valid_types.=.{network_t
e7a0 79 70 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 6e ype........................for.n
e7c0 65 74 77 6f 72 6b 5f 74 79 70 65 20 69 6e 20 61 6c 6c 5f 6e 65 74 77 6f 72 6b 5f 74 79 70 65 73 etwork_type.in.all_network_types
e7e0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 73 65 6c 66 2e ........................if.self.
e800 63 68 65 63 6b 5f 73 65 67 6d 65 6e 74 28 7b 61 70 69 2e 4e 45 54 57 4f 52 4b 5f 54 59 50 45 3a check_segment({api.NETWORK_TYPE:
e820 20 6e 65 74 77 6f 72 6b 5f 74 79 70 65 7d 29 7d 0a 0a 20 20 20 20 20 20 20 20 23 20 74 68 65 6e .network_type})}..........#.then
e840 20 74 72 75 65 20 69 73 20 72 65 74 75 72 6e 65 64 20 6f 6e 6c 79 20 66 6f 72 20 76 61 6c 69 64 .true.is.returned.only.for.valid
e860 20 6e 65 74 77 6f 72 6b 20 74 79 70 65 73 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 61 73 73 65 .network.types.........self.asse
e880 72 74 45 71 75 61 6c 28 7b 63 6f 6e 73 74 61 6e 74 73 2e 54 59 50 45 5f 4c 4f 43 41 4c 2c 20 63 rtEqual({constants.TYPE_LOCAL,.c
e8a0 6f 6e 73 74 61 6e 74 73 2e 54 59 50 45 5f 47 52 45 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 onstants.TYPE_GRE,..............
e8c0 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 61 6e 74 73 2e 54 59 50 45 5f 56 58 4c 41 .............constants.TYPE_VXLA
e8e0 4e 2c 20 63 6f 6e 73 74 61 6e 74 73 2e 54 59 50 45 5f 56 4c 41 4e 7d 2c 0a 20 20 20 20 20 20 20 N,.constants.TYPE_VLAN},........
e900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 6c 69 64 5f 74 79 70 65 73 29 0a 0a ..................valid_types)..
e920 20 20 20 20 64 65 66 20 74 65 73 74 5f 62 69 6e 64 5f 70 6f 72 74 28 73 65 6c 66 29 3a 0a 20 20 ....def.test_bind_port(self):...
e940 20 20 20 20 20 20 73 65 6c 66 2e 76 69 66 5f 74 79 70 65 20 3d 20 22 4d 59 5f 56 49 46 5f 54 59 ......self.vif_type.=."MY_VIF_TY
e960 50 45 22 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 76 69 66 5f 64 65 74 61 69 6c 73 20 3d 20 22 PE".........self.vif_details.=."
e980 4d 59 5f 56 49 46 5f 44 45 54 41 49 4c 53 22 0a 20 20 20 20 20 20 20 20 6e 65 74 77 6f 72 6b 20 MY_VIF_DETAILS".........network.
e9a0 3d 20 6d 6f 63 6b 2e 4d 61 67 69 63 4d 6f 63 6b 28 73 70 65 63 3d 61 70 69 2e 4e 65 74 77 6f 72 =.mock.MagicMock(spec=api.Networ
e9c0 6b 43 6f 6e 74 65 78 74 29 0a 20 20 20 20 20 20 20 20 70 6f 72 74 5f 63 6f 6e 74 65 78 74 20 3d kContext).........port_context.=
e9e0 20 6d 6f 63 6b 2e 4d 61 67 69 63 4d 6f 63 6b 28 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 70 65 .mock.MagicMock(.............spe
ea00 63 3d 63 74 78 2e 50 6f 72 74 43 6f 6e 74 65 78 74 2c 20 63 75 72 72 65 6e 74 3d 7b 27 69 64 27 c=ctx.PortContext,.current={'id'
ea20 3a 20 27 43 55 52 52 45 4e 54 5f 43 4f 4e 54 45 58 54 5f 49 44 27 7d 2c 0a 20 20 20 20 20 20 20 :.'CURRENT_CONTEXT_ID'},........
ea40 20 20 20 20 20 73 65 67 6d 65 6e 74 73 5f 74 6f 5f 62 69 6e 64 3d 5b 73 65 6c 66 2e 76 61 6c 69 .....segments_to_bind=[self.vali
ea60 64 5f 73 65 67 6d 65 6e 74 2c 20 73 65 6c 66 2e 69 6e 76 61 6c 69 64 5f 73 65 67 6d 65 6e 74 5d d_segment,.self.invalid_segment]
ea80 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 74 77 6f 72 6b 3d 6e 65 74 77 6f 72 6b 29 0a 0a ,.............network=network)..
eaa0 20 20 20 20 20 20 20 20 23 20 77 68 65 6e 20 70 6f 72 74 20 69 73 20 62 6f 75 6e 64 0a 20 20 20 ........#.when.port.is.bound....
eac0 20 20 20 20 20 73 65 6c 66 2e 62 69 6e 64 5f 70 6f 72 74 28 70 6f 72 74 5f 63 6f 6e 74 65 78 74 .....self.bind_port(port_context
eae0 29 0a 0a 20 20 20 20 20 20 20 20 23 20 74 68 65 6e 20 63 6f 6e 74 65 78 74 20 62 69 6e 64 69 6e )..........#.then.context.bindin
eb00 67 20 69 73 20 73 65 74 75 70 20 77 69 74 68 20 72 65 74 75 72 6e 65 64 20 76 69 66 5f 74 79 70 g.is.setup.with.returned.vif_typ
eb20 65 20 61 6e 64 20 76 61 6c 69 64 0a 20 20 20 20 20 20 20 20 23 20 73 65 67 6d 65 6e 74 20 61 70 e.and.valid.........#.segment.ap
eb40 69 20 49 44 0a 20 20 20 20 20 20 20 20 70 6f 72 74 5f 63 6f 6e 74 65 78 74 2e 73 65 74 5f 62 69 i.ID.........port_context.set_bi
eb60 6e 64 69 6e 67 2e 61 73 73 65 72 74 5f 63 61 6c 6c 65 64 5f 6f 6e 63 65 5f 77 69 74 68 28 0a 20 nding.assert_called_once_with(..
eb80 20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 76 61 6c 69 64 5f 73 65 67 6d 65 6e 74 5b 61 70 ...........self.valid_segment[ap
eba0 69 2e 49 44 5d 2c 20 73 65 6c 66 2e 76 69 66 5f 74 79 70 65 2c 0a 20 20 20 20 20 20 20 20 20 20 i.ID],.self.vif_type,...........
ebc0 20 20 73 65 6c 66 2e 76 69 66 5f 64 65 74 61 69 6c 73 2c 20 73 74 61 74 75 73 3d 6e 5f 63 6f 6e ..self.vif_details,.status=n_con
ebe0 73 74 2e 50 4f 52 54 5f 53 54 41 54 55 53 5f 41 43 54 49 56 45 29 0a 00 00 00 00 00 00 00 00 00 st.PORT_STATUS_ACTIVE)..........
ec00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
ec20 74 65 73 74 73 2f 75 6e 69 74 2f 70 6c 75 67 69 6e 73 2f 6d 6c 32 2f 5f 5f 69 6e 69 74 5f 5f 2e tests/unit/plugins/ml2/__init__.
ec40 70 79 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 py..............................
ec60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
ec80 30 30 30 30 30 30 30 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 34 35 36 35 00 20 30 00 00 00 0000000.12627513442.024565..0...
eca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ecc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ece0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ed00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
ed20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
ed40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ed60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ed80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eda0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
edc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ede0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ee00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
ee20 74 65 73 74 73 2f 75 6e 69 74 2f 70 6c 75 67 69 6e 73 2f 6c 33 2f 00 00 00 00 00 00 00 00 00 00 tests/unit/plugins/l3/..........
ee40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ee60 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000755.0001750.0001750.0000
ee80 30 30 30 30 30 30 30 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 32 33 31 32 00 20 35 00 00 00 0000000.12627513442.022312..5...
eea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ef00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
ef20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
ef40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ef60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ef80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
efa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
efc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
efe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f000 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
f020 74 65 73 74 73 2f 75 6e 69 74 2f 70 6c 75 67 69 6e 73 2f 6c 33 2f 74 65 73 74 5f 64 72 69 76 65 tests/unit/plugins/l3/test_drive
f040 72 2e 70 79 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 r.py............................
f060 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
f080 30 30 32 34 37 30 37 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 35 32 33 30 00 20 30 00 00 00 0024707.12627513442.025230..0...
f0a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f0c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f0e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f100 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
f120 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
f140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f1a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f1c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f1e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f200 23 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 31 35 20 48 75 61 77 65 69 20 54 65 63 68 #.Copyright.(C).2015.Huawei.Tech
f220 6e 6f 6c 6f 67 69 65 73 20 49 6e 64 69 61 20 50 76 74 20 4c 74 64 2e 0a 23 20 41 6c 6c 20 52 69 nologies.India.Pvt.Ltd..#.All.Ri
f240 67 68 74 73 20 52 65 73 65 72 76 65 64 2e 0a 23 0a 23 20 20 4c 69 63 65 6e 73 65 64 20 75 6e 64 ghts.Reserved..#.#..Licensed.und
f260 65 72 20 74 68 65 20 41 70 61 63 68 65 20 4c 69 63 65 6e 73 65 2c 20 56 65 72 73 69 6f 6e 20 32 er.the.Apache.License,.Version.2
f280 2e 30 20 28 74 68 65 20 22 4c 69 63 65 6e 73 65 22 29 3b 20 79 6f 75 20 6d 61 79 0a 23 20 20 6e .0.(the."License");.you.may.#..n
f2a0 6f 74 20 75 73 65 20 74 68 69 73 20 66 69 6c 65 20 65 78 63 65 70 74 20 69 6e 20 63 6f 6d 70 6c ot.use.this.file.except.in.compl
f2c0 69 61 6e 63 65 20 77 69 74 68 20 74 68 65 20 4c 69 63 65 6e 73 65 2e 20 59 6f 75 20 6d 61 79 20 iance.with.the.License..You.may.
f2e0 6f 62 74 61 69 6e 0a 23 20 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 4c 69 63 65 6e 73 65 20 obtain.#..a.copy.of.the.License.
f300 61 74 0a 23 0a 23 20 20 20 20 20 20 20 68 74 74 70 3a 2f 2f 77 77 77 2e 61 70 61 63 68 65 2e 6f at.#.#.......http://www.apache.o
f320 72 67 2f 6c 69 63 65 6e 73 65 73 2f 4c 49 43 45 4e 53 45 2d 32 2e 30 0a 23 0a 23 20 20 55 6e 6c rg/licenses/LICENSE-2.0.#.#..Unl
f340 65 73 73 20 72 65 71 75 69 72 65 64 20 62 79 20 61 70 70 6c 69 63 61 62 6c 65 20 6c 61 77 20 6f ess.required.by.applicable.law.o
f360 72 20 61 67 72 65 65 64 20 74 6f 20 69 6e 20 77 72 69 74 69 6e 67 2c 20 73 6f 66 74 77 61 72 65 r.agreed.to.in.writing,.software
f380 0a 23 20 20 64 69 73 74 72 69 62 75 74 65 64 20 75 6e 64 65 72 20 74 68 65 20 4c 69 63 65 6e 73 .#..distributed.under.the.Licens
f3a0 65 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 6f 6e 20 61 6e 20 22 41 53 20 49 53 22 20 42 e.is.distributed.on.an."AS.IS".B
f3c0 41 53 49 53 2c 20 57 49 54 48 4f 55 54 0a 23 20 20 57 41 52 52 41 4e 54 49 45 53 20 4f 52 20 43 ASIS,.WITHOUT.#..WARRANTIES.OR.C
f3e0 4f 4e 44 49 54 49 4f 4e 53 20 4f 46 20 41 4e 59 20 4b 49 4e 44 2c 20 65 69 74 68 65 72 20 65 78 ONDITIONS.OF.ANY.KIND,.either.ex
f400 70 72 65 73 73 20 6f 72 20 69 6d 70 6c 69 65 64 2e 20 53 65 65 20 74 68 65 0a 23 20 20 4c 69 63 press.or.implied..See.the.#..Lic
f420 65 6e 73 65 20 66 6f 72 20 74 68 65 20 73 70 65 63 69 66 69 63 20 6c 61 6e 67 75 61 67 65 20 67 ense.for.the.specific.language.g
f440 6f 76 65 72 6e 69 6e 67 20 70 65 72 6d 69 73 73 69 6f 6e 73 20 61 6e 64 20 6c 69 6d 69 74 61 74 overning.permissions.and.limitat
f460 69 6f 6e 73 0a 23 20 20 75 6e 64 65 72 20 74 68 65 20 4c 69 63 65 6e 73 65 2e 0a 23 0a 0a 69 6d ions.#..under.the.License..#..im
f480 70 6f 72 74 20 63 6f 70 79 0a 69 6d 70 6f 72 74 20 6d 6f 63 6b 0a 0a 66 72 6f 6d 20 6f 73 6c 6f port.copy.import.mock..from.oslo
f4a0 74 65 73 74 20 69 6d 70 6f 72 74 20 62 61 73 65 0a 0a 66 72 6f 6d 20 6e 65 75 74 72 6f 6e 2e 65 test.import.base..from.neutron.e
f4c0 78 74 65 6e 73 69 6f 6e 73 20 69 6d 70 6f 72 74 20 6c 33 0a 66 72 6f 6d 20 6e 65 75 74 72 6f 6e xtensions.import.l3.from.neutron
f4e0 2e 74 65 73 74 73 2e 75 6e 69 74 2e 61 70 69 2e 76 32 20 69 6d 70 6f 72 74 20 74 65 73 74 5f 62 .tests.unit.api.v2.import.test_b
f500 61 73 65 0a 66 72 6f 6d 20 6e 65 75 74 72 6f 6e 2e 74 65 73 74 73 2e 75 6e 69 74 2e 65 78 74 65 ase.from.neutron.tests.unit.exte
f520 6e 73 69 6f 6e 73 20 69 6d 70 6f 72 74 20 62 61 73 65 20 61 73 20 74 65 73 74 5f 6e 65 75 74 72 nsions.import.base.as.test_neutr
f540 6f 6e 5f 65 78 74 65 6e 73 69 6f 6e 73 0a 66 72 6f 6d 20 77 65 62 6f 62 20 69 6d 70 6f 72 74 20 on_extensions.from.webob.import.
f560 65 78 63 0a 0a 69 6d 70 6f 72 74 20 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2e 70 6c 75 67 exc..import.networking_onos.plug
f580 69 6e 73 2e 6c 33 2e 64 72 69 76 65 72 20 61 73 20 6f 6e 6f 73 5f 64 72 69 76 65 72 0a 0a 66 61 ins.l3.driver.as.onos_driver..fa
f5a0 6b 65 5f 74 65 6e 61 6e 74 5f 69 64 20 3d 20 27 30 34 38 61 61 39 38 61 33 65 63 33 34 35 64 63 ke_tenant_id.=.'048aa98a3ec345dc
f5c0 38 62 31 34 34 32 37 63 38 31 65 32 37 36 63 66 27 0a 0a 66 61 6b 65 5f 72 6f 75 74 65 72 5f 75 8b14427c81e276cf'..fake_router_u
f5e0 75 69 64 20 3d 20 27 32 39 32 66 37 39 36 37 2d 63 35 65 37 2d 34 37 64 38 2d 38 32 36 35 2d 64 uid.=.'292f7967-c5e7-47d8-8265-d
f600 63 32 31 36 30 36 37 38 62 37 35 27 0a 66 61 6b 65 5f 72 6f 75 74 65 72 5f 6f 62 6a 65 63 74 20 c2160678b75'.fake_router_object.
f620 3d 20 7b 27 72 6f 75 74 65 72 27 3a 20 7b 27 6e 61 6d 65 27 3a 20 27 72 6f 75 74 65 72 5f 61 62 =.{'router':.{'name':.'router_ab
f640 63 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 c',.............................
f660 20 20 20 20 20 27 65 78 74 65 72 6e 61 6c 5f 67 61 74 65 77 61 79 5f 69 6e 66 6f 27 3a 20 4e 6f .....'external_gateway_info':.No
f680 6e 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ne,.............................
f6a0 20 20 20 20 20 27 61 64 6d 69 6e 5f 73 74 61 74 65 5f 75 70 27 3a 20 54 72 75 65 2c 0a 20 20 20 .....'admin_state_up':.True,....
f6c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 74 ..............................'t
f6e0 65 6e 61 6e 74 5f 69 64 27 3a 20 66 61 6b 65 5f 74 65 6e 61 6e 74 5f 69 64 7d 7d 0a 0a 66 61 6b enant_id':.fake_tenant_id}}..fak
f700 65 5f 6e 65 74 77 6f 72 6b 5f 69 64 20 3d 20 27 37 34 36 34 61 61 66 30 2d 32 37 65 61 2d 34 34 e_network_id.=.'7464aaf0-27ea-44
f720 38 61 2d 39 37 64 66 2d 35 31 37 33 32 66 39 65 30 65 32 37 27 0a 66 61 6b 65 5f 72 6f 75 74 65 8a-97df-51732f9e0e27'.fake_route
f740 72 5f 65 78 74 65 72 6e 61 6c 5f 69 6e 66 6f 20 3d 20 7b 27 65 78 74 65 72 6e 61 6c 5f 67 61 74 r_external_info.=.{'external_gat
f760 65 77 61 79 5f 69 6e 66 6f 27 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 eway_info':.....................
f780 20 20 20 20 20 20 20 20 20 7b 27 6e 65 74 77 6f 72 6b 5f 69 64 27 3a 20 66 61 6b 65 5f 6e 65 74 .........{'network_id':.fake_net
f7a0 77 6f 72 6b 5f 69 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 work_id,........................
f7c0 20 20 20 20 20 20 20 27 65 6e 61 62 6c 65 5f 73 6e 61 74 27 3a 20 46 61 6c 73 65 7d 7d 0a 0a 66 .......'enable_snat':.False}}..f
f7e0 61 6b 65 5f 66 6c 6f 61 74 69 6e 67 5f 69 70 5f 69 64 20 3d 20 27 37 34 36 34 61 61 66 30 2d 32 ake_floating_ip_id.=.'7464aaf0-2
f800 37 65 61 2d 34 34 38 61 2d 39 37 64 66 2d 35 31 37 33 32 66 39 65 30 65 32 35 27 0a 66 61 6b 65 7ea-448a-97df-51732f9e0e25'.fake
f820 5f 66 6c 6f 61 74 69 6e 67 5f 69 70 20 3d 20 7b 27 66 6c 6f 61 74 69 6e 67 69 70 27 3a 0a 20 20 _floating_ip.=.{'floatingip':...
f840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 27 66 69 78 65 64 5f 69 70 5f 61 64 64 ..................{'fixed_ip_add
f860 72 65 73 73 27 3a 20 27 31 30 2e 31 2e 31 2e 31 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ress':.'10.1.1.1',..............
f880 20 20 20 20 20 20 20 20 27 69 64 27 3a 20 66 61 6b 65 5f 66 6c 6f 61 74 69 6e 67 5f 69 70 5f 69 ........'id':.fake_floating_ip_i
f8a0 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 72 6f 75 74 65 72 5f d,......................'router_
f8c0 69 64 27 3a 20 66 61 6b 65 5f 72 6f 75 74 65 72 5f 75 75 69 64 2c 0a 20 20 20 20 20 20 20 20 20 id':.fake_router_uuid,..........
f8e0 20 20 20 20 20 20 20 20 20 20 20 20 27 70 6f 72 74 5f 69 64 27 3a 20 4e 6f 6e 65 2c 0a 20 20 20 ............'port_id':.None,....
f900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 73 74 61 74 75 73 27 3a 20 4e 6f 6e 65 ..................'status':.None
f920 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 74 65 6e 61 6e 74 5f 69 ,......................'tenant_i
f940 64 27 3a 20 66 61 6b 65 5f 74 65 6e 61 6e 74 5f 69 64 7d 7d 0a 0a 66 61 6b 65 5f 70 6f 72 74 5f d':.fake_tenant_id}}..fake_port_
f960 69 64 20 3d 20 27 37 64 62 35 36 30 65 39 2d 37 36 64 34 2d 34 62 66 39 2d 39 63 32 38 2d 34 33 id.=.'7db560e9-76d4-4bf9-9c28-43
f980 65 66 61 37 61 66 61 34 35 64 27 0a 66 61 6b 65 5f 73 75 62 6e 65 74 5f 69 64 20 3d 20 27 64 63 efa7afa45d'.fake_subnet_id.=.'dc
f9a0 32 62 38 30 37 31 2d 63 32 34 63 2d 34 61 38 65 2d 62 34 37 31 2d 64 62 66 33 66 62 65 35 35 38 2b8071-c24c-4a8e-b471-dbf3fbe558
f9c0 33 30 27 0a 66 61 6b 65 5f 70 6f 72 74 20 3d 20 7b 27 69 64 27 3a 20 66 61 6b 65 5f 70 6f 72 74 30'.fake_port.=.{'id':.fake_port
f9e0 5f 69 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 27 6e 65 74 77 6f 72 6b 5f 69 64 27 3a 20 _id,..............'network_id':.
fa00 66 61 6b 65 5f 6e 65 74 77 6f 72 6b 5f 69 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 27 66 fake_network_id,..............'f
fa20 69 78 65 64 5f 69 70 73 27 3a 20 5b 7b 27 69 70 5f 61 64 64 72 65 73 73 27 3a 20 27 32 31 2e 34 ixed_ips':.[{'ip_address':.'21.4
fa40 31 2e 34 2e 35 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 1.4.5',.........................
fa60 20 20 20 20 27 70 72 65 66 69 78 6c 65 6e 27 3a 20 32 38 2c 0a 20 20 20 20 20 20 20 20 20 20 20 ....'prefixlen':.28,............
fa80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 73 75 62 6e 65 74 5f 69 64 27 3a 20 66 61 .................'subnet_id':.fa
faa0 6b 65 5f 73 75 62 6e 65 74 5f 69 64 7d 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 27 73 75 ke_subnet_id}],..............'su
fac0 62 6e 65 74 73 27 3a 20 5b 7b 27 69 64 27 3a 20 66 61 6b 65 5f 73 75 62 6e 65 74 5f 69 64 2c 0a bnets':.[{'id':.fake_subnet_id,.
fae0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 63 69 64 72 27 ..........................'cidr'
fb00 3a 20 27 32 31 2e 34 31 2e 34 2e 30 2f 32 38 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 :.'21.41.4.0/28',...............
fb20 20 20 20 20 20 20 20 20 20 20 20 20 27 67 61 74 65 77 61 79 5f 69 70 27 3a 20 27 32 31 2e 34 31 ............'gateway_ip':.'21.41
fb40 2e 34 2e 31 27 7d 5d 7d 0a 0a 66 61 6b 65 5f 66 6c 6f 61 74 69 6e 67 5f 69 70 5f 75 70 64 61 74 .4.1'}]}..fake_floating_ip_updat
fb60 65 5f 69 6e 66 6f 20 3d 20 7b 27 66 6c 6f 61 74 69 6e 67 5f 6e 65 74 77 6f 72 6b 5f 69 64 27 3a e_info.=.{'floating_network_id':
fb80 20 66 61 6b 65 5f 6e 65 74 77 6f 72 6b 5f 69 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .fake_network_id,...............
fba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 74 65 6e 61 6e 74 5f 69 64 27 3a 20 66 ..................'tenant_id':.f
fbc0 61 6b 65 5f 74 65 6e 61 6e 74 5f 69 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ake_tenant_id,..................
fbe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 66 69 78 65 64 5f 69 70 5f 61 64 64 72 65 73 73 ...............'fixed_ip_address
fc00 27 3a 20 27 32 30 2e 31 2e 31 2e 31 31 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ':.'20.1.1.11',.................
fc20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 73 75 62 6e 65 74 5f 69 64 27 3a 20 66 61 6b ................'subnet_id':.fak
fc40 65 5f 70 6f 72 74 5b 27 73 75 62 6e 65 74 73 27 5d 5b 30 5d 5b 27 69 64 27 5d 2c 0a 20 20 20 20 e_port['subnets'][0]['id'],.....
fc60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 70 6f 72 ............................'por
fc80 74 5f 69 64 27 3a 20 66 61 6b 65 5f 70 6f 72 74 5f 69 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 t_id':.fake_port_id,............
fca0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 66 6c 6f 61 74 69 6e 67 5f 69 .....................'floating_i
fcc0 70 5f 61 64 64 72 65 73 73 27 3a 20 27 31 39 38 2e 31 2e 32 2e 33 27 7d 0a 0a 66 61 6b 65 5f 69 p_address':.'198.1.2.3'}..fake_i
fce0 6e 74 65 72 66 61 63 65 5f 61 64 64 20 3d 20 7b 27 73 75 62 6e 65 74 5f 69 64 27 3a 20 66 61 6b nterface_add.=.{'subnet_id':.fak
fd00 65 5f 73 75 62 6e 65 74 5f 69 64 7d 0a 0a 66 61 6b 65 5f 69 6e 74 65 72 66 61 63 65 5f 72 65 6d e_subnet_id}..fake_interface_rem
fd20 6f 76 65 20 3d 20 7b 27 73 75 62 6e 65 74 5f 69 64 27 3a 20 66 61 6b 65 5f 73 75 62 6e 65 74 5f ove.=.{'subnet_id':.fake_subnet_
fd40 69 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 70 6f id,..........................'po
fd60 72 74 5f 69 64 27 3a 20 66 61 6b 65 5f 70 6f 72 74 5f 69 64 7d 0a 0a 0a 63 6c 61 73 73 20 4f 4e rt_id':.fake_port_id}...class.ON
fd80 4f 53 4c 33 50 6c 75 67 69 6e 54 65 73 74 43 61 73 65 28 62 61 73 65 2e 42 61 73 65 54 65 73 74 OSL3PluginTestCase(base.BaseTest
fda0 43 61 73 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 Case,...........................
fdc0 20 74 65 73 74 5f 6e 65 75 74 72 6f 6e 5f 65 78 74 65 6e 73 69 6f 6e 73 2e 45 78 74 65 6e 73 69 .test_neutron_extensions.Extensi
fde0 6f 6e 54 65 73 74 43 61 73 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 onTestCase,.....................
fe00 20 20 20 20 20 20 20 6f 6e 6f 73 5f 64 72 69 76 65 72 2e 4f 4e 4f 53 4c 33 50 6c 75 67 69 6e 29 .......onos_driver.ONOSL3Plugin)
fe20 3a 0a 0a 20 20 20 20 64 65 66 20 73 65 74 55 70 28 73 65 6c 66 29 3a 0a 20 20 20 20 20 20 20 20 :......def.setUp(self):.........
fe40 73 75 70 65 72 28 4f 4e 4f 53 4c 33 50 6c 75 67 69 6e 54 65 73 74 43 61 73 65 2c 20 73 65 6c 66 super(ONOSL3PluginTestCase,.self
fe60 29 2e 73 65 74 55 70 28 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 5f 73 65 74 55 70 45 78 74 ).setUp().........self._setUpExt
fe80 65 6e 73 69 6f 6e 28 0a 20 20 20 20 20 20 20 20 20 20 20 20 27 6e 65 75 74 72 6f 6e 2e 65 78 74 ension(.............'neutron.ext
fea0 65 6e 73 69 6f 6e 73 2e 6c 33 2e 52 6f 75 74 65 72 50 6c 75 67 69 6e 42 61 73 65 27 2c 20 4e 6f ensions.l3.RouterPluginBase',.No
fec0 6e 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 6c 33 2e 52 45 53 4f 55 52 43 45 5f 41 54 54 52 ne,.............l3.RESOURCE_ATTR
fee0 49 42 55 54 45 5f 4d 41 50 2c 20 6c 33 2e 4c 33 2c 20 4e 6f 6e 65 2c 0a 20 20 20 20 20 20 20 20 IBUTE_MAP,.l3.L3,.None,.........
ff00 20 20 20 20 61 6c 6c 6f 77 5f 70 61 67 69 6e 61 74 69 6f 6e 3d 54 72 75 65 2c 20 61 6c 6c 6f 77 ....allow_pagination=True,.allow
ff20 5f 73 6f 72 74 69 6e 67 3d 54 72 75 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 75 70 70 6f _sorting=True,.............suppo
ff40 72 74 65 64 5f 65 78 74 65 6e 73 69 6f 6e 5f 61 6c 69 61 73 65 73 3d 5b 27 72 6f 75 74 65 72 27 rted_extension_aliases=['router'
ff60 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 75 73 65 5f 71 75 6f 74 61 3d 54 72 75 65 29 0a 20 ],.............use_quota=True)..
ff80 20 20 20 20 20 20 20 73 65 6c 66 2e 69 6e 73 74 61 6e 63 65 20 3d 20 73 65 6c 66 2e 70 6c 75 67 .......self.instance.=.self.plug
ffa0 69 6e 2e 72 65 74 75 72 6e 5f 76 61 6c 75 65 0a 0a 20 20 20 20 64 65 66 20 5f 6d 6f 63 6b 5f 72 in.return_value......def._mock_r
ffc0 65 71 5f 72 65 73 28 73 65 6c 66 2c 20 73 74 61 74 75 73 5f 63 6f 64 65 29 3a 0a 20 20 20 20 20 eq_res(self,.status_code):......
ffe0 20 20 20 72 65 73 70 6f 6e 73 65 20 3d 20 6d 6f 63 6b 2e 4d 6f 63 6b 28 73 74 61 74 75 73 5f 63 ...response.=.mock.Mock(status_c
10000 6f 64 65 3d 73 74 61 74 75 73 5f 63 6f 64 65 29 0a 20 20 20 20 20 20 20 20 72 65 73 70 6f 6e 73 ode=status_code).........respons
10020 65 2e 72 61 69 73 65 5f 66 6f 72 5f 73 74 61 74 75 73 20 3d 20 6d 6f 63 6b 2e 4d 6f 63 6b 28 29 e.raise_for_status.=.mock.Mock()
10040 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 72 65 73 70 6f 6e 73 65 0a 0a 20 20 20 20 64 65 .........return.response......de
10060 66 20 5f 74 65 73 74 5f 73 65 6e 64 5f 6d 73 67 28 73 65 6c 66 2c 20 64 69 63 74 5f 69 6e 66 6f f._test_send_msg(self,.dict_info
10080 2c 20 6f 70 65 72 5f 74 79 70 65 2c 20 75 72 6c 29 3a 0a 20 20 20 20 20 20 20 20 69 66 20 6f 70 ,.oper_type,.url):.........if.op
100a0 65 72 5f 74 79 70 65 20 3d 3d 20 27 70 6f 73 74 27 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 er_type.==.'post':.............r
100c0 65 73 70 20 3d 20 73 65 6c 66 2e 61 70 69 2e 70 6f 73 74 28 75 72 6c 2c 20 73 65 6c 66 2e 73 65 esp.=.self.api.post(url,.self.se
100e0 72 69 61 6c 69 7a 65 28 64 69 63 74 5f 69 6e 66 6f 29 29 0a 20 20 20 20 20 20 20 20 65 6c 69 66 rialize(dict_info)).........elif
10100 20 6f 70 65 72 5f 74 79 70 65 20 3d 3d 20 27 70 75 74 27 3a 0a 20 20 20 20 20 20 20 20 20 20 20 .oper_type.==.'put':............
10120 20 72 65 73 70 20 3d 20 73 65 6c 66 2e 61 70 69 2e 70 75 74 28 75 72 6c 2c 20 73 65 6c 66 2e 73 .resp.=.self.api.put(url,.self.s
10140 65 72 69 61 6c 69 7a 65 28 64 69 63 74 5f 69 6e 66 6f 29 29 0a 20 20 20 20 20 20 20 20 65 6c 73 erialize(dict_info)).........els
10160 65 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 73 70 20 3d 20 73 65 6c 66 2e 61 70 69 2e 64 e:.............resp.=.self.api.d
10180 65 6c 65 74 65 28 75 72 6c 29 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 72 65 73 70 0a 0a elete(url).........return.resp..
101a0 20 20 20 20 64 65 66 20 74 65 73 74 5f 63 72 65 61 74 65 5f 72 6f 75 74 65 72 28 73 65 6c 66 29 ....def.test_create_router(self)
101c0 3a 0a 20 20 20 20 20 20 20 20 72 6f 75 74 65 72 5f 69 6e 66 6f 20 3d 20 63 6f 70 79 2e 64 65 65 :.........router_info.=.copy.dee
101e0 70 63 6f 70 79 28 66 61 6b 65 5f 72 6f 75 74 65 72 5f 6f 62 6a 65 63 74 5b 27 72 6f 75 74 65 72 pcopy(fake_router_object['router
10200 27 5d 29 0a 20 20 20 20 20 20 20 20 72 6f 75 74 65 72 5f 69 6e 66 6f 2e 75 70 64 61 74 65 28 7b ']).........router_info.update({
10220 27 73 74 61 74 75 73 27 3a 20 27 41 43 54 49 56 45 27 2c 20 27 69 64 27 3a 20 66 61 6b 65 5f 72 'status':.'ACTIVE',.'id':.fake_r
10240 6f 75 74 65 72 5f 75 75 69 64 7d 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 69 6e 73 74 61 6e outer_uuid}).........self.instan
10260 63 65 2e 63 72 65 61 74 65 5f 72 6f 75 74 65 72 2e 72 65 74 75 72 6e 5f 76 61 6c 75 65 20 3d 20 ce.create_router.return_value.=.
10280 72 6f 75 74 65 72 5f 69 6e 66 6f 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 69 6e 73 74 61 6e 63 router_info.........self.instanc
102a0 65 2e 67 65 74 5f 72 6f 75 74 65 72 73 5f 63 6f 75 6e 74 2e 72 65 74 75 72 6e 5f 76 61 6c 75 65 e.get_routers_count.return_value
102c0 20 3d 20 30 0a 20 20 20 20 20 20 20 20 75 72 6c 20 3d 20 74 65 73 74 5f 62 61 73 65 2e 5f 67 65 .=.0.........url.=.test_base._ge
102e0 74 5f 70 61 74 68 28 27 72 6f 75 74 65 72 73 27 2c 20 66 6d 74 3d 73 65 6c 66 2e 66 6d 74 29 0a t_path('routers',.fmt=self.fmt).
10300 20 20 20 20 20 20 20 20 72 65 73 70 20 3d 20 73 65 6c 66 2e 5f 74 65 73 74 5f 73 65 6e 64 5f 6d ........resp.=.self._test_send_m
10320 73 67 28 66 61 6b 65 5f 72 6f 75 74 65 72 5f 6f 62 6a 65 63 74 2c 20 27 70 6f 73 74 27 2c 20 75 sg(fake_router_object,.'post',.u
10340 72 6c 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 69 6e 73 74 61 6e 63 65 2e 63 72 65 61 74 65 rl).........self.instance.create
10360 5f 72 6f 75 74 65 72 2e 5c 0a 20 20 20 20 20 20 20 20 20 20 20 20 61 73 73 65 72 74 5f 63 61 6c _router.\.............assert_cal
10380 6c 65 64 5f 6f 6e 63 65 5f 77 69 74 68 28 6d 6f 63 6b 2e 41 4e 59 2c 20 72 6f 75 74 65 72 3d 66 led_once_with(mock.ANY,.router=f
103a0 61 6b 65 5f 72 6f 75 74 65 72 5f 6f 62 6a 65 63 74 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e ake_router_object).........self.
103c0 5f 76 65 72 69 66 79 5f 72 65 73 70 28 72 65 73 70 2c 20 65 78 63 2e 48 54 54 50 43 72 65 61 74 _verify_resp(resp,.exc.HTTPCreat
103e0 65 64 2e 63 6f 64 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ed.code,........................
10400 20 20 20 27 72 6f 75 74 65 72 27 2c 20 66 61 6b 65 5f 72 6f 75 74 65 72 5f 75 75 69 64 29 0a 0a ...'router',.fake_router_uuid)..
10420 20 20 20 20 64 65 66 20 74 65 73 74 5f 75 70 64 61 74 65 5f 72 6f 75 74 65 72 28 73 65 6c 66 29 ....def.test_update_router(self)
10440 3a 0a 20 20 20 20 20 20 20 20 72 6f 75 74 65 72 5f 69 6e 66 6f 20 3d 20 63 6f 70 79 2e 64 65 65 :.........router_info.=.copy.dee
10460 70 63 6f 70 79 28 66 61 6b 65 5f 72 6f 75 74 65 72 5f 6f 62 6a 65 63 74 5b 27 72 6f 75 74 65 72 pcopy(fake_router_object['router
10480 27 5d 29 0a 20 20 20 20 20 20 20 20 72 6f 75 74 65 72 5f 69 6e 66 6f 2e 75 70 64 61 74 65 28 66 ']).........router_info.update(f
104a0 61 6b 65 5f 72 6f 75 74 65 72 5f 65 78 74 65 72 6e 61 6c 5f 69 6e 66 6f 29 0a 20 20 20 20 20 20 ake_router_external_info).......
104c0 20 20 72 6f 75 74 65 72 5f 69 6e 66 6f 2e 75 70 64 61 74 65 28 7b 27 73 74 61 74 75 73 27 3a 20 ..router_info.update({'status':.
104e0 27 41 43 54 49 56 45 27 2c 20 27 69 64 27 3a 20 66 61 6b 65 5f 72 6f 75 74 65 72 5f 75 75 69 64 'ACTIVE',.'id':.fake_router_uuid
10500 7d 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 69 6e 73 74 61 6e 63 65 2e 75 70 64 61 74 65 5f }).........self.instance.update_
10520 72 6f 75 74 65 72 2e 72 65 74 75 72 6e 5f 76 61 6c 75 65 20 3d 20 72 6f 75 74 65 72 5f 69 6e 66 router.return_value.=.router_inf
10540 6f 0a 20 20 20 20 20 20 20 20 72 6f 75 74 65 72 5f 72 65 71 75 65 73 74 20 3d 20 7b 27 72 6f 75 o.........router_request.=.{'rou
10560 74 65 72 27 3a 20 66 61 6b 65 5f 72 6f 75 74 65 72 5f 65 78 74 65 72 6e 61 6c 5f 69 6e 66 6f 7d ter':.fake_router_external_info}
10580 0a 20 20 20 20 20 20 20 20 75 72 6c 20 3d 20 74 65 73 74 5f 62 61 73 65 2e 5f 67 65 74 5f 70 61 .........url.=.test_base._get_pa
105a0 74 68 28 27 72 6f 75 74 65 72 73 27 2c 20 69 64 3d 66 61 6b 65 5f 72 6f 75 74 65 72 5f 75 75 69 th('routers',.id=fake_router_uui
105c0 64 2c 20 66 6d 74 3d 73 65 6c 66 2e 66 6d 74 29 0a 20 20 20 20 20 20 20 20 72 65 73 70 20 3d 20 d,.fmt=self.fmt).........resp.=.
105e0 73 65 6c 66 2e 5f 74 65 73 74 5f 73 65 6e 64 5f 6d 73 67 28 72 6f 75 74 65 72 5f 72 65 71 75 65 self._test_send_msg(router_reque
10600 73 74 2c 20 27 70 75 74 27 2c 20 75 72 6c 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 69 6e 73 st,.'put',.url).........self.ins
10620 74 61 6e 63 65 2e 75 70 64 61 74 65 5f 72 6f 75 74 65 72 2e 5c 0a 20 20 20 20 20 20 20 20 20 20 tance.update_router.\...........
10640 20 20 61 73 73 65 72 74 5f 63 61 6c 6c 65 64 5f 6f 6e 63 65 5f 77 69 74 68 28 6d 6f 63 6b 2e 41 ..assert_called_once_with(mock.A
10660 4e 59 2c 20 66 61 6b 65 5f 72 6f 75 74 65 72 5f 75 75 69 64 2c 0a 20 20 20 20 20 20 20 20 20 20 NY,.fake_router_uuid,...........
10680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 75 74 65 72 ..........................router
106a0 3d 72 6f 75 74 65 72 5f 72 65 71 75 65 73 74 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 5f 76 =router_request).........self._v
106c0 65 72 69 66 79 5f 72 65 73 70 28 72 65 73 70 2c 20 65 78 63 2e 48 54 54 50 4f 6b 2e 63 6f 64 65 erify_resp(resp,.exc.HTTPOk.code
106e0 2c 20 27 72 6f 75 74 65 72 27 2c 20 66 61 6b 65 5f 72 6f 75 74 65 72 5f 75 75 69 64 29 0a 0a 20 ,.'router',.fake_router_uuid)...
10700 20 20 20 64 65 66 20 74 65 73 74 5f 64 65 6c 65 74 65 5f 72 6f 75 74 65 72 28 73 65 6c 66 29 3a ...def.test_delete_router(self):
10720 0a 20 20 20 20 20 20 20 20 75 72 6c 20 3d 20 74 65 73 74 5f 62 61 73 65 2e 5f 67 65 74 5f 70 61 .........url.=.test_base._get_pa
10740 74 68 28 27 72 6f 75 74 65 72 73 27 2c 20 69 64 3d 66 61 6b 65 5f 72 6f 75 74 65 72 5f 75 75 69 th('routers',.id=fake_router_uui
10760 64 2c 20 66 6d 74 3d 73 65 6c 66 2e 66 6d 74 29 0a 20 20 20 20 20 20 20 20 72 65 73 70 20 3d 20 d,.fmt=self.fmt).........resp.=.
10780 73 65 6c 66 2e 5f 74 65 73 74 5f 73 65 6e 64 5f 6d 73 67 28 4e 6f 6e 65 2c 20 27 64 65 6c 65 74 self._test_send_msg(None,.'delet
107a0 65 27 2c 20 75 72 6c 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 69 6e 73 74 61 6e 63 65 2e 64 e',.url).........self.instance.d
107c0 65 6c 65 74 65 5f 72 6f 75 74 65 72 2e 61 73 73 65 72 74 5f 63 61 6c 6c 65 64 5f 6f 6e 63 65 5f elete_router.assert_called_once_
107e0 77 69 74 68 28 6d 6f 63 6b 2e 41 4e 59 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 with(mock.ANY,..................
10800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
10820 20 20 20 20 20 20 20 20 20 20 20 66 61 6b 65 5f 72 6f 75 74 65 72 5f 75 75 69 64 29 0a 20 20 20 ...........fake_router_uuid)....
10840 20 20 20 20 20 73 65 6c 66 2e 61 73 73 65 72 74 45 71 75 61 6c 28 72 65 73 70 2e 73 74 61 74 75 .....self.assertEqual(resp.statu
10860 73 5f 69 6e 74 2c 20 65 78 63 2e 48 54 54 50 4e 6f 43 6f 6e 74 65 6e 74 2e 63 6f 64 65 29 0a 0a s_int,.exc.HTTPNoContent.code)..
10880 20 20 20 20 64 65 66 20 74 65 73 74 5f 63 72 65 61 74 65 5f 66 6c 6f 61 74 69 6e 67 5f 69 70 28 ....def.test_create_floating_ip(
108a0 73 65 6c 66 29 3a 0a 20 20 20 20 20 20 20 20 66 6c 6f 61 74 69 6e 67 69 70 5f 69 6e 66 6f 20 3d self):.........floatingip_info.=
108c0 20 63 6f 70 79 2e 64 65 65 70 63 6f 70 79 28 66 61 6b 65 5f 66 6c 6f 61 74 69 6e 67 5f 69 70 5b .copy.deepcopy(fake_floating_ip[
108e0 27 66 6c 6f 61 74 69 6e 67 69 70 27 5d 29 0a 20 20 20 20 20 20 20 20 66 6c 6f 61 74 69 6e 67 69 'floatingip']).........floatingi
10900 70 5f 69 6e 66 6f 2e 75 70 64 61 74 65 28 66 61 6b 65 5f 66 6c 6f 61 74 69 6e 67 5f 69 70 5f 75 p_info.update(fake_floating_ip_u
10920 70 64 61 74 65 5f 69 6e 66 6f 29 0a 20 20 20 20 20 20 20 20 66 6c 6f 61 74 69 6e 67 69 70 5f 69 pdate_info).........floatingip_i
10940 6e 66 6f 2e 75 70 64 61 74 65 28 7b 27 73 74 61 74 75 73 27 3a 20 27 41 43 54 49 56 45 27 2c 20 nfo.update({'status':.'ACTIVE',.
10960 27 66 69 78 65 64 5f 69 70 5f 61 64 64 72 65 73 73 27 3a 20 4e 6f 6e 65 7d 29 0a 0a 20 20 20 20 'fixed_ip_address':.None})......
10980 20 20 20 20 73 65 6c 66 2e 69 6e 73 74 61 6e 63 65 2e 63 72 65 61 74 65 5f 66 6c 6f 61 74 69 6e ....self.instance.create_floatin
109a0 67 69 70 2e 72 65 74 75 72 6e 5f 76 61 6c 75 65 20 3d 20 66 6c 6f 61 74 69 6e 67 69 70 5f 69 6e gip.return_value.=.floatingip_in
109c0 66 6f 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 69 6e 73 74 61 6e 63 65 2e 67 65 74 5f 66 6c 6f fo.........self.instance.get_flo
109e0 61 74 69 6e 67 69 70 73 5f 63 6f 75 6e 74 2e 72 65 74 75 72 6e 5f 76 61 6c 75 65 20 3d 20 30 0a atingips_count.return_value.=.0.
10a00 20 20 20 20 20 20 20 20 73 65 6c 66 2e 69 6e 73 74 61 6e 63 65 2e 67 65 74 5f 70 6f 72 74 20 3d ........self.instance.get_port.=
10a20 20 6d 6f 63 6b 2e 4d 6f 63 6b 28 72 65 74 75 72 6e 5f 76 61 6c 75 65 3d 66 61 6b 65 5f 70 6f 72 .mock.Mock(return_value=fake_por
10a40 74 29 0a 0a 20 20 20 20 20 20 20 20 66 6c 6f 61 74 69 6e 67 5f 69 70 5f 72 65 71 75 65 73 74 20 t)..........floating_ip_request.
10a60 3d 20 7b 27 66 6c 6f 61 74 69 6e 67 69 70 27 3a 20 66 61 6b 65 5f 66 6c 6f 61 74 69 6e 67 5f 69 =.{'floatingip':.fake_floating_i
10a80 70 5f 75 70 64 61 74 65 5f 69 6e 66 6f 7d 0a 20 20 20 20 20 20 20 20 75 72 6c 20 3d 20 74 65 73 p_update_info}.........url.=.tes
10aa0 74 5f 62 61 73 65 2e 5f 67 65 74 5f 70 61 74 68 28 27 66 6c 6f 61 74 69 6e 67 69 70 73 27 2c 20 t_base._get_path('floatingips',.
10ac0 66 6d 74 3d 73 65 6c 66 2e 66 6d 74 29 0a 20 20 20 20 20 20 20 20 72 65 73 70 20 3d 20 73 65 6c fmt=self.fmt).........resp.=.sel
10ae0 66 2e 5f 74 65 73 74 5f 73 65 6e 64 5f 6d 73 67 28 66 6c 6f 61 74 69 6e 67 5f 69 70 5f 72 65 71 f._test_send_msg(floating_ip_req
10b00 75 65 73 74 2c 20 27 70 6f 73 74 27 2c 20 75 72 6c 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e uest,.'post',.url).........self.
10b20 69 6e 73 74 61 6e 63 65 2e 63 72 65 61 74 65 5f 66 6c 6f 61 74 69 6e 67 69 70 2e 5c 0a 20 20 20 instance.create_floatingip.\....
10b40 20 20 20 20 20 20 20 20 20 61 73 73 65 72 74 5f 63 61 6c 6c 65 64 5f 6f 6e 63 65 5f 77 69 74 68 .........assert_called_once_with
10b60 28 6d 6f 63 6b 2e 41 4e 59 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (mock.ANY,......................
10b80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6c 6f 61 74 69 6e 67 69 70 3d 66 6c 6f 61 74 69 ...............floatingip=floati
10ba0 6e 67 5f 69 70 5f 72 65 71 75 65 73 74 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 5f 76 65 72 ng_ip_request).........self._ver
10bc0 69 66 79 5f 72 65 73 70 28 72 65 73 70 2c 20 65 78 63 2e 48 54 54 50 43 72 65 61 74 65 64 2e 63 ify_resp(resp,.exc.HTTPCreated.c
10be0 6f 64 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 ode,...........................'
10c00 66 6c 6f 61 74 69 6e 67 69 70 27 2c 20 66 61 6b 65 5f 66 6c 6f 61 74 69 6e 67 5f 69 70 5f 69 64 floatingip',.fake_floating_ip_id
10c20 29 0a 0a 20 20 20 20 64 65 66 20 74 65 73 74 5f 75 70 64 61 74 65 5f 66 6c 6f 61 74 69 6e 67 5f )......def.test_update_floating_
10c40 69 70 28 73 65 6c 66 29 3a 0a 20 20 20 20 20 20 20 20 66 61 6b 65 5f 66 6c 6f 61 74 69 6e 67 5f ip(self):.........fake_floating_
10c60 69 70 5f 75 70 64 61 74 65 5f 69 6e 66 6f 20 3d 20 7b 27 70 6f 72 74 5f 69 64 27 3a 20 4e 6f 6e ip_update_info.=.{'port_id':.Non
10c80 65 7d 0a 20 20 20 20 20 20 20 20 66 6c 6f 61 74 69 6e 67 69 70 5f 69 6e 66 6f 20 3d 20 63 6f 70 e}.........floatingip_info.=.cop
10ca0 79 2e 64 65 65 70 63 6f 70 79 28 66 61 6b 65 5f 66 6c 6f 61 74 69 6e 67 5f 69 70 5b 27 66 6c 6f y.deepcopy(fake_floating_ip['flo
10cc0 61 74 69 6e 67 69 70 27 5d 29 0a 20 20 20 20 20 20 20 20 66 6c 6f 61 74 69 6e 67 69 70 5f 69 6e atingip']).........floatingip_in
10ce0 66 6f 2e 75 70 64 61 74 65 28 66 61 6b 65 5f 66 6c 6f 61 74 69 6e 67 5f 69 70 5f 75 70 64 61 74 fo.update(fake_floating_ip_updat
10d00 65 5f 69 6e 66 6f 29 0a 20 20 20 20 20 20 20 20 66 6c 6f 61 74 69 6e 67 69 70 5f 69 6e 66 6f 2e e_info).........floatingip_info.
10d20 75 70 64 61 74 65 28 7b 27 73 74 61 74 75 73 27 3a 20 27 41 43 54 49 56 45 27 2c 0a 20 20 20 20 update({'status':.'ACTIVE',.....
10d40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 74 65 6e ............................'ten
10d60 61 6e 74 5f 69 64 27 3a 20 66 61 6b 65 5f 74 65 6e 61 6e 74 5f 69 64 2c 0a 20 20 20 20 20 20 20 ant_id':.fake_tenant_id,........
10d80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 66 6c 6f 61 74 69 .........................'floati
10da0 6e 67 5f 6e 65 74 77 6f 72 6b 5f 69 64 27 3a 20 66 61 6b 65 5f 6e 65 74 77 6f 72 6b 5f 69 64 2c ng_network_id':.fake_network_id,
10dc0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
10de0 20 27 66 69 78 65 64 5f 69 70 5f 61 64 64 72 65 73 73 27 3a 20 4e 6f 6e 65 2c 0a 20 20 20 20 20 .'fixed_ip_address':.None,......
10e00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 66 6c 6f 61 ...........................'floa
10e20 74 69 6e 67 5f 69 70 5f 61 64 64 72 65 73 73 27 3a 20 27 31 37 32 2e 32 34 2e 34 2e 32 32 38 27 ting_ip_address':.'172.24.4.228'
10e40 7d 29 0a 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 69 6e 73 74 61 6e 63 65 2e 75 70 64 61 74 65 })..........self.instance.update
10e60 5f 66 6c 6f 61 74 69 6e 67 69 70 2e 72 65 74 75 72 6e 5f 76 61 6c 75 65 20 3d 20 66 6c 6f 61 74 _floatingip.return_value.=.float
10e80 69 6e 67 69 70 5f 69 6e 66 6f 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 69 6e 73 74 61 6e 63 65 ingip_info.........self.instance
10ea0 2e 67 65 74 5f 70 6f 72 74 20 3d 20 6d 6f 63 6b 2e 4d 6f 63 6b 28 72 65 74 75 72 6e 5f 76 61 6c .get_port.=.mock.Mock(return_val
10ec0 75 65 3d 66 61 6b 65 5f 70 6f 72 74 29 0a 20 20 20 20 20 20 20 20 66 6c 6f 61 74 69 6e 67 5f 69 ue=fake_port).........floating_i
10ee0 70 5f 72 65 71 75 65 73 74 20 3d 20 7b 27 66 6c 6f 61 74 69 6e 67 69 70 27 3a 20 66 61 6b 65 5f p_request.=.{'floatingip':.fake_
10f00 66 6c 6f 61 74 69 6e 67 5f 69 70 5f 75 70 64 61 74 65 5f 69 6e 66 6f 7d 0a 20 20 20 20 20 20 20 floating_ip_update_info}........
10f20 20 75 72 6c 20 3d 20 74 65 73 74 5f 62 61 73 65 2e 5f 67 65 74 5f 70 61 74 68 28 27 66 6c 6f 61 .url.=.test_base._get_path('floa
10f40 74 69 6e 67 69 70 73 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tingips',.......................
10f60 20 20 20 20 20 20 20 20 20 20 20 20 69 64 3d 66 61 6b 65 5f 66 6c 6f 61 74 69 6e 67 5f 69 70 5f ............id=fake_floating_ip_
10f80 69 64 2c 20 66 6d 74 3d 73 65 6c 66 2e 66 6d 74 29 0a 20 20 20 20 20 20 20 20 72 65 73 70 20 3d id,.fmt=self.fmt).........resp.=
10fa0 20 73 65 6c 66 2e 5f 74 65 73 74 5f 73 65 6e 64 5f 6d 73 67 28 66 6c 6f 61 74 69 6e 67 5f 69 70 .self._test_send_msg(floating_ip
10fc0 5f 72 65 71 75 65 73 74 2c 20 27 70 75 74 27 2c 20 75 72 6c 29 0a 20 20 20 20 20 20 20 20 73 65 _request,.'put',.url).........se
10fe0 6c 66 2e 69 6e 73 74 61 6e 63 65 2e 75 70 64 61 74 65 5f 66 6c 6f 61 74 69 6e 67 69 70 2e 5c 0a lf.instance.update_floatingip.\.
11000 20 20 20 20 20 20 20 20 20 20 20 20 61 73 73 65 72 74 5f 63 61 6c 6c 65 64 5f 6f 6e 63 65 5f 77 ............assert_called_once_w
11020 69 74 68 28 6d 6f 63 6b 2e 41 4e 59 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ith(mock.ANY,...................
11040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 61 6b 65 5f 66 6c 6f 61 74 69 6e 67 5f ..................fake_floating_
11060 69 70 5f 69 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ip_id,..........................
11080 20 20 20 20 20 20 20 20 20 20 20 66 6c 6f 61 74 69 6e 67 69 70 3d 66 6c 6f 61 74 69 6e 67 5f 69 ...........floatingip=floating_i
110a0 70 5f 72 65 71 75 65 73 74 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 5f 76 65 72 69 66 79 5f p_request).........self._verify_
110c0 72 65 73 70 28 72 65 73 70 2c 20 65 78 63 2e 48 54 54 50 4f 6b 2e 63 6f 64 65 2c 0a 20 20 20 20 resp(resp,.exc.HTTPOk.code,.....
110e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 66 6c 6f 61 74 69 6e 67 69 ......................'floatingi
11100 70 27 2c 20 66 61 6b 65 5f 66 6c 6f 61 74 69 6e 67 5f 69 70 5f 69 64 29 0a 0a 20 20 20 20 64 65 p',.fake_floating_ip_id)......de
11120 66 20 74 65 73 74 5f 64 65 6c 65 74 65 5f 66 6c 6f 61 74 69 6e 67 5f 69 70 28 73 65 6c 66 29 3a f.test_delete_floating_ip(self):
11140 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 69 6e 73 74 61 6e 63 65 2e 67 65 74 5f 70 6f 72 74 20 .........self.instance.get_port.
11160 3d 20 6d 6f 63 6b 2e 4d 6f 63 6b 28 72 65 74 75 72 6e 5f 76 61 6c 75 65 3d 66 61 6b 65 5f 70 6f =.mock.Mock(return_value=fake_po
11180 72 74 29 0a 20 20 20 20 20 20 20 20 75 72 6c 20 3d 20 74 65 73 74 5f 62 61 73 65 2e 5f 67 65 74 rt).........url.=.test_base._get
111a0 5f 70 61 74 68 28 27 66 6c 6f 61 74 69 6e 67 69 70 73 27 2c 20 69 64 3d 66 61 6b 65 5f 66 6c 6f _path('floatingips',.id=fake_flo
111c0 61 74 69 6e 67 5f 69 70 5f 69 64 29 0a 20 20 20 20 20 20 20 20 72 65 73 70 20 3d 20 73 65 6c 66 ating_ip_id).........resp.=.self
111e0 2e 5f 74 65 73 74 5f 73 65 6e 64 5f 6d 73 67 28 4e 6f 6e 65 2c 20 27 64 65 6c 65 74 65 27 2c 20 ._test_send_msg(None,.'delete',.
11200 75 72 6c 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 69 6e 73 74 61 6e 63 65 2e 64 65 6c 65 74 url).........self.instance.delet
11220 65 5f 66 6c 6f 61 74 69 6e 67 69 70 2e 5c 0a 20 20 20 20 20 20 20 20 20 20 20 20 61 73 73 65 72 e_floatingip.\.............asser
11240 74 5f 63 61 6c 6c 65 64 5f 6f 6e 63 65 5f 77 69 74 68 28 6d 6f 63 6b 2e 41 4e 59 2c 20 66 61 6b t_called_once_with(mock.ANY,.fak
11260 65 5f 66 6c 6f 61 74 69 6e 67 5f 69 70 5f 69 64 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 61 e_floating_ip_id).........self.a
11280 73 73 65 72 74 45 71 75 61 6c 28 72 65 73 70 2e 73 74 61 74 75 73 5f 69 6e 74 2c 20 65 78 63 2e ssertEqual(resp.status_int,.exc.
112a0 48 54 54 50 4e 6f 43 6f 6e 74 65 6e 74 2e 63 6f 64 65 29 0a 0a 20 20 20 20 64 65 66 20 74 65 73 HTTPNoContent.code)......def.tes
112c0 74 5f 61 64 64 5f 72 6f 75 74 65 72 5f 69 6e 74 65 72 66 61 63 65 28 73 65 6c 66 29 3a 0a 20 20 t_add_router_interface(self):...
112e0 20 20 20 20 20 20 69 6e 74 65 72 66 61 63 65 5f 69 6e 66 6f 20 3d 20 7b 27 74 65 6e 61 6e 74 5f ......interface_info.=.{'tenant_
11300 69 64 27 3a 20 66 61 6b 65 5f 74 65 6e 61 6e 74 5f 69 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 id':.fake_tenant_id,............
11320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 70 6f 72 74 5f 69 64 27 3a 20 66 61 6b 65 5f 70 ...............'port_id':.fake_p
11340 6f 72 74 5f 69 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ort_id,.........................
11360 20 20 27 69 64 27 3a 20 66 61 6b 65 5f 72 6f 75 74 65 72 5f 75 75 69 64 7d 0a 20 20 20 20 20 20 ..'id':.fake_router_uuid}.......
11380 20 20 69 6e 74 65 72 66 61 63 65 5f 69 6e 66 6f 2e 75 70 64 61 74 65 28 66 61 6b 65 5f 69 6e 74 ..interface_info.update(fake_int
113a0 65 72 66 61 63 65 5f 61 64 64 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 69 6e 73 74 61 6e 63 erface_add).........self.instanc
113c0 65 2e 61 64 64 5f 72 6f 75 74 65 72 5f 69 6e 74 65 72 66 61 63 65 2e 72 65 74 75 72 6e 5f 76 61 e.add_router_interface.return_va
113e0 6c 75 65 20 3d 20 69 6e 74 65 72 66 61 63 65 5f 69 6e 66 6f 0a 20 20 20 20 20 20 20 20 75 72 6c lue.=.interface_info.........url
11400 20 3d 20 74 65 73 74 5f 62 61 73 65 2e 5f 67 65 74 5f 70 61 74 68 28 27 72 6f 75 74 65 72 73 27 .=.test_base._get_path('routers'
11420 2c 20 69 64 3d 66 61 6b 65 5f 72 6f 75 74 65 72 5f 75 75 69 64 2c 0a 20 20 20 20 20 20 20 20 20 ,.id=fake_router_uuid,..........
11440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 63 74 69 6f 6e 3d .........................action=
11460 27 61 64 64 5f 72 6f 75 74 65 72 5f 69 6e 74 65 72 66 61 63 65 27 2c 0a 20 20 20 20 20 20 20 20 'add_router_interface',.........
11480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6d 74 3d 73 65 ..........................fmt=se
114a0 6c 66 2e 66 6d 74 29 0a 20 20 20 20 20 20 20 20 72 65 73 70 20 3d 20 73 65 6c 66 2e 5f 74 65 73 lf.fmt).........resp.=.self._tes
114c0 74 5f 73 65 6e 64 5f 6d 73 67 28 66 61 6b 65 5f 69 6e 74 65 72 66 61 63 65 5f 61 64 64 2c 20 27 t_send_msg(fake_interface_add,.'
114e0 70 75 74 27 2c 20 75 72 6c 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 69 6e 73 74 61 6e 63 65 put',.url).........self.instance
11500 2e 61 64 64 5f 72 6f 75 74 65 72 5f 69 6e 74 65 72 66 61 63 65 2e 5c 0a 20 20 20 20 20 20 20 20 .add_router_interface.\.........
11520 20 20 20 20 61 73 73 65 72 74 5f 63 61 6c 6c 65 64 5f 6f 6e 63 65 5f 77 69 74 68 28 6d 6f 63 6b ....assert_called_once_with(mock
11540 2e 41 4e 59 2c 20 66 61 6b 65 5f 72 6f 75 74 65 72 5f 75 75 69 64 2c 0a 20 20 20 20 20 20 20 20 .ANY,.fake_router_uuid,.........
11560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 61 6b 65 ............................fake
11580 5f 69 6e 74 65 72 66 61 63 65 5f 61 64 64 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 5f 76 65 _interface_add).........self._ve
115a0 72 69 66 79 5f 72 65 73 70 28 72 65 73 70 2c 20 65 78 63 2e 48 54 54 50 4f 6b 2e 63 6f 64 65 2c rify_resp(resp,.exc.HTTPOk.code,
115c0 20 4e 6f 6e 65 2c 20 66 61 6b 65 5f 72 6f 75 74 65 72 5f 75 75 69 64 29 0a 0a 20 20 20 20 64 65 .None,.fake_router_uuid)......de
115e0 66 20 74 65 73 74 5f 72 65 6d 6f 76 65 5f 72 6f 75 74 65 72 5f 69 6e 74 65 72 66 61 63 65 28 73 f.test_remove_router_interface(s
11600 65 6c 66 29 3a 0a 20 20 20 20 20 20 20 20 69 6e 74 65 72 66 61 63 65 5f 69 6e 66 6f 20 3d 20 7b elf):.........interface_info.=.{
11620 27 74 65 6e 61 6e 74 5f 69 64 27 3a 20 66 61 6b 65 5f 74 65 6e 61 6e 74 5f 69 64 2c 0a 20 20 20 'tenant_id':.fake_tenant_id,....
11640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 69 64 27 3a 20 66 61 6b .......................'id':.fak
11660 65 5f 72 6f 75 74 65 72 5f 75 75 69 64 7d 0a 20 20 20 20 20 20 20 20 69 6e 74 65 72 66 61 63 65 e_router_uuid}.........interface
11680 5f 69 6e 66 6f 2e 75 70 64 61 74 65 28 66 61 6b 65 5f 69 6e 74 65 72 66 61 63 65 5f 72 65 6d 6f _info.update(fake_interface_remo
116a0 76 65 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 69 6e 73 74 61 6e 63 65 2e 72 65 6d 6f 76 65 ve).........self.instance.remove
116c0 5f 72 6f 75 74 65 72 5f 69 6e 74 65 72 66 61 63 65 2e 72 65 74 75 72 6e 5f 76 61 6c 75 65 20 3d _router_interface.return_value.=
116e0 20 69 6e 74 65 72 66 61 63 65 5f 69 6e 66 6f 0a 20 20 20 20 20 20 20 20 75 72 6c 20 3d 20 74 65 .interface_info.........url.=.te
11700 73 74 5f 62 61 73 65 2e 5f 67 65 74 5f 70 61 74 68 28 27 72 6f 75 74 65 72 73 27 2c 20 69 64 3d st_base._get_path('routers',.id=
11720 66 61 6b 65 5f 72 6f 75 74 65 72 5f 75 75 69 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 fake_router_uuid,...............
11740 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 63 74 69 6f 6e 3d 27 72 65 6d 6f ....................action='remo
11760 76 65 5f 72 6f 75 74 65 72 5f 69 6e 74 65 72 66 61 63 65 27 2c 0a 20 20 20 20 20 20 20 20 20 20 ve_router_interface',...........
11780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6d 74 3d 73 65 6c 66 ........................fmt=self
117a0 2e 66 6d 74 29 0a 20 20 20 20 20 20 20 20 72 65 73 70 20 3d 20 73 65 6c 66 2e 5f 74 65 73 74 5f .fmt).........resp.=.self._test_
117c0 73 65 6e 64 5f 6d 73 67 28 66 61 6b 65 5f 69 6e 74 65 72 66 61 63 65 5f 72 65 6d 6f 76 65 2c 20 send_msg(fake_interface_remove,.
117e0 27 70 75 74 27 2c 20 75 72 6c 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 69 6e 73 74 61 6e 63 'put',.url).........self.instanc
11800 65 2e 72 65 6d 6f 76 65 5f 72 6f 75 74 65 72 5f 69 6e 74 65 72 66 61 63 65 2e 5c 0a 20 20 20 20 e.remove_router_interface.\.....
11820 20 20 20 20 20 20 20 20 61 73 73 65 72 74 5f 63 61 6c 6c 65 64 5f 6f 6e 63 65 5f 77 69 74 68 28 ........assert_called_once_with(
11840 6d 6f 63 6b 2e 41 4e 59 2c 20 66 61 6b 65 5f 72 6f 75 74 65 72 5f 75 75 69 64 2c 0a 20 20 20 20 mock.ANY,.fake_router_uuid,.....
11860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
11880 66 61 6b 65 5f 69 6e 74 65 72 66 61 63 65 5f 72 65 6d 6f 76 65 29 0a 20 20 20 20 20 20 20 20 73 fake_interface_remove).........s
118a0 65 6c 66 2e 5f 76 65 72 69 66 79 5f 72 65 73 70 28 72 65 73 70 2c 20 65 78 63 2e 48 54 54 50 4f elf._verify_resp(resp,.exc.HTTPO
118c0 6b 2e 63 6f 64 65 2c 20 4e 6f 6e 65 2c 20 66 61 6b 65 5f 72 6f 75 74 65 72 5f 75 75 69 64 29 0a k.code,.None,.fake_router_uuid).
118e0 0a 20 20 20 20 64 65 66 20 5f 76 65 72 69 66 79 5f 72 65 73 70 28 73 65 6c 66 2c 20 72 65 73 70 .....def._verify_resp(self,.resp
11900 2c 20 72 65 74 75 72 6e 5f 63 6f 64 65 2c 20 63 6f 6e 74 65 78 74 2c 20 69 64 29 3a 0a 20 20 20 ,.return_code,.context,.id):....
11920 20 20 20 20 20 73 65 6c 66 2e 61 73 73 65 72 74 45 71 75 61 6c 28 72 65 73 70 2e 73 74 61 74 75 .....self.assertEqual(resp.statu
11940 73 5f 69 6e 74 2c 20 72 65 74 75 72 6e 5f 63 6f 64 65 29 0a 20 20 20 20 20 20 20 20 72 65 73 70 s_int,.return_code).........resp
11960 20 3d 20 73 65 6c 66 2e 64 65 73 65 72 69 61 6c 69 7a 65 28 72 65 73 70 29 0a 0a 20 20 20 20 20 .=.self.deserialize(resp).......
11980 20 20 20 69 66 20 63 6f 6e 74 65 78 74 20 69 73 20 4e 6f 6e 65 3a 0a 20 20 20 20 20 20 20 20 20 ...if.context.is.None:..........
119a0 20 20 20 73 65 6c 66 2e 61 73 73 65 72 74 45 71 75 61 6c 28 72 65 73 70 5b 27 69 64 27 5d 2c 20 ...self.assertEqual(resp['id'],.
119c0 69 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 61 73 73 65 72 74 45 71 75 61 6c id).............self.assertEqual
119e0 28 72 65 73 70 5b 27 73 75 62 6e 65 74 5f 69 64 27 5d 2c 20 66 61 6b 65 5f 73 75 62 6e 65 74 5f (resp['subnet_id'],.fake_subnet_
11a00 69 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 0a 0a 20 20 20 20 20 20 20 20 id).............return..........
11a20 73 65 6c 66 2e 61 73 73 65 72 74 49 6e 28 63 6f 6e 74 65 78 74 2c 20 72 65 73 70 29 0a 20 20 20 self.assertIn(context,.resp)....
11a40 20 20 20 20 20 72 65 73 6f 75 72 63 65 20 3d 20 72 65 73 70 5b 63 6f 6e 74 65 78 74 5d 0a 20 20 .....resource.=.resp[context]...
11a60 20 20 20 20 20 20 73 65 6c 66 2e 61 73 73 65 72 74 45 71 75 61 6c 28 72 65 73 6f 75 72 63 65 5b ......self.assertEqual(resource[
11a80 27 69 64 27 5d 2c 20 69 64 29 0a 20 20 20 20 20 20 20 20 69 66 20 63 6f 6e 74 65 78 74 20 3d 3d 'id'],.id).........if.context.==
11aa0 20 27 72 6f 75 74 65 72 27 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 61 73 73 65 .'router':.............self.asse
11ac0 72 74 45 71 75 61 6c 28 72 65 73 6f 75 72 63 65 5b 27 73 74 61 74 75 73 27 5d 2c 20 27 41 43 54 rtEqual(resource['status'],.'ACT
11ae0 49 56 45 27 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 61 73 73 65 72 74 45 71 75 IVE').............self.assertEqu
11b00 61 6c 28 72 65 73 6f 75 72 63 65 5b 27 61 64 6d 69 6e 5f 73 74 61 74 65 5f 75 70 27 5d 2c 20 54 al(resource['admin_state_up'],.T
11b20 72 75 65 29 0a 20 20 20 20 20 20 20 20 65 6c 69 66 20 63 6f 6e 74 65 78 74 20 3d 3d 20 27 66 6c rue).........elif.context.==.'fl
11b40 6f 61 74 69 6e 67 69 70 27 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 61 73 73 65 oatingip':.............self.asse
11b60 72 74 45 71 75 61 6c 28 72 65 73 6f 75 72 63 65 5b 27 73 74 61 74 75 73 27 5d 2c 20 27 41 43 54 rtEqual(resource['status'],.'ACT
11b80 49 56 45 27 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 61 73 73 65 72 74 45 71 75 IVE').............self.assertEqu
11ba0 61 6c 28 72 65 73 6f 75 72 63 65 5b 27 66 69 78 65 64 5f 69 70 5f 61 64 64 72 65 73 73 27 5d 2c al(resource['fixed_ip_address'],
11bc0 20 4e 6f 6e 65 29 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .None)..........................
11be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11c00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
11c20 74 65 73 74 73 2f 75 6e 69 74 2f 70 6c 75 67 69 6e 73 2f 6c 33 2f 5f 5f 69 6e 69 74 5f 5f 2e 70 tests/unit/plugins/l3/__init__.p
11c40 79 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 y...............................
11c60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
11c80 30 30 30 30 30 30 30 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 34 34 31 31 00 20 30 00 00 00 0000000.12627513442.024411..0...
11ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11d00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
11d20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
11d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11e00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
11e20 74 65 73 74 73 2f 75 6e 69 74 2f 5f 5f 69 6e 69 74 5f 5f 2e 70 79 00 00 00 00 00 00 00 00 00 00 tests/unit/__init__.py..........
11e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11e60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
11e80 30 30 30 30 30 30 30 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 32 34 31 32 00 20 30 00 00 00 0000000.12627513442.022412..0...
11ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11f00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
11f20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
11f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12000 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
12020 63 6f 6d 6d 6f 6e 2f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 common/.........................
12040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12060 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000755.0001750.0001750.0000
12080 30 30 30 30 30 30 30 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 37 34 36 32 00 20 35 00 00 00 0000000.12627513442.017462..5...
120a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
120c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
120e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12100 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
12120 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
12140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
121a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
121c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
121e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12200 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
12220 63 6f 6d 6d 6f 6e 2f 63 6f 6e 66 69 67 2e 70 79 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 common/config.py................
12240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12260 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
12280 30 30 30 32 31 36 36 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 31 33 30 36 00 20 30 00 00 00 0002166.12627513442.021306..0...
122a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
122c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
122e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12300 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
12320 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
12340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
123a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
123c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
123e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12400 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 32 30 31 35 20 48 75 61 77 65 69 20 54 65 63 68 #.Copyright.(c).2015.Huawei.Tech
12420 6e 6f 6c 6f 67 69 65 73 20 49 6e 64 69 61 20 50 76 74 20 4c 74 64 0a 23 20 41 6c 6c 20 52 69 67 nologies.India.Pvt.Ltd.#.All.Rig
12440 68 74 73 20 52 65 73 65 72 76 65 64 2e 0a 23 0a 23 20 20 20 20 4c 69 63 65 6e 73 65 64 20 75 6e hts.Reserved..#.#....Licensed.un
12460 64 65 72 20 74 68 65 20 41 70 61 63 68 65 20 4c 69 63 65 6e 73 65 2c 20 56 65 72 73 69 6f 6e 20 der.the.Apache.License,.Version.
12480 32 2e 30 20 28 74 68 65 20 22 4c 69 63 65 6e 73 65 22 29 3b 20 79 6f 75 20 6d 61 79 0a 23 20 20 2.0.(the."License");.you.may.#..
124a0 20 20 6e 6f 74 20 75 73 65 20 74 68 69 73 20 66 69 6c 65 20 65 78 63 65 70 74 20 69 6e 20 63 6f ..not.use.this.file.except.in.co
124c0 6d 70 6c 69 61 6e 63 65 20 77 69 74 68 20 74 68 65 20 4c 69 63 65 6e 73 65 2e 20 59 6f 75 20 6d mpliance.with.the.License..You.m
124e0 61 79 20 6f 62 74 61 69 6e 0a 23 20 20 20 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 4c 69 63 ay.obtain.#....a.copy.of.the.Lic
12500 65 6e 73 65 20 61 74 0a 23 0a 23 20 20 20 20 20 20 20 20 20 68 74 74 70 3a 2f 2f 77 77 77 2e 61 ense.at.#.#.........http://www.a
12520 70 61 63 68 65 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 4c 49 43 45 4e 53 45 2d 32 2e 30 0a 23 pache.org/licenses/LICENSE-2.0.#
12540 0a 23 20 20 20 20 55 6e 6c 65 73 73 20 72 65 71 75 69 72 65 64 20 62 79 20 61 70 70 6c 69 63 61 .#....Unless.required.by.applica
12560 62 6c 65 20 6c 61 77 20 6f 72 20 61 67 72 65 65 64 20 74 6f 20 69 6e 20 77 72 69 74 69 6e 67 2c ble.law.or.agreed.to.in.writing,
12580 20 73 6f 66 74 77 61 72 65 0a 23 20 20 20 20 64 69 73 74 72 69 62 75 74 65 64 20 75 6e 64 65 72 .software.#....distributed.under
125a0 20 74 68 65 20 4c 69 63 65 6e 73 65 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 6f 6e 20 61 .the.License.is.distributed.on.a
125c0 6e 20 22 41 53 20 49 53 22 20 42 41 53 49 53 2c 20 57 49 54 48 4f 55 54 0a 23 20 20 20 20 57 41 n."AS.IS".BASIS,.WITHOUT.#....WA
125e0 52 52 41 4e 54 49 45 53 20 4f 52 20 43 4f 4e 44 49 54 49 4f 4e 53 20 4f 46 20 41 4e 59 20 4b 49 RRANTIES.OR.CONDITIONS.OF.ANY.KI
12600 4e 44 2c 20 65 69 74 68 65 72 20 65 78 70 72 65 73 73 20 6f 72 20 69 6d 70 6c 69 65 64 2e 20 53 ND,.either.express.or.implied..S
12620 65 65 20 74 68 65 0a 23 20 20 20 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 74 68 65 20 73 70 65 63 ee.the.#....License.for.the.spec
12640 69 66 69 63 20 6c 61 6e 67 75 61 67 65 20 67 6f 76 65 72 6e 69 6e 67 20 70 65 72 6d 69 73 73 69 ific.language.governing.permissi
12660 6f 6e 73 20 61 6e 64 20 6c 69 6d 69 74 61 74 69 6f 6e 73 0a 23 20 20 20 20 75 6e 64 65 72 20 74 ons.and.limitations.#....under.t
12680 68 65 20 4c 69 63 65 6e 73 65 2e 0a 0a 66 72 6f 6d 20 6f 73 6c 6f 5f 63 6f 6e 66 69 67 20 69 6d he.License...from.oslo_config.im
126a0 70 6f 72 74 20 63 66 67 0a 0a 4f 4e 4f 53 5f 44 52 49 56 45 52 5f 4f 50 54 53 20 3d 20 5b 0a 20 port.cfg..ONOS_DRIVER_OPTS.=.[..
126c0 20 20 20 63 66 67 2e 53 74 72 4f 70 74 28 27 75 72 6c 5f 70 61 74 68 27 2c 0a 20 20 20 20 20 20 ...cfg.StrOpt('url_path',.......
126e0 20 20 20 20 20 20 20 20 20 64 65 66 61 75 6c 74 3d 27 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 .........default='',............
12700 20 20 20 20 68 65 6c 70 3d 5f 28 27 4f 4e 4f 53 20 52 65 53 54 20 69 6e 74 65 72 66 61 63 65 20 ....help=_('ONOS.ReST.interface.
12720 55 52 4c 27 29 29 2c 0a 20 20 20 20 63 66 67 2e 53 74 72 4f 70 74 28 27 75 73 65 72 6e 61 6d 65 URL')),.....cfg.StrOpt('username
12740 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 65 66 61 75 6c 74 3d 27 27 2c 0a 20 20 ',................default='',...
12760 20 20 20 20 20 20 20 20 20 20 20 20 20 68 65 6c 70 3d 5f 28 27 55 73 65 72 6e 61 6d 65 20 66 6f .............help=_('Username.fo
12780 72 20 61 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 2e 27 29 29 2c 0a 20 20 20 20 63 66 67 2e 53 74 r.authentication.')),.....cfg.St
127a0 72 4f 70 74 28 27 70 61 73 73 77 6f 72 64 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rOpt('password',................
127c0 64 65 66 61 75 6c 74 3d 27 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 65 63 72 65 default='',................secre
127e0 74 3d 54 72 75 65 2c 20 20 23 20 64 6f 20 6e 6f 74 20 65 78 70 6f 73 65 20 76 61 6c 75 65 20 69 t=True,..#.do.not.expose.value.i
12800 6e 20 74 68 65 20 6c 6f 67 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 68 65 6c 70 3d 5f n.the.logs................help=_
12820 28 27 50 61 73 73 77 6f 72 64 20 66 6f 72 20 61 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 2e 27 29 ('Password.for.authentication.')
12840 29 0a 5d 0a 0a 63 66 67 2e 43 4f 4e 46 2e 72 65 67 69 73 74 65 72 5f 6f 70 74 73 28 4f 4e 4f 53 ).]..cfg.CONF.register_opts(ONOS
12860 5f 44 52 49 56 45 52 5f 4f 50 54 53 2c 20 22 6f 6e 6f 73 22 29 0a 00 00 00 00 00 00 00 00 00 00 _DRIVER_OPTS,."onos")...........
12880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
128a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
128c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
128e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
129a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
129c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
129e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12a00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
12a20 63 6f 6d 6d 6f 6e 2f 5f 5f 69 6e 69 74 5f 5f 2e 70 79 00 00 00 00 00 00 00 00 00 00 00 00 00 00 common/__init__.py..............
12a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12a60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
12a80 30 30 30 30 30 30 30 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 31 35 36 31 00 20 30 00 00 00 0000000.12627513442.021561..0...
12aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12b00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
12b20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
12b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12c00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6e 65 74 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 2f networking-onos/networking_onos/
12c20 63 6f 6d 6d 6f 6e 2f 75 74 69 6c 73 2e 70 79 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 common/utils.py.................
12c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12c60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
12c80 30 30 30 33 31 33 37 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 31 32 30 30 00 20 30 00 00 00 0003137.12627513442.021200..0...
12ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12d00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
12d20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
12d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12e00 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 32 30 31 35 20 48 75 61 77 65 69 20 54 65 63 68 #.Copyright.(c).2015.Huawei.Tech
12e20 6e 6f 6c 6f 67 69 65 73 20 49 6e 64 69 61 20 50 76 74 20 4c 74 64 0a 23 20 41 6c 6c 20 52 69 67 nologies.India.Pvt.Ltd.#.All.Rig
12e40 68 74 73 20 52 65 73 65 72 76 65 64 2e 0a 23 0a 23 20 20 20 20 4c 69 63 65 6e 73 65 64 20 75 6e hts.Reserved..#.#....Licensed.un
12e60 64 65 72 20 74 68 65 20 41 70 61 63 68 65 20 4c 69 63 65 6e 73 65 2c 20 56 65 72 73 69 6f 6e 20 der.the.Apache.License,.Version.
12e80 32 2e 30 20 28 74 68 65 20 22 4c 69 63 65 6e 73 65 22 29 3b 20 79 6f 75 20 6d 61 79 0a 23 20 20 2.0.(the."License");.you.may.#..
12ea0 20 20 6e 6f 74 20 75 73 65 20 74 68 69 73 20 66 69 6c 65 20 65 78 63 65 70 74 20 69 6e 20 63 6f ..not.use.this.file.except.in.co
12ec0 6d 70 6c 69 61 6e 63 65 20 77 69 74 68 20 74 68 65 20 4c 69 63 65 6e 73 65 2e 20 59 6f 75 20 6d mpliance.with.the.License..You.m
12ee0 61 79 20 6f 62 74 61 69 6e 0a 23 20 20 20 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 4c 69 63 ay.obtain.#....a.copy.of.the.Lic
12f00 65 6e 73 65 20 61 74 0a 23 0a 23 20 20 20 20 20 20 20 20 20 68 74 74 70 3a 2f 2f 77 77 77 2e 61 ense.at.#.#.........http://www.a
12f20 70 61 63 68 65 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 4c 49 43 45 4e 53 45 2d 32 2e 30 0a 23 pache.org/licenses/LICENSE-2.0.#
12f40 0a 23 20 20 20 20 55 6e 6c 65 73 73 20 72 65 71 75 69 72 65 64 20 62 79 20 61 70 70 6c 69 63 61 .#....Unless.required.by.applica
12f60 62 6c 65 20 6c 61 77 20 6f 72 20 61 67 72 65 65 64 20 74 6f 20 69 6e 20 77 72 69 74 69 6e 67 2c ble.law.or.agreed.to.in.writing,
12f80 20 73 6f 66 74 77 61 72 65 0a 23 20 20 20 20 64 69 73 74 72 69 62 75 74 65 64 20 75 6e 64 65 72 .software.#....distributed.under
12fa0 20 74 68 65 20 4c 69 63 65 6e 73 65 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 6f 6e 20 61 .the.License.is.distributed.on.a
12fc0 6e 20 22 41 53 20 49 53 22 20 42 41 53 49 53 2c 20 57 49 54 48 4f 55 54 0a 23 20 20 20 20 57 41 n."AS.IS".BASIS,.WITHOUT.#....WA
12fe0 52 52 41 4e 54 49 45 53 20 4f 52 20 43 4f 4e 44 49 54 49 4f 4e 53 20 4f 46 20 41 4e 59 20 4b 49 RRANTIES.OR.CONDITIONS.OF.ANY.KI
13000 4e 44 2c 20 65 69 74 68 65 72 20 65 78 70 72 65 73 73 20 6f 72 20 69 6d 70 6c 69 65 64 2e 20 53 ND,.either.express.or.implied..S
13020 65 65 20 74 68 65 0a 23 20 20 20 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 74 68 65 20 73 70 65 63 ee.the.#....License.for.the.spec
13040 69 66 69 63 20 6c 61 6e 67 75 61 67 65 20 67 6f 76 65 72 6e 69 6e 67 20 70 65 72 6d 69 73 73 69 ific.language.governing.permissi
13060 6f 6e 73 20 61 6e 64 20 6c 69 6d 69 74 61 74 69 6f 6e 73 0a 23 20 20 20 20 75 6e 64 65 72 20 74 ons.and.limitations.#....under.t
13080 68 65 20 4c 69 63 65 6e 73 65 2e 0a 0a 66 72 6f 6d 20 6f 73 6c 6f 5f 6c 6f 67 20 69 6d 70 6f 72 he.License...from.oslo_log.impor
130a0 74 20 6c 6f 67 20 61 73 20 6c 6f 67 67 69 6e 67 0a 66 72 6f 6d 20 6f 73 6c 6f 5f 73 65 72 69 61 t.log.as.logging.from.oslo_seria
130c0 6c 69 7a 61 74 69 6f 6e 20 69 6d 70 6f 72 74 20 6a 73 6f 6e 75 74 69 6c 73 0a 69 6d 70 6f 72 74 lization.import.jsonutils.import
130e0 20 72 65 71 75 65 73 74 73 0a 0a 0a 4c 4f 47 20 3d 20 6c 6f 67 67 69 6e 67 2e 67 65 74 4c 6f 67 .requests...LOG.=.logging.getLog
13100 67 65 72 28 5f 5f 6e 61 6d 65 5f 5f 29 0a 0a 0a 64 65 66 20 73 65 6e 64 5f 6d 73 67 28 6f 6e 6f ger(__name__)...def.send_msg(ono
13120 73 5f 70 61 74 68 2c 20 6f 6e 6f 73 5f 61 75 74 68 2c 20 6d 73 67 5f 74 79 70 65 2c 20 65 6e 74 s_path,.onos_auth,.msg_type,.ent
13140 69 74 79 5f 70 61 74 68 2c 20 65 6e 74 69 74 79 3d 4e 6f 6e 65 29 3a 0a 20 20 20 20 22 22 22 53 ity_path,.entity=None):....."""S
13160 65 6e 64 20 6d 65 73 73 61 67 65 20 74 6f 20 74 68 65 20 4f 4e 4f 53 20 63 6f 6e 74 72 6f 6c 6c end.message.to.the.ONOS.controll
13180 65 72 2e 22 22 22 0a 0a 20 20 20 20 70 61 74 68 20 3d 20 27 2f 27 2e 6a 6f 69 6e 28 5b 6f 6e 6f er."""......path.=.'/'.join([ono
131a0 73 5f 70 61 74 68 2c 20 65 6e 74 69 74 79 5f 70 61 74 68 5d 29 0a 20 20 20 20 68 64 72 20 3d 20 s_path,.entity_path]).....hdr.=.
131c0 7b 27 43 6f 6e 74 65 6e 74 2d 54 79 70 65 27 3a 20 27 61 70 70 6c 69 63 61 74 69 6f 6e 2f 6a 73 {'Content-Type':.'application/js
131e0 6f 6e 27 7d 0a 20 20 20 20 62 6f 64 79 20 3d 20 6a 73 6f 6e 75 74 69 6c 73 2e 64 75 6d 70 73 28 on'}.....body.=.jsonutils.dumps(
13200 65 6e 74 69 74 79 2c 20 69 6e 64 65 6e 74 3d 32 29 20 69 66 20 65 6e 74 69 74 79 20 65 6c 73 65 entity,.indent=2).if.entity.else
13220 20 4e 6f 6e 65 0a 20 20 20 20 4c 4f 47 2e 64 65 62 75 67 28 22 53 65 6e 64 69 6e 67 20 4d 53 47 .None.....LOG.debug("Sending.MSG
13240 5f 54 59 50 45 20 28 25 28 6d 73 67 29 73 29 20 55 52 4c 20 28 25 28 70 61 74 68 29 73 29 20 22 _TYPE.(%(msg)s).URL.(%(path)s)."
13260 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 4f 42 4a 45 43 54 20 28 25 28 65 6e 74 69 74 79 ..............."OBJECT.(%(entity
13280 29 73 29 20 42 4f 44 59 20 28 25 28 62 6f 64 79 29 73 29 22 2c 0a 20 20 20 20 20 20 20 20 20 20 )s).BODY.(%(body)s)",...........
132a0 20 20 20 20 7b 27 6d 73 67 27 3a 20 6d 73 67 5f 74 79 70 65 2c 20 27 70 61 74 68 27 3a 20 70 61 ....{'msg':.msg_type,.'path':.pa
132c0 74 68 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 65 6e 74 69 74 79 27 3a 20 65 6e 74 th,................'entity':.ent
132e0 69 74 79 2c 20 27 62 6f 64 79 27 3a 20 62 6f 64 79 7d 29 0a 20 20 20 20 72 65 71 20 3d 20 72 65 ity,.'body':.body}).....req.=.re
13300 71 75 65 73 74 73 2e 72 65 71 75 65 73 74 28 6d 65 74 68 6f 64 3d 6d 73 67 5f 74 79 70 65 2c 20 quests.request(method=msg_type,.
13320 75 72 6c 3d 70 61 74 68 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 url=path,.......................
13340 20 20 20 20 20 68 65 61 64 65 72 73 3d 68 64 72 2c 20 64 61 74 61 3d 62 6f 64 79 2c 0a 20 20 20 .....headers=hdr,.data=body,....
13360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 75 74 68 3d 6f 6e 6f ........................auth=ono
13380 73 5f 61 75 74 68 29 0a 20 20 20 20 23 20 4c 65 74 27 73 20 72 61 69 73 65 20 76 6f 69 63 65 20 s_auth).....#.Let's.raise.voice.
133a0 66 6f 72 20 61 6e 20 65 72 72 6f 72 0a 20 20 20 20 72 65 71 2e 72 61 69 73 65 5f 66 6f 72 5f 73 for.an.error.....req.raise_for_s
133c0 74 61 74 75 73 28 29 0a 0a 0a 64 65 66 20 73 61 66 65 5f 64 65 6c 65 74 65 5f 66 72 6f 6d 5f 64 tatus()...def.safe_delete_from_d
133e0 69 63 74 28 64 69 63 74 2c 20 6b 65 79 73 29 3a 0a 20 20 20 20 22 22 22 49 67 6e 6f 72 65 20 6b ict(dict,.keys):....."""Ignore.k
13400 65 79 20 65 72 72 6f 72 73 20 77 68 65 6e 20 64 65 6c 65 74 69 6e 67 20 66 72 6f 6d 20 61 20 64 ey.errors.when.deleting.from.a.d
13420 69 63 74 69 6f 6e 61 72 79 2e 22 22 22 0a 20 20 20 20 66 6f 72 20 6b 65 79 20 69 6e 20 6b 65 79 ictionary.""".....for.key.in.key
13440 73 3a 0a 20 20 20 20 20 20 20 20 64 69 63 74 2e 70 6f 70 28 6b 65 79 2c 20 4e 6f 6e 65 29 0a 00 s:.........dict.pop(key,.None)..
13460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
134a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
134c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
134e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
135a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
135c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
135e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13600 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 69 6e 73 74 61 6c 6c 5f 64 72 69 76 65 72 2e 73 networking-onos/install_driver.s
13620 68 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 h...............................
13640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13660 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000755.0001750.0001750.0000
13680 30 30 30 30 33 37 30 00 31 32 36 32 37 35 34 34 34 34 36 00 30 31 36 33 33 35 00 20 30 00 00 00 0000370.12627544446.016335..0...
136a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
136c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
136e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13700 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
13720 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
13740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
137a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
137c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
137e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13800 23 21 2f 62 69 6e 2f 62 61 73 68 0a 0a 77 68 69 63 68 20 6e 65 75 74 72 6f 6e 0a 23 63 68 65 63 #!/bin/bash..which.neutron.#chec
13820 6b 20 6e 65 75 74 72 6f 6e 20 69 6e 73 74 61 6c 6c 20 6f 6e 20 6d 61 63 68 69 6e 65 0a 69 66 20 k.neutron.install.on.machine.if.
13840 5b 20 24 3f 20 21 3d 20 30 20 5d 3b 20 74 68 65 6e 0a 20 20 20 20 65 63 68 6f 20 22 50 6c 65 61 [.$?.!=.0.];.then.....echo."Plea
13860 73 65 20 69 6e 73 74 61 6c 6c 20 6f 70 65 6e 73 74 61 63 6b 20 6e 65 75 74 72 6f 6e 20 62 65 66 se.install.openstack.neutron.bef
13880 6f 72 65 20 69 6e 73 74 61 6c 6c 20 6f 6e 6f 73 20 64 72 69 76 65 72 22 0a 20 20 20 20 65 78 69 ore.install.onos.driver".....exi
138a0 74 0a 66 69 0a 65 78 70 6f 72 74 20 50 42 52 5f 56 45 52 53 49 4f 4e 3d 31 2e 30 2e 30 0a 63 64 t.fi.export.PBR_VERSION=1.0.0.cd
138c0 20 2f 6f 70 74 2f 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 0a 2f 75 73 72 2f 62 69 6e 2f ./opt/networking-onos/./usr/bin/
138e0 70 79 74 68 6f 6e 20 73 65 74 75 70 2e 70 79 20 69 6e 73 74 61 6c 6c 0a 00 00 00 00 00 00 00 00 python.setup.py.install.........
13900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
139a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
139c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
139e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13a00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 43 4f 4e 54 52 49 42 55 54 49 4e 47 2e 72 73 74 networking-onos/CONTRIBUTING.rst
13a20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13a60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
13a80 30 30 30 31 30 37 30 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 35 34 30 34 00 20 30 00 00 00 0001070.12627513442.015404..0...
13aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13b00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
13b20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
13b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13c00 49 66 20 79 6f 75 20 77 6f 75 6c 64 20 6c 69 6b 65 20 74 6f 20 63 6f 6e 74 72 69 62 75 74 65 20 If.you.would.like.to.contribute.
13c20 74 6f 20 74 68 65 20 64 65 76 65 6c 6f 70 6d 65 6e 74 20 6f 66 20 4f 70 65 6e 53 74 61 63 6b 2c to.the.development.of.OpenStack,
13c40 0a 79 6f 75 20 6d 75 73 74 20 66 6f 6c 6c 6f 77 20 74 68 65 20 73 74 65 70 73 20 64 6f 63 75 6d .you.must.follow.the.steps.docum
13c60 65 6e 74 65 64 20 61 74 3a 0a 0a 20 20 20 68 74 74 70 3a 2f 2f 64 6f 63 73 2e 6f 70 65 6e 73 74 ented.at:.....http://docs.openst
13c80 61 63 6b 2e 6f 72 67 2f 69 6e 66 72 61 2f 6d 61 6e 75 61 6c 2f 64 65 76 65 6c 6f 70 65 72 73 2e ack.org/infra/manual/developers.
13ca0 68 74 6d 6c 23 64 65 76 65 6c 6f 70 6d 65 6e 74 2d 77 6f 72 6b 66 6c 6f 77 0a 0a 4f 6e 63 65 20 html#development-workflow..Once.
13cc0 74 68 6f 73 65 20 73 74 65 70 73 20 68 61 76 65 20 62 65 65 6e 20 63 6f 6d 70 6c 65 74 65 64 2c those.steps.have.been.completed,
13ce0 20 63 68 61 6e 67 65 73 20 74 6f 20 4f 70 65 6e 53 74 61 63 6b 0a 73 68 6f 75 6c 64 20 62 65 20 .changes.to.OpenStack.should.be.
13d00 73 75 62 6d 69 74 74 65 64 20 66 6f 72 20 72 65 76 69 65 77 20 76 69 61 20 74 68 65 20 47 65 72 submitted.for.review.via.the.Ger
13d20 72 69 74 20 74 6f 6f 6c 2c 20 66 6f 6c 6c 6f 77 69 6e 67 0a 74 68 65 20 77 6f 72 6b 66 6c 6f 77 rit.tool,.following.the.workflow
13d40 20 64 6f 63 75 6d 65 6e 74 65 64 20 61 74 3a 0a 0a 20 20 20 68 74 74 70 3a 2f 2f 64 6f 63 73 2e .documented.at:.....http://docs.
13d60 6f 70 65 6e 73 74 61 63 6b 2e 6f 72 67 2f 69 6e 66 72 61 2f 6d 61 6e 75 61 6c 2f 64 65 76 65 6c openstack.org/infra/manual/devel
13d80 6f 70 65 72 73 2e 68 74 6d 6c 23 64 65 76 65 6c 6f 70 6d 65 6e 74 2d 77 6f 72 6b 66 6c 6f 77 0a opers.html#development-workflow.
13da0 0a 50 75 6c 6c 20 72 65 71 75 65 73 74 73 20 73 75 62 6d 69 74 74 65 64 20 74 68 72 6f 75 67 68 .Pull.requests.submitted.through
13dc0 20 47 69 74 48 75 62 20 77 69 6c 6c 20 62 65 20 69 67 6e 6f 72 65 64 2e 0a 0a 42 75 67 73 20 73 .GitHub.will.be.ignored...Bugs.s
13de0 68 6f 75 6c 64 20 62 65 20 66 69 6c 65 64 20 6f 6e 20 4c 61 75 6e 63 68 70 61 64 2c 20 6e 6f 74 hould.be.filed.on.Launchpad,.not
13e00 20 47 69 74 48 75 62 3a 0a 0a 20 20 20 68 74 74 70 73 3a 2f 2f 62 75 67 73 2e 6c 61 75 6e 63 68 .GitHub:.....https://bugs.launch
13e20 70 61 64 2e 6e 65 74 2f 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 0a 00 00 00 00 00 00 00 00 pad.net/networking-onos.........
13e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13e60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13e80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13f00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13f20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14000 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 65 74 63 2f 00 00 00 00 00 00 00 00 00 00 00 00 networking-onos/etc/............
14020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14060 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000755.0001750.0001750.0000
14080 30 30 30 30 30 30 30 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 33 35 32 30 00 20 35 00 00 00 0000000.12627513442.013520..5...
140a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
140c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
140e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14100 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
14120 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
14140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
141a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
141c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
141e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14200 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 65 74 63 2f 63 6f 6e 66 5f 6f 6e 6f 73 2e 69 6e networking-onos/etc/conf_onos.in
14220 69 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 i...............................
14240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14260 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
14280 30 30 30 30 34 33 35 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 36 32 30 36 00 20 30 00 00 00 0000435.12627513442.016206..0...
142a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
142c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
142e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14300 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
14320 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
14340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
143a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
143c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
143e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14400 23 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 4f 4e 4f 53 20 #Configuration.options.for.ONOS.
14420 64 72 69 76 65 72 0a 0a 5b 6f 6e 6f 73 5d 0a 23 20 28 53 74 72 4f 70 74 29 20 4f 4e 4f 53 20 52 driver..[onos].#.(StrOpt).ONOS.R
14440 65 53 54 20 69 6e 74 65 72 66 61 63 65 20 55 52 4c 2e 20 54 68 69 73 20 69 73 20 61 20 6d 61 6e eST.interface.URL..This.is.a.man
14460 64 61 74 6f 72 79 20 66 69 65 6c 64 2e 0a 23 20 75 72 6c 5f 70 61 74 68 20 3d 0a 0a 23 20 28 53 datory.field..#.url_path.=..#.(S
14480 74 72 4f 70 74 29 20 55 73 65 72 6e 61 6d 65 20 66 6f 72 20 61 75 74 68 65 6e 74 69 63 61 74 69 trOpt).Username.for.authenticati
144a0 6f 6e 2e 20 54 68 69 73 20 69 73 20 61 20 6d 61 6e 64 61 74 6f 72 79 20 66 69 65 6c 64 2e 0a 23 on..This.is.a.mandatory.field..#
144c0 20 75 73 65 72 6e 61 6d 65 20 3d 0a 0a 23 20 28 53 74 72 4f 70 74 29 20 50 61 73 73 77 6f 72 64 .username.=..#.(StrOpt).Password
144e0 20 66 6f 72 20 61 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 2e 20 54 68 69 73 20 69 73 20 61 20 6d .for.authentication..This.is.a.m
14500 61 6e 64 61 74 6f 72 79 20 66 69 65 6c 64 2e 0a 23 20 70 61 73 73 77 6f 72 64 20 3d 0a 00 00 00 andatory.field..#.password.=....
14520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
145a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
145c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
145e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14600 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 74 65 73 74 2d 72 65 71 75 69 72 65 6d 65 6e 74 networking-onos/test-requirement
14620 73 2e 74 78 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 s.txt...........................
14640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14660 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
14680 30 30 30 30 36 36 37 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 37 32 31 37 00 20 30 00 00 00 0000667.12627513442.017217..0...
146a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
146c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
146e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14700 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
14720 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
14740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
147a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
147c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
147e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14800 23 20 54 68 65 20 6f 72 64 65 72 20 6f 66 20 70 61 63 6b 61 67 65 73 20 69 73 20 73 69 67 6e 69 #.The.order.of.packages.is.signi
14820 66 69 63 61 6e 74 2c 20 62 65 63 61 75 73 65 20 70 69 70 20 70 72 6f 63 65 73 73 65 73 20 74 68 ficant,.because.pip.processes.th
14840 65 6d 20 69 6e 20 74 68 65 20 6f 72 64 65 72 0a 23 20 6f 66 20 61 70 70 65 61 72 61 6e 63 65 2e em.in.the.order.#.of.appearance.
14860 20 43 68 61 6e 67 69 6e 67 20 74 68 65 20 6f 72 64 65 72 20 68 61 73 20 61 6e 20 69 6d 70 61 63 .Changing.the.order.has.an.impac
14880 74 20 6f 6e 20 74 68 65 20 6f 76 65 72 61 6c 6c 20 69 6e 74 65 67 72 61 74 69 6f 6e 0a 23 20 70 t.on.the.overall.integration.#.p
148a0 72 6f 63 65 73 73 2c 20 77 68 69 63 68 20 6d 61 79 20 63 61 75 73 65 20 77 65 64 67 65 73 20 69 rocess,.which.may.cause.wedges.i
148c0 6e 20 74 68 65 20 67 61 74 65 20 6c 61 74 65 72 2e 0a 0a 68 61 63 6b 69 6e 67 3c 30 2e 31 31 2c n.the.gate.later...hacking<0.11,
148e0 3e 3d 30 2e 31 30 2e 30 0a 0a 63 6f 76 65 72 61 67 65 3e 3d 33 2e 36 0a 70 79 74 68 6f 6e 2d 73 >=0.10.0..coverage>=3.6.python-s
14900 75 62 75 6e 69 74 3e 3d 30 2e 30 2e 31 38 0a 73 70 68 69 6e 78 21 3d 31 2e 32 2e 30 2c 21 3d 31 ubunit>=0.0.18.sphinx!=1.2.0,!=1
14920 2e 33 62 31 2c 3c 31 2e 33 2c 3e 3d 31 2e 31 2e 32 0a 6f 73 6c 6f 73 70 68 69 6e 78 3e 3d 32 2e .3b1,<1.3,>=1.1.2.oslosphinx>=2.
14940 35 2e 30 20 23 20 41 70 61 63 68 65 2d 32 2e 30 0a 6f 73 6c 6f 74 65 73 74 3e 3d 31 2e 31 30 2e 5.0.#.Apache-2.0.oslotest>=1.10.
14960 30 20 23 20 41 70 61 63 68 65 2d 32 2e 30 0a 74 65 73 74 72 65 70 6f 73 69 74 6f 72 79 3e 3d 30 0.#.Apache-2.0.testrepository>=0
14980 2e 30 2e 31 38 0a 74 65 73 74 73 63 65 6e 61 72 69 6f 73 3e 3d 30 2e 34 0a 57 65 62 54 65 73 74 .0.18.testscenarios>=0.4.WebTest
149a0 3e 3d 32 2e 30 0a 74 65 73 74 74 6f 6f 6c 73 3e 3d 31 2e 34 2e 30 0a 00 00 00 00 00 00 00 00 00 >=2.0.testtools>=1.4.0..........
149c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
149e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14a00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 62 61 62 65 6c 2e 63 66 67 00 00 00 00 00 00 00 networking-onos/babel.cfg.......
14a20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14a60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
14a80 30 30 30 30 30 32 31 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 34 34 36 34 00 20 30 00 00 00 0000021.12627513442.014464..0...
14aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14b00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
14b20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
14b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14c00 5b 70 79 74 68 6f 6e 3a 20 2a 2a 2e 70 79 5d 0a 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [python:.**.py].................
14c20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14c60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14c80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14e00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 4d 41 4e 49 46 45 53 54 2e 69 6e 00 00 00 00 00 networking-onos/MANIFEST.in.....
14e20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14e60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
14e80 30 30 30 30 32 30 32 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 34 34 37 35 00 20 30 00 00 00 0000202.12627513442.014475..0...
14ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14f00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
14f20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
14f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15000 69 6e 63 6c 75 64 65 20 41 55 54 48 4f 52 53 0a 69 6e 63 6c 75 64 65 20 52 45 41 44 4d 45 2e 72 include.AUTHORS.include.README.r
15020 73 74 0a 69 6e 63 6c 75 64 65 20 43 68 61 6e 67 65 4c 6f 67 0a 69 6e 63 6c 75 64 65 20 4c 49 43 st.include.ChangeLog.include.LIC
15040 45 4e 53 45 0a 0a 65 78 63 6c 75 64 65 20 2e 67 69 74 69 67 6e 6f 72 65 0a 65 78 63 6c 75 64 65 ENSE..exclude..gitignore.exclude
15060 20 2e 67 69 74 72 65 76 69 65 77 0a 0a 67 6c 6f 62 61 6c 2d 65 78 63 6c 75 64 65 20 2a 2e 70 79 ..gitreview..global-exclude.*.py
15080 63 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c...............................
150a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
150c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
150e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
151a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
151c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
151e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15200 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 4c 49 43 45 4e 53 45 00 00 00 00 00 00 00 00 00 networking-onos/LICENSE.........
15220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15260 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
15280 30 30 32 33 36 33 37 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 33 37 36 35 00 20 30 00 00 00 0023637.12627513442.013765..0...
152a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
152c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
152e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15300 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
15320 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
15340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
153a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
153c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
153e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15400 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
15420 20 20 41 70 61 63 68 65 20 4c 69 63 65 6e 73 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..Apache.License................
15440 20 20 20 20 20 20 20 20 20 20 20 20 56 65 72 73 69 6f 6e 20 32 2e 30 2c 20 4a 61 6e 75 61 72 79 ............Version.2.0,.January
15460 20 32 30 30 34 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 68 74 .2004.........................ht
15480 74 70 3a 2f 2f 77 77 77 2e 61 70 61 63 68 65 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 0a 0a 20 tp://www.apache.org/licenses/...
154a0 20 20 54 45 52 4d 53 20 41 4e 44 20 43 4f 4e 44 49 54 49 4f 4e 53 20 46 4f 52 20 55 53 45 2c 20 ..TERMS.AND.CONDITIONS.FOR.USE,.
154c0 52 45 50 52 4f 44 55 43 54 49 4f 4e 2c 20 41 4e 44 20 44 49 53 54 52 49 42 55 54 49 4f 4e 0a 0a REPRODUCTION,.AND.DISTRIBUTION..
154e0 20 20 20 31 2e 20 44 65 66 69 6e 69 74 69 6f 6e 73 2e 0a 0a 20 20 20 20 20 20 22 4c 69 63 65 6e ...1..Definitions........."Licen
15500 73 65 22 20 73 68 61 6c 6c 20 6d 65 61 6e 20 74 68 65 20 74 65 72 6d 73 20 61 6e 64 20 63 6f 6e se".shall.mean.the.terms.and.con
15520 64 69 74 69 6f 6e 73 20 66 6f 72 20 75 73 65 2c 20 72 65 70 72 6f 64 75 63 74 69 6f 6e 2c 0a 20 ditions.for.use,.reproduction,..
15540 20 20 20 20 20 61 6e 64 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 61 73 20 64 65 66 69 6e 65 64 .....and.distribution.as.defined
15560 20 62 79 20 53 65 63 74 69 6f 6e 73 20 31 20 74 68 72 6f 75 67 68 20 39 20 6f 66 20 74 68 69 73 .by.Sections.1.through.9.of.this
15580 20 64 6f 63 75 6d 65 6e 74 2e 0a 0a 20 20 20 20 20 20 22 4c 69 63 65 6e 73 6f 72 22 20 73 68 61 .document........."Licensor".sha
155a0 6c 6c 20 6d 65 61 6e 20 74 68 65 20 63 6f 70 79 72 69 67 68 74 20 6f 77 6e 65 72 20 6f 72 20 65 ll.mean.the.copyright.owner.or.e
155c0 6e 74 69 74 79 20 61 75 74 68 6f 72 69 7a 65 64 20 62 79 0a 20 20 20 20 20 20 74 68 65 20 63 6f ntity.authorized.by.......the.co
155e0 70 79 72 69 67 68 74 20 6f 77 6e 65 72 20 74 68 61 74 20 69 73 20 67 72 61 6e 74 69 6e 67 20 74 pyright.owner.that.is.granting.t
15600 68 65 20 4c 69 63 65 6e 73 65 2e 0a 0a 20 20 20 20 20 20 22 4c 65 67 61 6c 20 45 6e 74 69 74 79 he.License........."Legal.Entity
15620 22 20 73 68 61 6c 6c 20 6d 65 61 6e 20 74 68 65 20 75 6e 69 6f 6e 20 6f 66 20 74 68 65 20 61 63 ".shall.mean.the.union.of.the.ac
15640 74 69 6e 67 20 65 6e 74 69 74 79 20 61 6e 64 20 61 6c 6c 0a 20 20 20 20 20 20 6f 74 68 65 72 20 ting.entity.and.all.......other.
15660 65 6e 74 69 74 69 65 73 20 74 68 61 74 20 63 6f 6e 74 72 6f 6c 2c 20 61 72 65 20 63 6f 6e 74 72 entities.that.control,.are.contr
15680 6f 6c 6c 65 64 20 62 79 2c 20 6f 72 20 61 72 65 20 75 6e 64 65 72 20 63 6f 6d 6d 6f 6e 0a 20 20 olled.by,.or.are.under.common...
156a0 20 20 20 20 63 6f 6e 74 72 6f 6c 20 77 69 74 68 20 74 68 61 74 20 65 6e 74 69 74 79 2e 20 46 6f ....control.with.that.entity..Fo
156c0 72 20 74 68 65 20 70 75 72 70 6f 73 65 73 20 6f 66 20 74 68 69 73 20 64 65 66 69 6e 69 74 69 6f r.the.purposes.of.this.definitio
156e0 6e 2c 0a 20 20 20 20 20 20 22 63 6f 6e 74 72 6f 6c 22 20 6d 65 61 6e 73 20 28 69 29 20 74 68 65 n,......."control".means.(i).the
15700 20 70 6f 77 65 72 2c 20 64 69 72 65 63 74 20 6f 72 20 69 6e 64 69 72 65 63 74 2c 20 74 6f 20 63 .power,.direct.or.indirect,.to.c
15720 61 75 73 65 20 74 68 65 0a 20 20 20 20 20 20 64 69 72 65 63 74 69 6f 6e 20 6f 72 20 6d 61 6e 61 ause.the.......direction.or.mana
15740 67 65 6d 65 6e 74 20 6f 66 20 73 75 63 68 20 65 6e 74 69 74 79 2c 20 77 68 65 74 68 65 72 20 62 gement.of.such.entity,.whether.b
15760 79 20 63 6f 6e 74 72 61 63 74 20 6f 72 0a 20 20 20 20 20 20 6f 74 68 65 72 77 69 73 65 2c 20 6f y.contract.or.......otherwise,.o
15780 72 20 28 69 69 29 20 6f 77 6e 65 72 73 68 69 70 20 6f 66 20 66 69 66 74 79 20 70 65 72 63 65 6e r.(ii).ownership.of.fifty.percen
157a0 74 20 28 35 30 25 29 20 6f 72 20 6d 6f 72 65 20 6f 66 20 74 68 65 0a 20 20 20 20 20 20 6f 75 74 t.(50%).or.more.of.the.......out
157c0 73 74 61 6e 64 69 6e 67 20 73 68 61 72 65 73 2c 20 6f 72 20 28 69 69 69 29 20 62 65 6e 65 66 69 standing.shares,.or.(iii).benefi
157e0 63 69 61 6c 20 6f 77 6e 65 72 73 68 69 70 20 6f 66 20 73 75 63 68 20 65 6e 74 69 74 79 2e 0a 0a cial.ownership.of.such.entity...
15800 20 20 20 20 20 20 22 59 6f 75 22 20 28 6f 72 20 22 59 6f 75 72 22 29 20 73 68 61 6c 6c 20 6d 65 ......"You".(or."Your").shall.me
15820 61 6e 20 61 6e 20 69 6e 64 69 76 69 64 75 61 6c 20 6f 72 20 4c 65 67 61 6c 20 45 6e 74 69 74 79 an.an.individual.or.Legal.Entity
15840 0a 20 20 20 20 20 20 65 78 65 72 63 69 73 69 6e 67 20 70 65 72 6d 69 73 73 69 6f 6e 73 20 67 72 .......exercising.permissions.gr
15860 61 6e 74 65 64 20 62 79 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 0a 0a 20 20 20 20 20 20 22 53 anted.by.this.License........."S
15880 6f 75 72 63 65 22 20 66 6f 72 6d 20 73 68 61 6c 6c 20 6d 65 61 6e 20 74 68 65 20 70 72 65 66 65 ource".form.shall.mean.the.prefe
158a0 72 72 65 64 20 66 6f 72 6d 20 66 6f 72 20 6d 61 6b 69 6e 67 20 6d 6f 64 69 66 69 63 61 74 69 6f rred.form.for.making.modificatio
158c0 6e 73 2c 0a 20 20 20 20 20 20 69 6e 63 6c 75 64 69 6e 67 20 62 75 74 20 6e 6f 74 20 6c 69 6d 69 ns,.......including.but.not.limi
158e0 74 65 64 20 74 6f 20 73 6f 66 74 77 61 72 65 20 73 6f 75 72 63 65 20 63 6f 64 65 2c 20 64 6f 63 ted.to.software.source.code,.doc
15900 75 6d 65 6e 74 61 74 69 6f 6e 0a 20 20 20 20 20 20 73 6f 75 72 63 65 2c 20 61 6e 64 20 63 6f 6e umentation.......source,.and.con
15920 66 69 67 75 72 61 74 69 6f 6e 20 66 69 6c 65 73 2e 0a 0a 20 20 20 20 20 20 22 4f 62 6a 65 63 74 figuration.files........."Object
15940 22 20 66 6f 72 6d 20 73 68 61 6c 6c 20 6d 65 61 6e 20 61 6e 79 20 66 6f 72 6d 20 72 65 73 75 6c ".form.shall.mean.any.form.resul
15960 74 69 6e 67 20 66 72 6f 6d 20 6d 65 63 68 61 6e 69 63 61 6c 0a 20 20 20 20 20 20 74 72 61 6e 73 ting.from.mechanical.......trans
15980 66 6f 72 6d 61 74 69 6f 6e 20 6f 72 20 74 72 61 6e 73 6c 61 74 69 6f 6e 20 6f 66 20 61 20 53 6f formation.or.translation.of.a.So
159a0 75 72 63 65 20 66 6f 72 6d 2c 20 69 6e 63 6c 75 64 69 6e 67 20 62 75 74 0a 20 20 20 20 20 20 6e urce.form,.including.but.......n
159c0 6f 74 20 6c 69 6d 69 74 65 64 20 74 6f 20 63 6f 6d 70 69 6c 65 64 20 6f 62 6a 65 63 74 20 63 6f ot.limited.to.compiled.object.co
159e0 64 65 2c 20 67 65 6e 65 72 61 74 65 64 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2c 0a 20 20 20 de,.generated.documentation,....
15a00 20 20 20 61 6e 64 20 63 6f 6e 76 65 72 73 69 6f 6e 73 20 74 6f 20 6f 74 68 65 72 20 6d 65 64 69 ...and.conversions.to.other.medi
15a20 61 20 74 79 70 65 73 2e 0a 0a 20 20 20 20 20 20 22 57 6f 72 6b 22 20 73 68 61 6c 6c 20 6d 65 61 a.types........."Work".shall.mea
15a40 6e 20 74 68 65 20 77 6f 72 6b 20 6f 66 20 61 75 74 68 6f 72 73 68 69 70 2c 20 77 68 65 74 68 65 n.the.work.of.authorship,.whethe
15a60 72 20 69 6e 20 53 6f 75 72 63 65 20 6f 72 0a 20 20 20 20 20 20 4f 62 6a 65 63 74 20 66 6f 72 6d r.in.Source.or.......Object.form
15a80 2c 20 6d 61 64 65 20 61 76 61 69 6c 61 62 6c 65 20 75 6e 64 65 72 20 74 68 65 20 4c 69 63 65 6e ,.made.available.under.the.Licen
15aa0 73 65 2c 20 61 73 20 69 6e 64 69 63 61 74 65 64 20 62 79 20 61 0a 20 20 20 20 20 20 63 6f 70 79 se,.as.indicated.by.a.......copy
15ac0 72 69 67 68 74 20 6e 6f 74 69 63 65 20 74 68 61 74 20 69 73 20 69 6e 63 6c 75 64 65 64 20 69 6e right.notice.that.is.included.in
15ae0 20 6f 72 20 61 74 74 61 63 68 65 64 20 74 6f 20 74 68 65 20 77 6f 72 6b 0a 20 20 20 20 20 20 28 .or.attached.to.the.work.......(
15b00 61 6e 20 65 78 61 6d 70 6c 65 20 69 73 20 70 72 6f 76 69 64 65 64 20 69 6e 20 74 68 65 20 41 70 an.example.is.provided.in.the.Ap
15b20 70 65 6e 64 69 78 20 62 65 6c 6f 77 29 2e 0a 0a 20 20 20 20 20 20 22 44 65 72 69 76 61 74 69 76 pendix.below)........."Derivativ
15b40 65 20 57 6f 72 6b 73 22 20 73 68 61 6c 6c 20 6d 65 61 6e 20 61 6e 79 20 77 6f 72 6b 2c 20 77 68 e.Works".shall.mean.any.work,.wh
15b60 65 74 68 65 72 20 69 6e 20 53 6f 75 72 63 65 20 6f 72 20 4f 62 6a 65 63 74 0a 20 20 20 20 20 20 ether.in.Source.or.Object.......
15b80 66 6f 72 6d 2c 20 74 68 61 74 20 69 73 20 62 61 73 65 64 20 6f 6e 20 28 6f 72 20 64 65 72 69 76 form,.that.is.based.on.(or.deriv
15ba0 65 64 20 66 72 6f 6d 29 20 74 68 65 20 57 6f 72 6b 20 61 6e 64 20 66 6f 72 20 77 68 69 63 68 20 ed.from).the.Work.and.for.which.
15bc0 74 68 65 0a 20 20 20 20 20 20 65 64 69 74 6f 72 69 61 6c 20 72 65 76 69 73 69 6f 6e 73 2c 20 61 the.......editorial.revisions,.a
15be0 6e 6e 6f 74 61 74 69 6f 6e 73 2c 20 65 6c 61 62 6f 72 61 74 69 6f 6e 73 2c 20 6f 72 20 6f 74 68 nnotations,.elaborations,.or.oth
15c00 65 72 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 0a 20 20 20 20 20 20 72 65 70 72 65 73 65 6e 74 er.modifications.......represent
15c20 2c 20 61 73 20 61 20 77 68 6f 6c 65 2c 20 61 6e 20 6f 72 69 67 69 6e 61 6c 20 77 6f 72 6b 20 6f ,.as.a.whole,.an.original.work.o
15c40 66 20 61 75 74 68 6f 72 73 68 69 70 2e 20 46 6f 72 20 74 68 65 20 70 75 72 70 6f 73 65 73 0a 20 f.authorship..For.the.purposes..
15c60 20 20 20 20 20 6f 66 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2c 20 44 65 72 69 76 61 74 69 76 65 .....of.this.License,.Derivative
15c80 20 57 6f 72 6b 73 20 73 68 61 6c 6c 20 6e 6f 74 20 69 6e 63 6c 75 64 65 20 77 6f 72 6b 73 20 74 .Works.shall.not.include.works.t
15ca0 68 61 74 20 72 65 6d 61 69 6e 0a 20 20 20 20 20 20 73 65 70 61 72 61 62 6c 65 20 66 72 6f 6d 2c hat.remain.......separable.from,
15cc0 20 6f 72 20 6d 65 72 65 6c 79 20 6c 69 6e 6b 20 28 6f 72 20 62 69 6e 64 20 62 79 20 6e 61 6d 65 .or.merely.link.(or.bind.by.name
15ce0 29 20 74 6f 20 74 68 65 20 69 6e 74 65 72 66 61 63 65 73 20 6f 66 2c 0a 20 20 20 20 20 20 74 68 ).to.the.interfaces.of,.......th
15d00 65 20 57 6f 72 6b 20 61 6e 64 20 44 65 72 69 76 61 74 69 76 65 20 57 6f 72 6b 73 20 74 68 65 72 e.Work.and.Derivative.Works.ther
15d20 65 6f 66 2e 0a 0a 20 20 20 20 20 20 22 43 6f 6e 74 72 69 62 75 74 69 6f 6e 22 20 73 68 61 6c 6c eof........."Contribution".shall
15d40 20 6d 65 61 6e 20 61 6e 79 20 77 6f 72 6b 20 6f 66 20 61 75 74 68 6f 72 73 68 69 70 2c 20 69 6e .mean.any.work.of.authorship,.in
15d60 63 6c 75 64 69 6e 67 0a 20 20 20 20 20 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 76 65 72 73 69 cluding.......the.original.versi
15d80 6f 6e 20 6f 66 20 74 68 65 20 57 6f 72 6b 20 61 6e 64 20 61 6e 79 20 6d 6f 64 69 66 69 63 61 74 on.of.the.Work.and.any.modificat
15da0 69 6f 6e 73 20 6f 72 20 61 64 64 69 74 69 6f 6e 73 0a 20 20 20 20 20 20 74 6f 20 74 68 61 74 20 ions.or.additions.......to.that.
15dc0 57 6f 72 6b 20 6f 72 20 44 65 72 69 76 61 74 69 76 65 20 57 6f 72 6b 73 20 74 68 65 72 65 6f 66 Work.or.Derivative.Works.thereof
15de0 2c 20 74 68 61 74 20 69 73 20 69 6e 74 65 6e 74 69 6f 6e 61 6c 6c 79 0a 20 20 20 20 20 20 73 75 ,.that.is.intentionally.......su
15e00 62 6d 69 74 74 65 64 20 74 6f 20 4c 69 63 65 6e 73 6f 72 20 66 6f 72 20 69 6e 63 6c 75 73 69 6f bmitted.to.Licensor.for.inclusio
15e20 6e 20 69 6e 20 74 68 65 20 57 6f 72 6b 20 62 79 20 74 68 65 20 63 6f 70 79 72 69 67 68 74 20 6f n.in.the.Work.by.the.copyright.o
15e40 77 6e 65 72 0a 20 20 20 20 20 20 6f 72 20 62 79 20 61 6e 20 69 6e 64 69 76 69 64 75 61 6c 20 6f wner.......or.by.an.individual.o
15e60 72 20 4c 65 67 61 6c 20 45 6e 74 69 74 79 20 61 75 74 68 6f 72 69 7a 65 64 20 74 6f 20 73 75 62 r.Legal.Entity.authorized.to.sub
15e80 6d 69 74 20 6f 6e 20 62 65 68 61 6c 66 20 6f 66 0a 20 20 20 20 20 20 74 68 65 20 63 6f 70 79 72 mit.on.behalf.of.......the.copyr
15ea0 69 67 68 74 20 6f 77 6e 65 72 2e 20 46 6f 72 20 74 68 65 20 70 75 72 70 6f 73 65 73 20 6f 66 20 ight.owner..For.the.purposes.of.
15ec0 74 68 69 73 20 64 65 66 69 6e 69 74 69 6f 6e 2c 20 22 73 75 62 6d 69 74 74 65 64 22 0a 20 20 20 this.definition,."submitted"....
15ee0 20 20 20 6d 65 61 6e 73 20 61 6e 79 20 66 6f 72 6d 20 6f 66 20 65 6c 65 63 74 72 6f 6e 69 63 2c ...means.any.form.of.electronic,
15f00 20 76 65 72 62 61 6c 2c 20 6f 72 20 77 72 69 74 74 65 6e 20 63 6f 6d 6d 75 6e 69 63 61 74 69 6f .verbal,.or.written.communicatio
15f20 6e 20 73 65 6e 74 0a 20 20 20 20 20 20 74 6f 20 74 68 65 20 4c 69 63 65 6e 73 6f 72 20 6f 72 20 n.sent.......to.the.Licensor.or.
15f40 69 74 73 20 72 65 70 72 65 73 65 6e 74 61 74 69 76 65 73 2c 20 69 6e 63 6c 75 64 69 6e 67 20 62 its.representatives,.including.b
15f60 75 74 20 6e 6f 74 20 6c 69 6d 69 74 65 64 20 74 6f 0a 20 20 20 20 20 20 63 6f 6d 6d 75 6e 69 63 ut.not.limited.to.......communic
15f80 61 74 69 6f 6e 20 6f 6e 20 65 6c 65 63 74 72 6f 6e 69 63 20 6d 61 69 6c 69 6e 67 20 6c 69 73 74 ation.on.electronic.mailing.list
15fa0 73 2c 20 73 6f 75 72 63 65 20 63 6f 64 65 20 63 6f 6e 74 72 6f 6c 20 73 79 73 74 65 6d 73 2c 0a s,.source.code.control.systems,.
15fc0 20 20 20 20 20 20 61 6e 64 20 69 73 73 75 65 20 74 72 61 63 6b 69 6e 67 20 73 79 73 74 65 6d 73 ......and.issue.tracking.systems
15fe0 20 74 68 61 74 20 61 72 65 20 6d 61 6e 61 67 65 64 20 62 79 2c 20 6f 72 20 6f 6e 20 62 65 68 61 .that.are.managed.by,.or.on.beha
16000 6c 66 20 6f 66 2c 20 74 68 65 0a 20 20 20 20 20 20 4c 69 63 65 6e 73 6f 72 20 66 6f 72 20 74 68 lf.of,.the.......Licensor.for.th
16020 65 20 70 75 72 70 6f 73 65 20 6f 66 20 64 69 73 63 75 73 73 69 6e 67 20 61 6e 64 20 69 6d 70 72 e.purpose.of.discussing.and.impr
16040 6f 76 69 6e 67 20 74 68 65 20 57 6f 72 6b 2c 20 62 75 74 0a 20 20 20 20 20 20 65 78 63 6c 75 64 oving.the.Work,.but.......exclud
16060 69 6e 67 20 63 6f 6d 6d 75 6e 69 63 61 74 69 6f 6e 20 74 68 61 74 20 69 73 20 63 6f 6e 73 70 69 ing.communication.that.is.conspi
16080 63 75 6f 75 73 6c 79 20 6d 61 72 6b 65 64 20 6f 72 20 6f 74 68 65 72 77 69 73 65 0a 20 20 20 20 cuously.marked.or.otherwise.....
160a0 20 20 64 65 73 69 67 6e 61 74 65 64 20 69 6e 20 77 72 69 74 69 6e 67 20 62 79 20 74 68 65 20 63 ..designated.in.writing.by.the.c
160c0 6f 70 79 72 69 67 68 74 20 6f 77 6e 65 72 20 61 73 20 22 4e 6f 74 20 61 20 43 6f 6e 74 72 69 62 opyright.owner.as."Not.a.Contrib
160e0 75 74 69 6f 6e 2e 22 0a 0a 20 20 20 20 20 20 22 43 6f 6e 74 72 69 62 75 74 6f 72 22 20 73 68 61 ution."........"Contributor".sha
16100 6c 6c 20 6d 65 61 6e 20 4c 69 63 65 6e 73 6f 72 20 61 6e 64 20 61 6e 79 20 69 6e 64 69 76 69 64 ll.mean.Licensor.and.any.individ
16120 75 61 6c 20 6f 72 20 4c 65 67 61 6c 20 45 6e 74 69 74 79 0a 20 20 20 20 20 20 6f 6e 20 62 65 68 ual.or.Legal.Entity.......on.beh
16140 61 6c 66 20 6f 66 20 77 68 6f 6d 20 61 20 43 6f 6e 74 72 69 62 75 74 69 6f 6e 20 68 61 73 20 62 alf.of.whom.a.Contribution.has.b
16160 65 65 6e 20 72 65 63 65 69 76 65 64 20 62 79 20 4c 69 63 65 6e 73 6f 72 20 61 6e 64 0a 20 20 20 een.received.by.Licensor.and....
16180 20 20 20 73 75 62 73 65 71 75 65 6e 74 6c 79 20 69 6e 63 6f 72 70 6f 72 61 74 65 64 20 77 69 74 ...subsequently.incorporated.wit
161a0 68 69 6e 20 74 68 65 20 57 6f 72 6b 2e 0a 0a 20 20 20 32 2e 20 47 72 61 6e 74 20 6f 66 20 43 6f hin.the.Work......2..Grant.of.Co
161c0 70 79 72 69 67 68 74 20 4c 69 63 65 6e 73 65 2e 20 53 75 62 6a 65 63 74 20 74 6f 20 74 68 65 20 pyright.License..Subject.to.the.
161e0 74 65 72 6d 73 20 61 6e 64 20 63 6f 6e 64 69 74 69 6f 6e 73 20 6f 66 0a 20 20 20 20 20 20 74 68 terms.and.conditions.of.......th
16200 69 73 20 4c 69 63 65 6e 73 65 2c 20 65 61 63 68 20 43 6f 6e 74 72 69 62 75 74 6f 72 20 68 65 72 is.License,.each.Contributor.her
16220 65 62 79 20 67 72 61 6e 74 73 20 74 6f 20 59 6f 75 20 61 20 70 65 72 70 65 74 75 61 6c 2c 0a 20 eby.grants.to.You.a.perpetual,..
16240 20 20 20 20 20 77 6f 72 6c 64 77 69 64 65 2c 20 6e 6f 6e 2d 65 78 63 6c 75 73 69 76 65 2c 20 6e .....worldwide,.non-exclusive,.n
16260 6f 2d 63 68 61 72 67 65 2c 20 72 6f 79 61 6c 74 79 2d 66 72 65 65 2c 20 69 72 72 65 76 6f 63 61 o-charge,.royalty-free,.irrevoca
16280 62 6c 65 0a 20 20 20 20 20 20 63 6f 70 79 72 69 67 68 74 20 6c 69 63 65 6e 73 65 20 74 6f 20 72 ble.......copyright.license.to.r
162a0 65 70 72 6f 64 75 63 65 2c 20 70 72 65 70 61 72 65 20 44 65 72 69 76 61 74 69 76 65 20 57 6f 72 eproduce,.prepare.Derivative.Wor
162c0 6b 73 20 6f 66 2c 0a 20 20 20 20 20 20 70 75 62 6c 69 63 6c 79 20 64 69 73 70 6c 61 79 2c 20 70 ks.of,.......publicly.display,.p
162e0 75 62 6c 69 63 6c 79 20 70 65 72 66 6f 72 6d 2c 20 73 75 62 6c 69 63 65 6e 73 65 2c 20 61 6e 64 ublicly.perform,.sublicense,.and
16300 20 64 69 73 74 72 69 62 75 74 65 20 74 68 65 0a 20 20 20 20 20 20 57 6f 72 6b 20 61 6e 64 20 73 .distribute.the.......Work.and.s
16320 75 63 68 20 44 65 72 69 76 61 74 69 76 65 20 57 6f 72 6b 73 20 69 6e 20 53 6f 75 72 63 65 20 6f uch.Derivative.Works.in.Source.o
16340 72 20 4f 62 6a 65 63 74 20 66 6f 72 6d 2e 0a 0a 20 20 20 33 2e 20 47 72 61 6e 74 20 6f 66 20 50 r.Object.form......3..Grant.of.P
16360 61 74 65 6e 74 20 4c 69 63 65 6e 73 65 2e 20 53 75 62 6a 65 63 74 20 74 6f 20 74 68 65 20 74 65 atent.License..Subject.to.the.te
16380 72 6d 73 20 61 6e 64 20 63 6f 6e 64 69 74 69 6f 6e 73 20 6f 66 0a 20 20 20 20 20 20 74 68 69 73 rms.and.conditions.of.......this
163a0 20 4c 69 63 65 6e 73 65 2c 20 65 61 63 68 20 43 6f 6e 74 72 69 62 75 74 6f 72 20 68 65 72 65 62 .License,.each.Contributor.hereb
163c0 79 20 67 72 61 6e 74 73 20 74 6f 20 59 6f 75 20 61 20 70 65 72 70 65 74 75 61 6c 2c 0a 20 20 20 y.grants.to.You.a.perpetual,....
163e0 20 20 20 77 6f 72 6c 64 77 69 64 65 2c 20 6e 6f 6e 2d 65 78 63 6c 75 73 69 76 65 2c 20 6e 6f 2d ...worldwide,.non-exclusive,.no-
16400 63 68 61 72 67 65 2c 20 72 6f 79 61 6c 74 79 2d 66 72 65 65 2c 20 69 72 72 65 76 6f 63 61 62 6c charge,.royalty-free,.irrevocabl
16420 65 0a 20 20 20 20 20 20 28 65 78 63 65 70 74 20 61 73 20 73 74 61 74 65 64 20 69 6e 20 74 68 69 e.......(except.as.stated.in.thi
16440 73 20 73 65 63 74 69 6f 6e 29 20 70 61 74 65 6e 74 20 6c 69 63 65 6e 73 65 20 74 6f 20 6d 61 6b s.section).patent.license.to.mak
16460 65 2c 20 68 61 76 65 20 6d 61 64 65 2c 0a 20 20 20 20 20 20 75 73 65 2c 20 6f 66 66 65 72 20 74 e,.have.made,.......use,.offer.t
16480 6f 20 73 65 6c 6c 2c 20 73 65 6c 6c 2c 20 69 6d 70 6f 72 74 2c 20 61 6e 64 20 6f 74 68 65 72 77 o.sell,.sell,.import,.and.otherw
164a0 69 73 65 20 74 72 61 6e 73 66 65 72 20 74 68 65 20 57 6f 72 6b 2c 0a 20 20 20 20 20 20 77 68 65 ise.transfer.the.Work,.......whe
164c0 72 65 20 73 75 63 68 20 6c 69 63 65 6e 73 65 20 61 70 70 6c 69 65 73 20 6f 6e 6c 79 20 74 6f 20 re.such.license.applies.only.to.
164e0 74 68 6f 73 65 20 70 61 74 65 6e 74 20 63 6c 61 69 6d 73 20 6c 69 63 65 6e 73 61 62 6c 65 0a 20 those.patent.claims.licensable..
16500 20 20 20 20 20 62 79 20 73 75 63 68 20 43 6f 6e 74 72 69 62 75 74 6f 72 20 74 68 61 74 20 61 72 .....by.such.Contributor.that.ar
16520 65 20 6e 65 63 65 73 73 61 72 69 6c 79 20 69 6e 66 72 69 6e 67 65 64 20 62 79 20 74 68 65 69 72 e.necessarily.infringed.by.their
16540 0a 20 20 20 20 20 20 43 6f 6e 74 72 69 62 75 74 69 6f 6e 28 73 29 20 61 6c 6f 6e 65 20 6f 72 20 .......Contribution(s).alone.or.
16560 62 79 20 63 6f 6d 62 69 6e 61 74 69 6f 6e 20 6f 66 20 74 68 65 69 72 20 43 6f 6e 74 72 69 62 75 by.combination.of.their.Contribu
16580 74 69 6f 6e 28 73 29 0a 20 20 20 20 20 20 77 69 74 68 20 74 68 65 20 57 6f 72 6b 20 74 6f 20 77 tion(s).......with.the.Work.to.w
165a0 68 69 63 68 20 73 75 63 68 20 43 6f 6e 74 72 69 62 75 74 69 6f 6e 28 73 29 20 77 61 73 20 73 75 hich.such.Contribution(s).was.su
165c0 62 6d 69 74 74 65 64 2e 20 49 66 20 59 6f 75 0a 20 20 20 20 20 20 69 6e 73 74 69 74 75 74 65 20 bmitted..If.You.......institute.
165e0 70 61 74 65 6e 74 20 6c 69 74 69 67 61 74 69 6f 6e 20 61 67 61 69 6e 73 74 20 61 6e 79 20 65 6e patent.litigation.against.any.en
16600 74 69 74 79 20 28 69 6e 63 6c 75 64 69 6e 67 20 61 0a 20 20 20 20 20 20 63 72 6f 73 73 2d 63 6c tity.(including.a.......cross-cl
16620 61 69 6d 20 6f 72 20 63 6f 75 6e 74 65 72 63 6c 61 69 6d 20 69 6e 20 61 20 6c 61 77 73 75 69 74 aim.or.counterclaim.in.a.lawsuit
16640 29 20 61 6c 6c 65 67 69 6e 67 20 74 68 61 74 20 74 68 65 20 57 6f 72 6b 0a 20 20 20 20 20 20 6f ).alleging.that.the.Work.......o
16660 72 20 61 20 43 6f 6e 74 72 69 62 75 74 69 6f 6e 20 69 6e 63 6f 72 70 6f 72 61 74 65 64 20 77 69 r.a.Contribution.incorporated.wi
16680 74 68 69 6e 20 74 68 65 20 57 6f 72 6b 20 63 6f 6e 73 74 69 74 75 74 65 73 20 64 69 72 65 63 74 thin.the.Work.constitutes.direct
166a0 0a 20 20 20 20 20 20 6f 72 20 63 6f 6e 74 72 69 62 75 74 6f 72 79 20 70 61 74 65 6e 74 20 69 6e .......or.contributory.patent.in
166c0 66 72 69 6e 67 65 6d 65 6e 74 2c 20 74 68 65 6e 20 61 6e 79 20 70 61 74 65 6e 74 20 6c 69 63 65 fringement,.then.any.patent.lice
166e0 6e 73 65 73 0a 20 20 20 20 20 20 67 72 61 6e 74 65 64 20 74 6f 20 59 6f 75 20 75 6e 64 65 72 20 nses.......granted.to.You.under.
16700 74 68 69 73 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 74 68 61 74 20 57 6f 72 6b 20 73 68 61 6c 6c this.License.for.that.Work.shall
16720 20 74 65 72 6d 69 6e 61 74 65 0a 20 20 20 20 20 20 61 73 20 6f 66 20 74 68 65 20 64 61 74 65 20 .terminate.......as.of.the.date.
16740 73 75 63 68 20 6c 69 74 69 67 61 74 69 6f 6e 20 69 73 20 66 69 6c 65 64 2e 0a 0a 20 20 20 34 2e such.litigation.is.filed......4.
16760 20 52 65 64 69 73 74 72 69 62 75 74 69 6f 6e 2e 20 59 6f 75 20 6d 61 79 20 72 65 70 72 6f 64 75 .Redistribution..You.may.reprodu
16780 63 65 20 61 6e 64 20 64 69 73 74 72 69 62 75 74 65 20 63 6f 70 69 65 73 20 6f 66 20 74 68 65 0a ce.and.distribute.copies.of.the.
167a0 20 20 20 20 20 20 57 6f 72 6b 20 6f 72 20 44 65 72 69 76 61 74 69 76 65 20 57 6f 72 6b 73 20 74 ......Work.or.Derivative.Works.t
167c0 68 65 72 65 6f 66 20 69 6e 20 61 6e 79 20 6d 65 64 69 75 6d 2c 20 77 69 74 68 20 6f 72 20 77 69 hereof.in.any.medium,.with.or.wi
167e0 74 68 6f 75 74 0a 20 20 20 20 20 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 2c 20 61 6e 64 20 69 thout.......modifications,.and.i
16800 6e 20 53 6f 75 72 63 65 20 6f 72 20 4f 62 6a 65 63 74 20 66 6f 72 6d 2c 20 70 72 6f 76 69 64 65 n.Source.or.Object.form,.provide
16820 64 20 74 68 61 74 20 59 6f 75 0a 20 20 20 20 20 20 6d 65 65 74 20 74 68 65 20 66 6f 6c 6c 6f 77 d.that.You.......meet.the.follow
16840 69 6e 67 20 63 6f 6e 64 69 74 69 6f 6e 73 3a 0a 0a 20 20 20 20 20 20 28 61 29 20 59 6f 75 20 6d ing.conditions:........(a).You.m
16860 75 73 74 20 67 69 76 65 20 61 6e 79 20 6f 74 68 65 72 20 72 65 63 69 70 69 65 6e 74 73 20 6f 66 ust.give.any.other.recipients.of
16880 20 74 68 65 20 57 6f 72 6b 20 6f 72 0a 20 20 20 20 20 20 20 20 20 20 44 65 72 69 76 61 74 69 76 .the.Work.or...........Derivativ
168a0 65 20 57 6f 72 6b 73 20 61 20 63 6f 70 79 20 6f 66 20 74 68 69 73 20 4c 69 63 65 6e 73 65 3b 20 e.Works.a.copy.of.this.License;.
168c0 61 6e 64 0a 0a 20 20 20 20 20 20 28 62 29 20 59 6f 75 20 6d 75 73 74 20 63 61 75 73 65 20 61 6e and........(b).You.must.cause.an
168e0 79 20 6d 6f 64 69 66 69 65 64 20 66 69 6c 65 73 20 74 6f 20 63 61 72 72 79 20 70 72 6f 6d 69 6e y.modified.files.to.carry.promin
16900 65 6e 74 20 6e 6f 74 69 63 65 73 0a 20 20 20 20 20 20 20 20 20 20 73 74 61 74 69 6e 67 20 74 68 ent.notices...........stating.th
16920 61 74 20 59 6f 75 20 63 68 61 6e 67 65 64 20 74 68 65 20 66 69 6c 65 73 3b 20 61 6e 64 0a 0a 20 at.You.changed.the.files;.and...
16940 20 20 20 20 20 28 63 29 20 59 6f 75 20 6d 75 73 74 20 72 65 74 61 69 6e 2c 20 69 6e 20 74 68 65 .....(c).You.must.retain,.in.the
16960 20 53 6f 75 72 63 65 20 66 6f 72 6d 20 6f 66 20 61 6e 79 20 44 65 72 69 76 61 74 69 76 65 20 57 .Source.form.of.any.Derivative.W
16980 6f 72 6b 73 0a 20 20 20 20 20 20 20 20 20 20 74 68 61 74 20 59 6f 75 20 64 69 73 74 72 69 62 75 orks...........that.You.distribu
169a0 74 65 2c 20 61 6c 6c 20 63 6f 70 79 72 69 67 68 74 2c 20 70 61 74 65 6e 74 2c 20 74 72 61 64 65 te,.all.copyright,.patent,.trade
169c0 6d 61 72 6b 2c 20 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 61 74 74 72 69 62 75 74 69 6f 6e 20 mark,.and...........attribution.
169e0 6e 6f 74 69 63 65 73 20 66 72 6f 6d 20 74 68 65 20 53 6f 75 72 63 65 20 66 6f 72 6d 20 6f 66 20 notices.from.the.Source.form.of.
16a00 74 68 65 20 57 6f 72 6b 2c 0a 20 20 20 20 20 20 20 20 20 20 65 78 63 6c 75 64 69 6e 67 20 74 68 the.Work,...........excluding.th
16a20 6f 73 65 20 6e 6f 74 69 63 65 73 20 74 68 61 74 20 64 6f 20 6e 6f 74 20 70 65 72 74 61 69 6e 20 ose.notices.that.do.not.pertain.
16a40 74 6f 20 61 6e 79 20 70 61 72 74 20 6f 66 0a 20 20 20 20 20 20 20 20 20 20 74 68 65 20 44 65 72 to.any.part.of...........the.Der
16a60 69 76 61 74 69 76 65 20 57 6f 72 6b 73 3b 20 61 6e 64 0a 0a 20 20 20 20 20 20 28 64 29 20 49 66 ivative.Works;.and........(d).If
16a80 20 74 68 65 20 57 6f 72 6b 20 69 6e 63 6c 75 64 65 73 20 61 20 22 4e 4f 54 49 43 45 22 20 74 65 .the.Work.includes.a."NOTICE".te
16aa0 78 74 20 66 69 6c 65 20 61 73 20 70 61 72 74 20 6f 66 20 69 74 73 0a 20 20 20 20 20 20 20 20 20 xt.file.as.part.of.its..........
16ac0 20 64 69 73 74 72 69 62 75 74 69 6f 6e 2c 20 74 68 65 6e 20 61 6e 79 20 44 65 72 69 76 61 74 69 .distribution,.then.any.Derivati
16ae0 76 65 20 57 6f 72 6b 73 20 74 68 61 74 20 59 6f 75 20 64 69 73 74 72 69 62 75 74 65 20 6d 75 73 ve.Works.that.You.distribute.mus
16b00 74 0a 20 20 20 20 20 20 20 20 20 20 69 6e 63 6c 75 64 65 20 61 20 72 65 61 64 61 62 6c 65 20 63 t...........include.a.readable.c
16b20 6f 70 79 20 6f 66 20 74 68 65 20 61 74 74 72 69 62 75 74 69 6f 6e 20 6e 6f 74 69 63 65 73 20 63 opy.of.the.attribution.notices.c
16b40 6f 6e 74 61 69 6e 65 64 0a 20 20 20 20 20 20 20 20 20 20 77 69 74 68 69 6e 20 73 75 63 68 20 4e ontained...........within.such.N
16b60 4f 54 49 43 45 20 66 69 6c 65 2c 20 65 78 63 6c 75 64 69 6e 67 20 74 68 6f 73 65 20 6e 6f 74 69 OTICE.file,.excluding.those.noti
16b80 63 65 73 20 74 68 61 74 20 64 6f 20 6e 6f 74 0a 20 20 20 20 20 20 20 20 20 20 70 65 72 74 61 69 ces.that.do.not...........pertai
16ba0 6e 20 74 6f 20 61 6e 79 20 70 61 72 74 20 6f 66 20 74 68 65 20 44 65 72 69 76 61 74 69 76 65 20 n.to.any.part.of.the.Derivative.
16bc0 57 6f 72 6b 73 2c 20 69 6e 20 61 74 20 6c 65 61 73 74 20 6f 6e 65 0a 20 20 20 20 20 20 20 20 20 Works,.in.at.least.one..........
16be0 20 6f 66 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 70 6c 61 63 65 73 3a 20 77 69 74 68 69 6e .of.the.following.places:.within
16c00 20 61 20 4e 4f 54 49 43 45 20 74 65 78 74 20 66 69 6c 65 20 64 69 73 74 72 69 62 75 74 65 64 0a .a.NOTICE.text.file.distributed.
16c20 20 20 20 20 20 20 20 20 20 20 61 73 20 70 61 72 74 20 6f 66 20 74 68 65 20 44 65 72 69 76 61 74 ..........as.part.of.the.Derivat
16c40 69 76 65 20 57 6f 72 6b 73 3b 20 77 69 74 68 69 6e 20 74 68 65 20 53 6f 75 72 63 65 20 66 6f 72 ive.Works;.within.the.Source.for
16c60 6d 20 6f 72 0a 20 20 20 20 20 20 20 20 20 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2c 20 69 66 m.or...........documentation,.if
16c80 20 70 72 6f 76 69 64 65 64 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 65 20 44 65 72 69 76 61 74 .provided.along.with.the.Derivat
16ca0 69 76 65 20 57 6f 72 6b 73 3b 20 6f 72 2c 0a 20 20 20 20 20 20 20 20 20 20 77 69 74 68 69 6e 20 ive.Works;.or,...........within.
16cc0 61 20 64 69 73 70 6c 61 79 20 67 65 6e 65 72 61 74 65 64 20 62 79 20 74 68 65 20 44 65 72 69 76 a.display.generated.by.the.Deriv
16ce0 61 74 69 76 65 20 57 6f 72 6b 73 2c 20 69 66 20 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 77 68 ative.Works,.if.and...........wh
16d00 65 72 65 76 65 72 20 73 75 63 68 20 74 68 69 72 64 2d 70 61 72 74 79 20 6e 6f 74 69 63 65 73 20 erever.such.third-party.notices.
16d20 6e 6f 72 6d 61 6c 6c 79 20 61 70 70 65 61 72 2e 20 54 68 65 20 63 6f 6e 74 65 6e 74 73 0a 20 20 normally.appear..The.contents...
16d40 20 20 20 20 20 20 20 20 6f 66 20 74 68 65 20 4e 4f 54 49 43 45 20 66 69 6c 65 20 61 72 65 20 66 ........of.the.NOTICE.file.are.f
16d60 6f 72 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 61 6c 20 70 75 72 70 6f 73 65 73 20 6f 6e 6c 79 20 61 or.informational.purposes.only.a
16d80 6e 64 0a 20 20 20 20 20 20 20 20 20 20 64 6f 20 6e 6f 74 20 6d 6f 64 69 66 79 20 74 68 65 20 4c nd...........do.not.modify.the.L
16da0 69 63 65 6e 73 65 2e 20 59 6f 75 20 6d 61 79 20 61 64 64 20 59 6f 75 72 20 6f 77 6e 20 61 74 74 icense..You.may.add.Your.own.att
16dc0 72 69 62 75 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 6e 6f 74 69 63 65 73 20 77 69 74 68 69 ribution...........notices.withi
16de0 6e 20 44 65 72 69 76 61 74 69 76 65 20 57 6f 72 6b 73 20 74 68 61 74 20 59 6f 75 20 64 69 73 74 n.Derivative.Works.that.You.dist
16e00 72 69 62 75 74 65 2c 20 61 6c 6f 6e 67 73 69 64 65 0a 20 20 20 20 20 20 20 20 20 20 6f 72 20 61 ribute,.alongside...........or.a
16e20 73 20 61 6e 20 61 64 64 65 6e 64 75 6d 20 74 6f 20 74 68 65 20 4e 4f 54 49 43 45 20 74 65 78 74 s.an.addendum.to.the.NOTICE.text
16e40 20 66 72 6f 6d 20 74 68 65 20 57 6f 72 6b 2c 20 70 72 6f 76 69 64 65 64 0a 20 20 20 20 20 20 20 .from.the.Work,.provided........
16e60 20 20 20 74 68 61 74 20 73 75 63 68 20 61 64 64 69 74 69 6f 6e 61 6c 20 61 74 74 72 69 62 75 74 ...that.such.additional.attribut
16e80 69 6f 6e 20 6e 6f 74 69 63 65 73 20 63 61 6e 6e 6f 74 20 62 65 20 63 6f 6e 73 74 72 75 65 64 0a ion.notices.cannot.be.construed.
16ea0 20 20 20 20 20 20 20 20 20 20 61 73 20 6d 6f 64 69 66 79 69 6e 67 20 74 68 65 20 4c 69 63 65 6e ..........as.modifying.the.Licen
16ec0 73 65 2e 0a 0a 20 20 20 20 20 20 59 6f 75 20 6d 61 79 20 61 64 64 20 59 6f 75 72 20 6f 77 6e 20 se.........You.may.add.Your.own.
16ee0 63 6f 70 79 72 69 67 68 74 20 73 74 61 74 65 6d 65 6e 74 20 74 6f 20 59 6f 75 72 20 6d 6f 64 69 copyright.statement.to.Your.modi
16f00 66 69 63 61 74 69 6f 6e 73 20 61 6e 64 0a 20 20 20 20 20 20 6d 61 79 20 70 72 6f 76 69 64 65 20 fications.and.......may.provide.
16f20 61 64 64 69 74 69 6f 6e 61 6c 20 6f 72 20 64 69 66 66 65 72 65 6e 74 20 6c 69 63 65 6e 73 65 20 additional.or.different.license.
16f40 74 65 72 6d 73 20 61 6e 64 20 63 6f 6e 64 69 74 69 6f 6e 73 0a 20 20 20 20 20 20 66 6f 72 20 75 terms.and.conditions.......for.u
16f60 73 65 2c 20 72 65 70 72 6f 64 75 63 74 69 6f 6e 2c 20 6f 72 20 64 69 73 74 72 69 62 75 74 69 6f se,.reproduction,.or.distributio
16f80 6e 20 6f 66 20 59 6f 75 72 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 2c 20 6f 72 0a 20 20 20 20 n.of.Your.modifications,.or.....
16fa0 20 20 66 6f 72 20 61 6e 79 20 73 75 63 68 20 44 65 72 69 76 61 74 69 76 65 20 57 6f 72 6b 73 20 ..for.any.such.Derivative.Works.
16fc0 61 73 20 61 20 77 68 6f 6c 65 2c 20 70 72 6f 76 69 64 65 64 20 59 6f 75 72 20 75 73 65 2c 0a 20 as.a.whole,.provided.Your.use,..
16fe0 20 20 20 20 20 72 65 70 72 6f 64 75 63 74 69 6f 6e 2c 20 61 6e 64 20 64 69 73 74 72 69 62 75 74 .....reproduction,.and.distribut
17000 69 6f 6e 20 6f 66 20 74 68 65 20 57 6f 72 6b 20 6f 74 68 65 72 77 69 73 65 20 63 6f 6d 70 6c 69 ion.of.the.Work.otherwise.compli
17020 65 73 20 77 69 74 68 0a 20 20 20 20 20 20 74 68 65 20 63 6f 6e 64 69 74 69 6f 6e 73 20 73 74 61 es.with.......the.conditions.sta
17040 74 65 64 20 69 6e 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 0a 0a 20 20 20 35 2e 20 53 75 62 6d ted.in.this.License......5..Subm
17060 69 73 73 69 6f 6e 20 6f 66 20 43 6f 6e 74 72 69 62 75 74 69 6f 6e 73 2e 20 55 6e 6c 65 73 73 20 ission.of.Contributions..Unless.
17080 59 6f 75 20 65 78 70 6c 69 63 69 74 6c 79 20 73 74 61 74 65 20 6f 74 68 65 72 77 69 73 65 2c 0a You.explicitly.state.otherwise,.
170a0 20 20 20 20 20 20 61 6e 79 20 43 6f 6e 74 72 69 62 75 74 69 6f 6e 20 69 6e 74 65 6e 74 69 6f 6e ......any.Contribution.intention
170c0 61 6c 6c 79 20 73 75 62 6d 69 74 74 65 64 20 66 6f 72 20 69 6e 63 6c 75 73 69 6f 6e 20 69 6e 20 ally.submitted.for.inclusion.in.
170e0 74 68 65 20 57 6f 72 6b 0a 20 20 20 20 20 20 62 79 20 59 6f 75 20 74 6f 20 74 68 65 20 4c 69 63 the.Work.......by.You.to.the.Lic
17100 65 6e 73 6f 72 20 73 68 61 6c 6c 20 62 65 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 61 ensor.shall.be.under.the.terms.a
17120 6e 64 20 63 6f 6e 64 69 74 69 6f 6e 73 20 6f 66 0a 20 20 20 20 20 20 74 68 69 73 20 4c 69 63 65 nd.conditions.of.......this.Lice
17140 6e 73 65 2c 20 77 69 74 68 6f 75 74 20 61 6e 79 20 61 64 64 69 74 69 6f 6e 61 6c 20 74 65 72 6d nse,.without.any.additional.term
17160 73 20 6f 72 20 63 6f 6e 64 69 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 4e 6f 74 77 69 74 68 73 74 s.or.conditions........Notwithst
17180 61 6e 64 69 6e 67 20 74 68 65 20 61 62 6f 76 65 2c 20 6e 6f 74 68 69 6e 67 20 68 65 72 65 69 6e anding.the.above,.nothing.herein
171a0 20 73 68 61 6c 6c 20 73 75 70 65 72 73 65 64 65 20 6f 72 20 6d 6f 64 69 66 79 0a 20 20 20 20 20 .shall.supersede.or.modify......
171c0 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 61 6e 79 20 73 65 70 61 72 61 74 65 20 6c 69 63 65 6e .the.terms.of.any.separate.licen
171e0 73 65 20 61 67 72 65 65 6d 65 6e 74 20 79 6f 75 20 6d 61 79 20 68 61 76 65 20 65 78 65 63 75 74 se.agreement.you.may.have.execut
17200 65 64 0a 20 20 20 20 20 20 77 69 74 68 20 4c 69 63 65 6e 73 6f 72 20 72 65 67 61 72 64 69 6e 67 ed.......with.Licensor.regarding
17220 20 73 75 63 68 20 43 6f 6e 74 72 69 62 75 74 69 6f 6e 73 2e 0a 0a 20 20 20 36 2e 20 54 72 61 64 .such.Contributions......6..Trad
17240 65 6d 61 72 6b 73 2e 20 54 68 69 73 20 4c 69 63 65 6e 73 65 20 64 6f 65 73 20 6e 6f 74 20 67 72 emarks..This.License.does.not.gr
17260 61 6e 74 20 70 65 72 6d 69 73 73 69 6f 6e 20 74 6f 20 75 73 65 20 74 68 65 20 74 72 61 64 65 0a ant.permission.to.use.the.trade.
17280 20 20 20 20 20 20 6e 61 6d 65 73 2c 20 74 72 61 64 65 6d 61 72 6b 73 2c 20 73 65 72 76 69 63 65 ......names,.trademarks,.service
172a0 20 6d 61 72 6b 73 2c 20 6f 72 20 70 72 6f 64 75 63 74 20 6e 61 6d 65 73 20 6f 66 20 74 68 65 20 .marks,.or.product.names.of.the.
172c0 4c 69 63 65 6e 73 6f 72 2c 0a 20 20 20 20 20 20 65 78 63 65 70 74 20 61 73 20 72 65 71 75 69 72 Licensor,.......except.as.requir
172e0 65 64 20 66 6f 72 20 72 65 61 73 6f 6e 61 62 6c 65 20 61 6e 64 20 63 75 73 74 6f 6d 61 72 79 20 ed.for.reasonable.and.customary.
17300 75 73 65 20 69 6e 20 64 65 73 63 72 69 62 69 6e 67 20 74 68 65 0a 20 20 20 20 20 20 6f 72 69 67 use.in.describing.the.......orig
17320 69 6e 20 6f 66 20 74 68 65 20 57 6f 72 6b 20 61 6e 64 20 72 65 70 72 6f 64 75 63 69 6e 67 20 74 in.of.the.Work.and.reproducing.t
17340 68 65 20 63 6f 6e 74 65 6e 74 20 6f 66 20 74 68 65 20 4e 4f 54 49 43 45 20 66 69 6c 65 2e 0a 0a he.content.of.the.NOTICE.file...
17360 20 20 20 37 2e 20 44 69 73 63 6c 61 69 6d 65 72 20 6f 66 20 57 61 72 72 61 6e 74 79 2e 20 55 6e ...7..Disclaimer.of.Warranty..Un
17380 6c 65 73 73 20 72 65 71 75 69 72 65 64 20 62 79 20 61 70 70 6c 69 63 61 62 6c 65 20 6c 61 77 20 less.required.by.applicable.law.
173a0 6f 72 0a 20 20 20 20 20 20 61 67 72 65 65 64 20 74 6f 20 69 6e 20 77 72 69 74 69 6e 67 2c 20 4c or.......agreed.to.in.writing,.L
173c0 69 63 65 6e 73 6f 72 20 70 72 6f 76 69 64 65 73 20 74 68 65 20 57 6f 72 6b 20 28 61 6e 64 20 65 icensor.provides.the.Work.(and.e
173e0 61 63 68 0a 20 20 20 20 20 20 43 6f 6e 74 72 69 62 75 74 6f 72 20 70 72 6f 76 69 64 65 73 20 69 ach.......Contributor.provides.i
17400 74 73 20 43 6f 6e 74 72 69 62 75 74 69 6f 6e 73 29 20 6f 6e 20 61 6e 20 22 41 53 20 49 53 22 20 ts.Contributions).on.an."AS.IS".
17420 42 41 53 49 53 2c 0a 20 20 20 20 20 20 57 49 54 48 4f 55 54 20 57 41 52 52 41 4e 54 49 45 53 20 BASIS,.......WITHOUT.WARRANTIES.
17440 4f 52 20 43 4f 4e 44 49 54 49 4f 4e 53 20 4f 46 20 41 4e 59 20 4b 49 4e 44 2c 20 65 69 74 68 65 OR.CONDITIONS.OF.ANY.KIND,.eithe
17460 72 20 65 78 70 72 65 73 73 20 6f 72 0a 20 20 20 20 20 20 69 6d 70 6c 69 65 64 2c 20 69 6e 63 6c r.express.or.......implied,.incl
17480 75 64 69 6e 67 2c 20 77 69 74 68 6f 75 74 20 6c 69 6d 69 74 61 74 69 6f 6e 2c 20 61 6e 79 20 77 uding,.without.limitation,.any.w
174a0 61 72 72 61 6e 74 69 65 73 20 6f 72 20 63 6f 6e 64 69 74 69 6f 6e 73 0a 20 20 20 20 20 20 6f 66 arranties.or.conditions.......of
174c0 20 54 49 54 4c 45 2c 20 4e 4f 4e 2d 49 4e 46 52 49 4e 47 45 4d 45 4e 54 2c 20 4d 45 52 43 48 41 .TITLE,.NON-INFRINGEMENT,.MERCHA
174e0 4e 54 41 42 49 4c 49 54 59 2c 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 0a 20 20 20 20 NTABILITY,.or.FITNESS.FOR.A.....
17500 20 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 59 6f 75 20 61 72 65 20 73 6f ..PARTICULAR.PURPOSE..You.are.so
17520 6c 65 6c 79 20 72 65 73 70 6f 6e 73 69 62 6c 65 20 66 6f 72 20 64 65 74 65 72 6d 69 6e 69 6e 67 lely.responsible.for.determining
17540 20 74 68 65 0a 20 20 20 20 20 20 61 70 70 72 6f 70 72 69 61 74 65 6e 65 73 73 20 6f 66 20 75 73 .the.......appropriateness.of.us
17560 69 6e 67 20 6f 72 20 72 65 64 69 73 74 72 69 62 75 74 69 6e 67 20 74 68 65 20 57 6f 72 6b 20 61 ing.or.redistributing.the.Work.a
17580 6e 64 20 61 73 73 75 6d 65 20 61 6e 79 0a 20 20 20 20 20 20 72 69 73 6b 73 20 61 73 73 6f 63 69 nd.assume.any.......risks.associ
175a0 61 74 65 64 20 77 69 74 68 20 59 6f 75 72 20 65 78 65 72 63 69 73 65 20 6f 66 20 70 65 72 6d 69 ated.with.Your.exercise.of.permi
175c0 73 73 69 6f 6e 73 20 75 6e 64 65 72 20 74 68 69 73 20 4c 69 63 65 6e 73 65 2e 0a 0a 20 20 20 38 ssions.under.this.License......8
175e0 2e 20 4c 69 6d 69 74 61 74 69 6f 6e 20 6f 66 20 4c 69 61 62 69 6c 69 74 79 2e 20 49 6e 20 6e 6f ..Limitation.of.Liability..In.no
17600 20 65 76 65 6e 74 20 61 6e 64 20 75 6e 64 65 72 20 6e 6f 20 6c 65 67 61 6c 20 74 68 65 6f 72 79 .event.and.under.no.legal.theory
17620 2c 0a 20 20 20 20 20 20 77 68 65 74 68 65 72 20 69 6e 20 74 6f 72 74 20 28 69 6e 63 6c 75 64 69 ,.......whether.in.tort.(includi
17640 6e 67 20 6e 65 67 6c 69 67 65 6e 63 65 29 2c 20 63 6f 6e 74 72 61 63 74 2c 20 6f 72 20 6f 74 68 ng.negligence),.contract,.or.oth
17660 65 72 77 69 73 65 2c 0a 20 20 20 20 20 20 75 6e 6c 65 73 73 20 72 65 71 75 69 72 65 64 20 62 79 erwise,.......unless.required.by
17680 20 61 70 70 6c 69 63 61 62 6c 65 20 6c 61 77 20 28 73 75 63 68 20 61 73 20 64 65 6c 69 62 65 72 .applicable.law.(such.as.deliber
176a0 61 74 65 20 61 6e 64 20 67 72 6f 73 73 6c 79 0a 20 20 20 20 20 20 6e 65 67 6c 69 67 65 6e 74 20 ate.and.grossly.......negligent.
176c0 61 63 74 73 29 20 6f 72 20 61 67 72 65 65 64 20 74 6f 20 69 6e 20 77 72 69 74 69 6e 67 2c 20 73 acts).or.agreed.to.in.writing,.s
176e0 68 61 6c 6c 20 61 6e 79 20 43 6f 6e 74 72 69 62 75 74 6f 72 20 62 65 0a 20 20 20 20 20 20 6c 69 hall.any.Contributor.be.......li
17700 61 62 6c 65 20 74 6f 20 59 6f 75 20 66 6f 72 20 64 61 6d 61 67 65 73 2c 20 69 6e 63 6c 75 64 69 able.to.You.for.damages,.includi
17720 6e 67 20 61 6e 79 20 64 69 72 65 63 74 2c 20 69 6e 64 69 72 65 63 74 2c 20 73 70 65 63 69 61 6c ng.any.direct,.indirect,.special
17740 2c 0a 20 20 20 20 20 20 69 6e 63 69 64 65 6e 74 61 6c 2c 20 6f 72 20 63 6f 6e 73 65 71 75 65 6e ,.......incidental,.or.consequen
17760 74 69 61 6c 20 64 61 6d 61 67 65 73 20 6f 66 20 61 6e 79 20 63 68 61 72 61 63 74 65 72 20 61 72 tial.damages.of.any.character.ar
17780 69 73 69 6e 67 20 61 73 20 61 0a 20 20 20 20 20 20 72 65 73 75 6c 74 20 6f 66 20 74 68 69 73 20 ising.as.a.......result.of.this.
177a0 4c 69 63 65 6e 73 65 20 6f 72 20 6f 75 74 20 6f 66 20 74 68 65 20 75 73 65 20 6f 72 20 69 6e 61 License.or.out.of.the.use.or.ina
177c0 62 69 6c 69 74 79 20 74 6f 20 75 73 65 20 74 68 65 0a 20 20 20 20 20 20 57 6f 72 6b 20 28 69 6e bility.to.use.the.......Work.(in
177e0 63 6c 75 64 69 6e 67 20 62 75 74 20 6e 6f 74 20 6c 69 6d 69 74 65 64 20 74 6f 20 64 61 6d 61 67 cluding.but.not.limited.to.damag
17800 65 73 20 66 6f 72 20 6c 6f 73 73 20 6f 66 20 67 6f 6f 64 77 69 6c 6c 2c 0a 20 20 20 20 20 20 77 es.for.loss.of.goodwill,.......w
17820 6f 72 6b 20 73 74 6f 70 70 61 67 65 2c 20 63 6f 6d 70 75 74 65 72 20 66 61 69 6c 75 72 65 20 6f ork.stoppage,.computer.failure.o
17840 72 20 6d 61 6c 66 75 6e 63 74 69 6f 6e 2c 20 6f 72 20 61 6e 79 20 61 6e 64 20 61 6c 6c 0a 20 20 r.malfunction,.or.any.and.all...
17860 20 20 20 20 6f 74 68 65 72 20 63 6f 6d 6d 65 72 63 69 61 6c 20 64 61 6d 61 67 65 73 20 6f 72 20 ....other.commercial.damages.or.
17880 6c 6f 73 73 65 73 29 2c 20 65 76 65 6e 20 69 66 20 73 75 63 68 20 43 6f 6e 74 72 69 62 75 74 6f losses),.even.if.such.Contributo
178a0 72 0a 20 20 20 20 20 20 68 61 73 20 62 65 65 6e 20 61 64 76 69 73 65 64 20 6f 66 20 74 68 65 20 r.......has.been.advised.of.the.
178c0 70 6f 73 73 69 62 69 6c 69 74 79 20 6f 66 20 73 75 63 68 20 64 61 6d 61 67 65 73 2e 0a 0a 20 20 possibility.of.such.damages.....
178e0 20 39 2e 20 41 63 63 65 70 74 69 6e 67 20 57 61 72 72 61 6e 74 79 20 6f 72 20 41 64 64 69 74 69 .9..Accepting.Warranty.or.Additi
17900 6f 6e 61 6c 20 4c 69 61 62 69 6c 69 74 79 2e 20 57 68 69 6c 65 20 72 65 64 69 73 74 72 69 62 75 onal.Liability..While.redistribu
17920 74 69 6e 67 0a 20 20 20 20 20 20 74 68 65 20 57 6f 72 6b 20 6f 72 20 44 65 72 69 76 61 74 69 76 ting.......the.Work.or.Derivativ
17940 65 20 57 6f 72 6b 73 20 74 68 65 72 65 6f 66 2c 20 59 6f 75 20 6d 61 79 20 63 68 6f 6f 73 65 20 e.Works.thereof,.You.may.choose.
17960 74 6f 20 6f 66 66 65 72 2c 0a 20 20 20 20 20 20 61 6e 64 20 63 68 61 72 67 65 20 61 20 66 65 65 to.offer,.......and.charge.a.fee
17980 20 66 6f 72 2c 20 61 63 63 65 70 74 61 6e 63 65 20 6f 66 20 73 75 70 70 6f 72 74 2c 20 77 61 72 .for,.acceptance.of.support,.war
179a0 72 61 6e 74 79 2c 20 69 6e 64 65 6d 6e 69 74 79 2c 0a 20 20 20 20 20 20 6f 72 20 6f 74 68 65 72 ranty,.indemnity,.......or.other
179c0 20 6c 69 61 62 69 6c 69 74 79 20 6f 62 6c 69 67 61 74 69 6f 6e 73 20 61 6e 64 2f 6f 72 20 72 69 .liability.obligations.and/or.ri
179e0 67 68 74 73 20 63 6f 6e 73 69 73 74 65 6e 74 20 77 69 74 68 20 74 68 69 73 0a 20 20 20 20 20 20 ghts.consistent.with.this.......
17a00 4c 69 63 65 6e 73 65 2e 20 48 6f 77 65 76 65 72 2c 20 69 6e 20 61 63 63 65 70 74 69 6e 67 20 73 License..However,.in.accepting.s
17a20 75 63 68 20 6f 62 6c 69 67 61 74 69 6f 6e 73 2c 20 59 6f 75 20 6d 61 79 20 61 63 74 20 6f 6e 6c uch.obligations,.You.may.act.onl
17a40 79 0a 20 20 20 20 20 20 6f 6e 20 59 6f 75 72 20 6f 77 6e 20 62 65 68 61 6c 66 20 61 6e 64 20 6f y.......on.Your.own.behalf.and.o
17a60 6e 20 59 6f 75 72 20 73 6f 6c 65 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 79 2c 20 6e 6f 74 20 n.Your.sole.responsibility,.not.
17a80 6f 6e 20 62 65 68 61 6c 66 0a 20 20 20 20 20 20 6f 66 20 61 6e 79 20 6f 74 68 65 72 20 43 6f 6e on.behalf.......of.any.other.Con
17aa0 74 72 69 62 75 74 6f 72 2c 20 61 6e 64 20 6f 6e 6c 79 20 69 66 20 59 6f 75 20 61 67 72 65 65 20 tributor,.and.only.if.You.agree.
17ac0 74 6f 20 69 6e 64 65 6d 6e 69 66 79 2c 0a 20 20 20 20 20 20 64 65 66 65 6e 64 2c 20 61 6e 64 20 to.indemnify,.......defend,.and.
17ae0 68 6f 6c 64 20 65 61 63 68 20 43 6f 6e 74 72 69 62 75 74 6f 72 20 68 61 72 6d 6c 65 73 73 20 66 hold.each.Contributor.harmless.f
17b00 6f 72 20 61 6e 79 20 6c 69 61 62 69 6c 69 74 79 0a 20 20 20 20 20 20 69 6e 63 75 72 72 65 64 20 or.any.liability.......incurred.
17b20 62 79 2c 20 6f 72 20 63 6c 61 69 6d 73 20 61 73 73 65 72 74 65 64 20 61 67 61 69 6e 73 74 2c 20 by,.or.claims.asserted.against,.
17b40 73 75 63 68 20 43 6f 6e 74 72 69 62 75 74 6f 72 20 62 79 20 72 65 61 73 6f 6e 0a 20 20 20 20 20 such.Contributor.by.reason......
17b60 20 6f 66 20 79 6f 75 72 20 61 63 63 65 70 74 69 6e 67 20 61 6e 79 20 73 75 63 68 20 77 61 72 72 .of.your.accepting.any.such.warr
17b80 61 6e 74 79 20 6f 72 20 61 64 64 69 74 69 6f 6e 61 6c 20 6c 69 61 62 69 6c 69 74 79 2e 0a 0a 00 anty.or.additional.liability....
17ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17c00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 72 65 71 75 69 72 65 6d 65 6e 74 73 2e 74 78 74 networking-onos/requirements.txt
17c20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17c60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
17c80 30 30 30 30 34 34 36 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 36 32 33 35 00 20 30 00 00 00 0000446.12627513442.016235..0...
17ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17d00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
17d20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
17d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17e00 23 20 54 68 65 20 6f 72 64 65 72 20 6f 66 20 70 61 63 6b 61 67 65 73 20 69 73 20 73 69 67 6e 69 #.The.order.of.packages.is.signi
17e20 66 69 63 61 6e 74 2c 20 62 65 63 61 75 73 65 20 70 69 70 20 70 72 6f 63 65 73 73 65 73 20 74 68 ficant,.because.pip.processes.th
17e40 65 6d 20 69 6e 20 74 68 65 20 6f 72 64 65 72 0a 23 20 6f 66 20 61 70 70 65 61 72 61 6e 63 65 2e em.in.the.order.#.of.appearance.
17e60 20 43 68 61 6e 67 69 6e 67 20 74 68 65 20 6f 72 64 65 72 20 68 61 73 20 61 6e 20 69 6d 70 61 63 .Changing.the.order.has.an.impac
17e80 74 20 6f 6e 20 74 68 65 20 6f 76 65 72 61 6c 6c 20 69 6e 74 65 67 72 61 74 69 6f 6e 0a 23 20 70 t.on.the.overall.integration.#.p
17ea0 72 6f 63 65 73 73 2c 20 77 68 69 63 68 20 6d 61 79 20 63 61 75 73 65 20 77 65 64 67 65 73 20 69 rocess,.which.may.cause.wedges.i
17ec0 6e 20 74 68 65 20 67 61 74 65 20 6c 61 74 65 72 2e 0a 0a 70 62 72 3e 3d 31 2e 36 0a 42 61 62 65 n.the.gate.later...pbr>=1.6.Babe
17ee0 6c 3e 3d 31 2e 33 0a 2d 65 20 67 69 74 3a 2f 2f 67 69 74 2e 6f 70 65 6e 73 74 61 63 6b 2e 6f 72 l>=1.3.-e.git://git.openstack.or
17f00 67 2f 6f 70 65 6e 73 74 61 63 6b 2f 6e 65 75 74 72 6f 6e 2e 67 69 74 23 65 67 67 3d 6e 65 75 74 g/openstack/neutron.git#egg=neut
17f20 72 6f 6e 0a 0a 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ron.............................
17f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18000 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 48 41 43 4b 49 4e 47 2e 72 73 74 00 00 00 00 00 networking-onos/HACKING.rst.....
18020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18060 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
18080 30 30 30 32 35 37 30 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 34 35 34 37 00 20 30 00 00 00 0002570.12627513442.014547..0...
180a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
180c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
180e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18100 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
18120 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
18140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
181a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
181c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
181e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18200 4e 65 75 74 72 6f 6e 20 53 74 79 6c 65 20 43 6f 6d 6d 61 6e 64 6d 65 6e 74 73 0a 3d 3d 3d 3d 3d Neutron.Style.Commandments.=====
18220 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 2d 20 53 74 65 70 20 31 3a =====================..-.Step.1:
18240 20 52 65 61 64 20 74 68 65 20 4f 70 65 6e 53 74 61 63 6b 20 53 74 79 6c 65 20 43 6f 6d 6d 61 6e .Read.the.OpenStack.Style.Comman
18260 64 6d 65 6e 74 73 0a 20 20 68 74 74 70 3a 2f 2f 64 6f 63 73 2e 6f 70 65 6e 73 74 61 63 6b 2e 6f dments...http://docs.openstack.o
18280 72 67 2f 64 65 76 65 6c 6f 70 65 72 2f 68 61 63 6b 69 6e 67 2f 0a 2d 20 53 74 65 70 20 32 3a 20 rg/developer/hacking/.-.Step.2:.
182a0 52 65 61 64 20 6f 6e 0a 0a 4e 65 75 74 72 6f 6e 20 53 70 65 63 69 66 69 63 20 43 6f 6d 6d 61 6e Read.on..Neutron.Specific.Comman
182c0 64 6d 65 6e 74 73 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d dments.-------------------------
182e0 2d 0a 0a 2d 20 5b 4e 33 31 39 5d 20 56 61 6c 69 64 61 74 65 20 74 68 61 74 20 64 65 62 75 67 20 -..-.[N319].Validate.that.debug.
18300 6c 65 76 65 6c 20 6c 6f 67 73 20 61 72 65 20 6e 6f 74 20 74 72 61 6e 73 6c 61 74 65 64 0a 2d 20 level.logs.are.not.translated.-.
18320 5b 4e 33 32 30 5d 20 56 61 6c 69 64 61 74 65 20 74 68 61 74 20 4c 4f 47 20 6d 65 73 73 61 67 65 [N320].Validate.that.LOG.message
18340 73 2c 20 65 78 63 65 70 74 20 64 65 62 75 67 20 6f 6e 65 73 2c 20 68 61 76 65 20 74 72 61 6e 73 s,.except.debug.ones,.have.trans
18360 6c 61 74 69 6f 6e 73 0a 2d 20 5b 4e 33 32 31 5d 20 56 61 6c 69 64 61 74 65 20 74 68 61 74 20 6a lations.-.[N321].Validate.that.j
18380 73 6f 6e 75 74 69 6c 73 20 6d 6f 64 75 6c 65 20 69 73 20 75 73 65 64 20 69 6e 73 74 65 61 64 20 sonutils.module.is.used.instead.
183a0 6f 66 20 6a 73 6f 6e 0a 2d 20 5b 4e 33 32 32 5d 20 57 65 20 64 6f 20 6e 6f 74 20 75 73 65 20 40 of.json.-.[N322].We.do.not.use.@
183c0 61 75 74 68 6f 72 73 20 74 61 67 73 20 69 6e 20 73 6f 75 72 63 65 20 66 69 6c 65 73 2e 20 57 65 authors.tags.in.source.files..We
183e0 20 68 61 76 65 20 67 69 74 20 74 6f 20 74 72 61 63 6b 0a 20 20 61 75 74 68 6f 72 73 68 69 70 2e .have.git.to.track...authorship.
18400 0a 2d 20 5b 4e 33 32 33 5d 20 44 65 74 65 63 74 20 63 6f 6d 6d 6f 6e 20 65 72 72 6f 72 73 20 77 .-.[N323].Detect.common.errors.w
18420 69 74 68 20 61 73 73 65 72 74 5f 63 61 6c 6c 65 64 5f 6f 6e 63 65 5f 77 69 74 68 0a 0a 43 72 65 ith.assert_called_once_with..Cre
18440 61 74 69 6e 67 20 55 6e 69 74 20 54 65 73 74 73 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ating.Unit.Tests.---------------
18460 2d 2d 2d 2d 0a 46 6f 72 20 65 76 65 72 79 20 6e 65 77 20 66 65 61 74 75 72 65 2c 20 75 6e 69 74 ----.For.every.new.feature,.unit
18480 20 74 65 73 74 73 20 73 68 6f 75 6c 64 20 62 65 20 63 72 65 61 74 65 64 20 74 68 61 74 20 62 6f .tests.should.be.created.that.bo
184a0 74 68 20 74 65 73 74 20 61 6e 64 0a 28 69 6d 70 6c 69 63 69 74 6c 79 29 20 64 6f 63 75 6d 65 6e th.test.and.(implicitly).documen
184c0 74 20 74 68 65 20 75 73 61 67 65 20 6f 66 20 73 61 69 64 20 66 65 61 74 75 72 65 2e 20 49 66 20 t.the.usage.of.said.feature..If.
184e0 73 75 62 6d 69 74 74 69 6e 67 20 61 20 70 61 74 63 68 20 66 6f 72 20 61 0a 62 75 67 20 74 68 61 submitting.a.patch.for.a.bug.tha
18500 74 20 68 61 64 20 6e 6f 20 75 6e 69 74 20 74 65 73 74 2c 20 61 20 6e 65 77 20 70 61 73 73 69 6e t.had.no.unit.test,.a.new.passin
18520 67 20 75 6e 69 74 20 74 65 73 74 20 73 68 6f 75 6c 64 20 62 65 20 61 64 64 65 64 2e 20 49 66 20 g.unit.test.should.be.added..If.
18540 61 0a 73 75 62 6d 69 74 74 65 64 20 62 75 67 20 66 69 78 20 64 6f 65 73 20 68 61 76 65 20 61 20 a.submitted.bug.fix.does.have.a.
18560 75 6e 69 74 20 74 65 73 74 2c 20 62 65 20 73 75 72 65 20 74 6f 20 61 64 64 20 61 20 6e 65 77 20 unit.test,.be.sure.to.add.a.new.
18580 6f 6e 65 20 74 68 61 74 20 66 61 69 6c 73 0a 77 69 74 68 6f 75 74 20 74 68 65 20 70 61 74 63 68 one.that.fails.without.the.patch
185a0 20 61 6e 64 20 70 61 73 73 65 73 20 77 69 74 68 20 74 68 65 20 70 61 74 63 68 2e 0a 0a 41 6c 6c .and.passes.with.the.patch...All
185c0 20 75 6e 69 74 74 65 73 74 20 63 6c 61 73 73 65 73 20 6d 75 73 74 20 75 6c 74 69 6d 61 74 65 6c .unittest.classes.must.ultimatel
185e0 79 20 69 6e 68 65 72 69 74 20 66 72 6f 6d 20 74 65 73 74 74 6f 6f 6c 73 2e 54 65 73 74 43 61 73 y.inherit.from.testtools.TestCas
18600 65 2e 20 49 6e 20 74 68 65 0a 4e 65 75 74 72 6f 6e 20 74 65 73 74 20 73 75 69 74 65 2c 20 74 68 e..In.the.Neutron.test.suite,.th
18620 69 73 20 73 68 6f 75 6c 64 20 62 65 20 64 6f 6e 65 20 62 79 20 69 6e 68 65 72 69 74 69 6e 67 20 is.should.be.done.by.inheriting.
18640 66 72 6f 6d 0a 6e 65 75 74 72 6f 6e 2e 74 65 73 74 73 2e 62 61 73 65 2e 42 61 73 65 54 65 73 74 from.neutron.tests.base.BaseTest
18660 43 61 73 65 2e 0a 0a 41 6c 6c 20 73 65 74 55 70 20 61 6e 64 20 74 65 61 72 44 6f 77 6e 20 6d 65 Case...All.setUp.and.tearDown.me
18680 74 68 6f 64 73 20 6d 75 73 74 20 75 70 63 61 6c 6c 20 75 73 69 6e 67 20 74 68 65 20 73 75 70 65 thods.must.upcall.using.the.supe
186a0 72 28 29 20 6d 65 74 68 6f 64 2e 0a 74 65 61 72 44 6f 77 6e 20 6d 65 74 68 6f 64 73 20 73 68 6f r().method..tearDown.methods.sho
186c0 75 6c 64 20 62 65 20 61 76 6f 69 64 65 64 20 61 6e 64 20 61 64 64 43 6c 65 61 6e 75 70 20 63 61 uld.be.avoided.and.addCleanup.ca
186e0 6c 6c 73 20 73 68 6f 75 6c 64 20 62 65 20 70 72 65 66 65 72 72 65 64 2e 0a 4e 65 76 65 72 20 6d lls.should.be.preferred..Never.m
18700 61 6e 75 61 6c 6c 79 20 63 72 65 61 74 65 20 74 65 6d 70 66 69 6c 65 73 2e 20 41 6c 77 61 79 73 anually.create.tempfiles..Always
18720 20 75 73 65 20 74 68 65 20 74 65 6d 70 66 69 6c 65 20 66 69 78 74 75 72 65 73 20 66 72 6f 6d 0a .use.the.tempfile.fixtures.from.
18740 74 68 65 20 66 69 78 74 75 72 65 20 6c 69 62 72 61 72 79 20 74 6f 20 65 6e 73 75 72 65 20 74 68 the.fixture.library.to.ensure.th
18760 61 74 20 74 68 65 79 20 61 72 65 20 63 6c 65 61 6e 65 64 20 75 70 2e 0a 00 00 00 00 00 00 00 00 at.they.are.cleaned.up..........
18780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
187a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
187c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
187e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18800 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 6f 70 65 6e 73 74 61 63 6b 2d 63 6f 6d 6d 6f 6e networking-onos/openstack-common
18820 2e 63 6f 6e 66 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .conf...........................
18840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18860 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
18880 30 30 30 30 32 31 35 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 37 30 36 37 00 20 30 00 00 00 0000215.12627513442.017067..0...
188a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
188c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
188e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18900 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
18920 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
18940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
189a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
189c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
189e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18a00 5b 44 45 46 41 55 4c 54 5d 0a 23 20 54 68 65 20 6c 69 73 74 20 6f 66 20 6d 6f 64 75 6c 65 73 20 [DEFAULT].#.The.list.of.modules.
18a20 74 6f 20 63 6f 70 79 20 66 72 6f 6d 20 6f 73 6c 6f 2d 69 6e 63 75 62 61 74 6f 72 2e 67 69 74 0a to.copy.from.oslo-incubator.git.
18a40 0a 23 20 54 68 65 20 62 61 73 65 20 6d 6f 64 75 6c 65 20 74 6f 20 68 6f 6c 64 20 74 68 65 20 63 .#.The.base.module.to.hold.the.c
18a60 6f 70 79 20 6f 66 20 6f 70 65 6e 73 74 61 63 6b 2e 63 6f 6d 6d 6f 6e 0a 62 61 73 65 3d 6e 65 74 opy.of.openstack.common.base=net
18a80 77 6f 72 6b 69 6e 67 5f 6f 6e 6f 73 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 working_onos....................
18aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18b00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18b20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18c00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 74 6f 6f 6c 73 2f 00 00 00 00 00 00 00 00 00 00 networking-onos/tools/..........
18c20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18c60 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000755.0001750.0001750.0000
18c80 30 30 30 30 30 30 30 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 34 31 30 35 00 20 35 00 00 00 0000000.12627513442.014105..5...
18ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18d00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
18d20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
18d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18e00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 74 6f 6f 6c 73 2f 77 69 74 68 5f 76 65 6e 76 2e networking-onos/tools/with_venv.
18e20 73 68 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 sh..............................
18e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18e60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
18e80 30 30 30 31 33 32 33 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 36 34 35 31 00 20 30 00 00 00 0001323.12627513442.016451..0...
18ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18f00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
18f20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
18f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19000 23 21 2f 62 69 6e 2f 62 61 73 68 0a 23 20 43 6f 70 79 72 69 67 68 74 20 32 30 31 31 20 4f 70 65 #!/bin/bash.#.Copyright.2011.Ope
19020 6e 53 74 61 63 6b 20 46 6f 75 6e 64 61 74 69 6f 6e 2e 0a 23 20 41 6c 6c 20 52 69 67 68 74 73 20 nStack.Foundation..#.All.Rights.
19040 52 65 73 65 72 76 65 64 2e 0a 23 0a 23 20 20 20 20 4c 69 63 65 6e 73 65 64 20 75 6e 64 65 72 20 Reserved..#.#....Licensed.under.
19060 74 68 65 20 41 70 61 63 68 65 20 4c 69 63 65 6e 73 65 2c 20 56 65 72 73 69 6f 6e 20 32 2e 30 20 the.Apache.License,.Version.2.0.
19080 28 74 68 65 20 22 4c 69 63 65 6e 73 65 22 29 3b 20 79 6f 75 20 6d 61 79 0a 23 20 20 20 20 6e 6f (the."License");.you.may.#....no
190a0 74 20 75 73 65 20 74 68 69 73 20 66 69 6c 65 20 65 78 63 65 70 74 20 69 6e 20 63 6f 6d 70 6c 69 t.use.this.file.except.in.compli
190c0 61 6e 63 65 20 77 69 74 68 20 74 68 65 20 4c 69 63 65 6e 73 65 2e 20 59 6f 75 20 6d 61 79 20 6f ance.with.the.License..You.may.o
190e0 62 74 61 69 6e 0a 23 20 20 20 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 4c 69 63 65 6e 73 65 btain.#....a.copy.of.the.License
19100 20 61 74 0a 23 0a 23 20 20 20 20 20 20 20 20 20 68 74 74 70 3a 2f 2f 77 77 77 2e 61 70 61 63 68 .at.#.#.........http://www.apach
19120 65 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 4c 49 43 45 4e 53 45 2d 32 2e 30 0a 23 0a 23 20 20 e.org/licenses/LICENSE-2.0.#.#..
19140 20 20 55 6e 6c 65 73 73 20 72 65 71 75 69 72 65 64 20 62 79 20 61 70 70 6c 69 63 61 62 6c 65 20 ..Unless.required.by.applicable.
19160 6c 61 77 20 6f 72 20 61 67 72 65 65 64 20 74 6f 20 69 6e 20 77 72 69 74 69 6e 67 2c 20 73 6f 66 law.or.agreed.to.in.writing,.sof
19180 74 77 61 72 65 0a 23 20 20 20 20 64 69 73 74 72 69 62 75 74 65 64 20 75 6e 64 65 72 20 74 68 65 tware.#....distributed.under.the
191a0 20 4c 69 63 65 6e 73 65 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 6f 6e 20 61 6e 20 22 41 .License.is.distributed.on.an."A
191c0 53 20 49 53 22 20 42 41 53 49 53 2c 20 57 49 54 48 4f 55 54 0a 23 20 20 20 20 57 41 52 52 41 4e S.IS".BASIS,.WITHOUT.#....WARRAN
191e0 54 49 45 53 20 4f 52 20 43 4f 4e 44 49 54 49 4f 4e 53 20 4f 46 20 41 4e 59 20 4b 49 4e 44 2c 20 TIES.OR.CONDITIONS.OF.ANY.KIND,.
19200 65 69 74 68 65 72 20 65 78 70 72 65 73 73 20 6f 72 20 69 6d 70 6c 69 65 64 2e 20 53 65 65 20 74 either.express.or.implied..See.t
19220 68 65 0a 23 20 20 20 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 74 68 65 20 73 70 65 63 69 66 69 63 he.#....License.for.the.specific
19240 20 6c 61 6e 67 75 61 67 65 20 67 6f 76 65 72 6e 69 6e 67 20 70 65 72 6d 69 73 73 69 6f 6e 73 20 .language.governing.permissions.
19260 61 6e 64 20 6c 69 6d 69 74 61 74 69 6f 6e 73 0a 23 20 20 20 20 75 6e 64 65 72 20 74 68 65 20 4c and.limitations.#....under.the.L
19280 69 63 65 6e 73 65 2e 0a 0a 54 4f 4f 4c 53 3d 60 64 69 72 6e 61 6d 65 20 24 30 60 0a 56 45 4e 56 icense...TOOLS=`dirname.$0`.VENV
192a0 3d 24 54 4f 4f 4c 53 2f 2e 2e 2f 2e 76 65 6e 76 0a 73 6f 75 72 63 65 20 24 56 45 4e 56 2f 62 69 =$TOOLS/../.venv.source.$VENV/bi
192c0 6e 2f 61 63 74 69 76 61 74 65 20 26 26 20 22 24 40 22 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 n/activate.&&."$@"..............
192e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
193a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
193c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
193e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19400 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 74 6f 6f 6c 73 2f 69 6e 73 74 61 6c 6c 5f 76 65 networking-onos/tools/install_ve
19420 6e 76 5f 63 6f 6d 6d 6f 6e 2e 70 79 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 nv_common.py....................
19440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19460 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
19480 30 30 31 33 35 30 37 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 30 35 34 31 00 20 30 00 00 00 0013507.12627513442.020541..0...
194a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
194c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
194e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19500 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
19520 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
19540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
195a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
195c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
195e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19600 23 20 43 6f 70 79 72 69 67 68 74 20 32 30 31 33 20 4f 70 65 6e 53 74 61 63 6b 20 46 6f 75 6e 64 #.Copyright.2013.OpenStack.Found
19620 61 74 69 6f 6e 0a 23 20 43 6f 70 79 72 69 67 68 74 20 32 30 31 33 20 49 42 4d 20 43 6f 72 70 2e ation.#.Copyright.2013.IBM.Corp.
19640 0a 23 0a 23 20 20 20 20 4c 69 63 65 6e 73 65 64 20 75 6e 64 65 72 20 74 68 65 20 41 70 61 63 68 .#.#....Licensed.under.the.Apach
19660 65 20 4c 69 63 65 6e 73 65 2c 20 56 65 72 73 69 6f 6e 20 32 2e 30 20 28 74 68 65 20 22 4c 69 63 e.License,.Version.2.0.(the."Lic
19680 65 6e 73 65 22 29 3b 20 79 6f 75 20 6d 61 79 0a 23 20 20 20 20 6e 6f 74 20 75 73 65 20 74 68 69 ense");.you.may.#....not.use.thi
196a0 73 20 66 69 6c 65 20 65 78 63 65 70 74 20 69 6e 20 63 6f 6d 70 6c 69 61 6e 63 65 20 77 69 74 68 s.file.except.in.compliance.with
196c0 20 74 68 65 20 4c 69 63 65 6e 73 65 2e 20 59 6f 75 20 6d 61 79 20 6f 62 74 61 69 6e 0a 23 20 20 .the.License..You.may.obtain.#..
196e0 20 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 4c 69 63 65 6e 73 65 20 61 74 0a 23 0a 23 20 20 ..a.copy.of.the.License.at.#.#..
19700 20 20 20 20 20 20 20 68 74 74 70 3a 2f 2f 77 77 77 2e 61 70 61 63 68 65 2e 6f 72 67 2f 6c 69 63 .......http://www.apache.org/lic
19720 65 6e 73 65 73 2f 4c 49 43 45 4e 53 45 2d 32 2e 30 0a 23 0a 23 20 20 20 20 55 6e 6c 65 73 73 20 enses/LICENSE-2.0.#.#....Unless.
19740 72 65 71 75 69 72 65 64 20 62 79 20 61 70 70 6c 69 63 61 62 6c 65 20 6c 61 77 20 6f 72 20 61 67 required.by.applicable.law.or.ag
19760 72 65 65 64 20 74 6f 20 69 6e 20 77 72 69 74 69 6e 67 2c 20 73 6f 66 74 77 61 72 65 0a 23 20 20 reed.to.in.writing,.software.#..
19780 20 20 64 69 73 74 72 69 62 75 74 65 64 20 75 6e 64 65 72 20 74 68 65 20 4c 69 63 65 6e 73 65 20 ..distributed.under.the.License.
197a0 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 6f 6e 20 61 6e 20 22 41 53 20 49 53 22 20 42 41 53 is.distributed.on.an."AS.IS".BAS
197c0 49 53 2c 20 57 49 54 48 4f 55 54 0a 23 20 20 20 20 57 41 52 52 41 4e 54 49 45 53 20 4f 52 20 43 IS,.WITHOUT.#....WARRANTIES.OR.C
197e0 4f 4e 44 49 54 49 4f 4e 53 20 4f 46 20 41 4e 59 20 4b 49 4e 44 2c 20 65 69 74 68 65 72 20 65 78 ONDITIONS.OF.ANY.KIND,.either.ex
19800 70 72 65 73 73 20 6f 72 20 69 6d 70 6c 69 65 64 2e 20 53 65 65 20 74 68 65 0a 23 20 20 20 20 4c press.or.implied..See.the.#....L
19820 69 63 65 6e 73 65 20 66 6f 72 20 74 68 65 20 73 70 65 63 69 66 69 63 20 6c 61 6e 67 75 61 67 65 icense.for.the.specific.language
19840 20 67 6f 76 65 72 6e 69 6e 67 20 70 65 72 6d 69 73 73 69 6f 6e 73 20 61 6e 64 20 6c 69 6d 69 74 .governing.permissions.and.limit
19860 61 74 69 6f 6e 73 0a 23 20 20 20 20 75 6e 64 65 72 20 74 68 65 20 4c 69 63 65 6e 73 65 2e 0a 0a ations.#....under.the.License...
19880 22 22 22 50 72 6f 76 69 64 65 73 20 6d 65 74 68 6f 64 73 20 6e 65 65 64 65 64 20 62 79 20 69 6e """Provides.methods.needed.by.in
198a0 73 74 61 6c 6c 61 74 69 6f 6e 20 73 63 72 69 70 74 20 66 6f 72 20 4f 70 65 6e 53 74 61 63 6b 20 stallation.script.for.OpenStack.
198c0 64 65 76 65 6c 6f 70 6d 65 6e 74 0a 76 69 72 74 75 61 6c 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 73 development.virtual.environments
198e0 2e 0a 0a 53 69 6e 63 65 20 74 68 69 73 20 73 63 72 69 70 74 20 69 73 20 75 73 65 64 20 74 6f 20 ...Since.this.script.is.used.to.
19900 62 6f 6f 74 73 74 72 61 70 20 61 20 76 69 72 74 75 61 6c 65 6e 76 20 66 72 6f 6d 20 74 68 65 20 bootstrap.a.virtualenv.from.the.
19920 73 79 73 74 65 6d 27 73 20 50 79 74 68 6f 6e 0a 65 6e 76 69 72 6f 6e 6d 65 6e 74 2c 20 69 74 20 system's.Python.environment,.it.
19940 73 68 6f 75 6c 64 20 62 65 20 6b 65 70 74 20 73 74 72 69 63 74 6c 79 20 63 6f 6d 70 61 74 69 62 should.be.kept.strictly.compatib
19960 6c 65 20 77 69 74 68 20 50 79 74 68 6f 6e 20 32 2e 36 2e 0a 0a 53 79 6e 63 65 64 20 69 6e 20 66 le.with.Python.2.6...Synced.in.f
19980 72 6f 6d 20 6f 70 65 6e 73 74 61 63 6b 2d 63 6f 6d 6d 6f 6e 0a 22 22 22 0a 0a 66 72 6f 6d 20 5f rom.openstack-common."""..from._
199a0 5f 66 75 74 75 72 65 5f 5f 20 69 6d 70 6f 72 74 20 70 72 69 6e 74 5f 66 75 6e 63 74 69 6f 6e 0a _future__.import.print_function.
199c0 0a 69 6d 70 6f 72 74 20 6f 70 74 70 61 72 73 65 0a 69 6d 70 6f 72 74 20 6f 73 0a 69 6d 70 6f 72 .import.optparse.import.os.impor
199e0 74 20 73 75 62 70 72 6f 63 65 73 73 0a 69 6d 70 6f 72 74 20 73 79 73 0a 0a 0a 63 6c 61 73 73 20 t.subprocess.import.sys...class.
19a00 49 6e 73 74 61 6c 6c 56 65 6e 76 28 6f 62 6a 65 63 74 29 3a 0a 0a 20 20 20 20 64 65 66 20 5f 5f InstallVenv(object):......def.__
19a20 69 6e 69 74 5f 5f 28 73 65 6c 66 2c 20 72 6f 6f 74 2c 20 76 65 6e 76 2c 20 72 65 71 75 69 72 65 init__(self,.root,.venv,.require
19a40 6d 65 6e 74 73 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 65 73 74 5f 72 65 71 ments,..................test_req
19a60 75 69 72 65 6d 65 6e 74 73 2c 20 70 79 5f 76 65 72 73 69 6f 6e 2c 0a 20 20 20 20 20 20 20 20 20 uirements,.py_version,..........
19a80 20 20 20 20 20 20 20 20 70 72 6f 6a 65 63 74 29 3a 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 72 ........project):.........self.r
19aa0 6f 6f 74 20 3d 20 72 6f 6f 74 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 76 65 6e 76 20 3d 20 76 oot.=.root.........self.venv.=.v
19ac0 65 6e 76 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 72 65 71 75 69 72 65 6d 65 6e 74 73 20 3d 20 env.........self.requirements.=.
19ae0 72 65 71 75 69 72 65 6d 65 6e 74 73 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 74 65 73 74 5f 72 requirements.........self.test_r
19b00 65 71 75 69 72 65 6d 65 6e 74 73 20 3d 20 74 65 73 74 5f 72 65 71 75 69 72 65 6d 65 6e 74 73 0a equirements.=.test_requirements.
19b20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 70 79 5f 76 65 72 73 69 6f 6e 20 3d 20 70 79 5f 76 65 72 ........self.py_version.=.py_ver
19b40 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 70 72 6f 6a 65 63 74 20 3d 20 70 72 6f 6a sion.........self.project.=.proj
19b60 65 63 74 0a 0a 20 20 20 20 64 65 66 20 64 69 65 28 73 65 6c 66 2c 20 6d 65 73 73 61 67 65 2c 20 ect......def.die(self,.message,.
19b80 2a 61 72 67 73 29 3a 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 6d 65 73 73 61 67 65 20 25 20 *args):.........print(message.%.
19ba0 61 72 67 73 2c 20 66 69 6c 65 3d 73 79 73 2e 73 74 64 65 72 72 29 0a 20 20 20 20 20 20 20 20 73 args,.file=sys.stderr).........s
19bc0 79 73 2e 65 78 69 74 28 31 29 0a 0a 20 20 20 20 64 65 66 20 63 68 65 63 6b 5f 70 79 74 68 6f 6e ys.exit(1)......def.check_python
19be0 5f 76 65 72 73 69 6f 6e 28 73 65 6c 66 29 3a 0a 20 20 20 20 20 20 20 20 69 66 20 73 79 73 2e 76 _version(self):.........if.sys.v
19c00 65 72 73 69 6f 6e 5f 69 6e 66 6f 20 3c 20 28 32 2c 20 36 29 3a 0a 20 20 20 20 20 20 20 20 20 20 ersion_info.<.(2,.6):...........
19c20 20 20 73 65 6c 66 2e 64 69 65 28 22 4e 65 65 64 20 50 79 74 68 6f 6e 20 56 65 72 73 69 6f 6e 20 ..self.die("Need.Python.Version.
19c40 3e 3d 20 32 2e 36 22 29 0a 0a 20 20 20 20 64 65 66 20 72 75 6e 5f 63 6f 6d 6d 61 6e 64 5f 77 69 >=.2.6")......def.run_command_wi
19c60 74 68 5f 63 6f 64 65 28 73 65 6c 66 2c 20 63 6d 64 2c 20 72 65 64 69 72 65 63 74 5f 6f 75 74 70 th_code(self,.cmd,.redirect_outp
19c80 75 74 3d 54 72 75 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ut=True,........................
19ca0 20 20 20 20 20 20 20 63 68 65 63 6b 5f 65 78 69 74 5f 63 6f 64 65 3d 54 72 75 65 29 3a 0a 20 20 .......check_exit_code=True):...
19cc0 20 20 20 20 20 20 22 22 22 52 75 6e 73 20 61 20 63 6f 6d 6d 61 6e 64 20 69 6e 20 61 6e 20 6f 75 ......"""Runs.a.command.in.an.ou
19ce0 74 2d 6f 66 2d 70 72 6f 63 65 73 73 20 73 68 65 6c 6c 2e 0a 0a 20 20 20 20 20 20 20 20 52 65 74 t-of-process.shell...........Ret
19d00 75 72 6e 73 20 74 68 65 20 6f 75 74 70 75 74 20 6f 66 20 74 68 61 74 20 63 6f 6d 6d 61 6e 64 2e urns.the.output.of.that.command.
19d20 20 57 6f 72 6b 69 6e 67 20 64 69 72 65 63 74 6f 72 79 20 69 73 20 73 65 6c 66 2e 72 6f 6f 74 2e .Working.directory.is.self.root.
19d40 0a 20 20 20 20 20 20 20 20 22 22 22 0a 20 20 20 20 20 20 20 20 69 66 20 72 65 64 69 72 65 63 74 .........""".........if.redirect
19d60 5f 6f 75 74 70 75 74 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 64 6f 75 74 20 3d 20 73 75 _output:.............stdout.=.su
19d80 62 70 72 6f 63 65 73 73 2e 50 49 50 45 0a 20 20 20 20 20 20 20 20 65 6c 73 65 3a 0a 20 20 20 20 bprocess.PIPE.........else:.....
19da0 20 20 20 20 20 20 20 20 73 74 64 6f 75 74 20 3d 20 4e 6f 6e 65 0a 0a 20 20 20 20 20 20 20 20 70 ........stdout.=.None..........p
19dc0 72 6f 63 20 3d 20 73 75 62 70 72 6f 63 65 73 73 2e 50 6f 70 65 6e 28 63 6d 64 2c 20 63 77 64 3d roc.=.subprocess.Popen(cmd,.cwd=
19de0 73 65 6c 66 2e 72 6f 6f 74 2c 20 73 74 64 6f 75 74 3d 73 74 64 6f 75 74 29 0a 20 20 20 20 20 20 self.root,.stdout=stdout).......
19e00 20 20 6f 75 74 70 75 74 20 3d 20 70 72 6f 63 2e 63 6f 6d 6d 75 6e 69 63 61 74 65 28 29 5b 30 5d ..output.=.proc.communicate()[0]
19e20 0a 20 20 20 20 20 20 20 20 69 66 20 63 68 65 63 6b 5f 65 78 69 74 5f 63 6f 64 65 20 61 6e 64 20 .........if.check_exit_code.and.
19e40 70 72 6f 63 2e 72 65 74 75 72 6e 63 6f 64 65 20 21 3d 20 30 3a 0a 20 20 20 20 20 20 20 20 20 20 proc.returncode.!=.0:...........
19e60 20 20 73 65 6c 66 2e 64 69 65 28 27 43 6f 6d 6d 61 6e 64 20 22 25 73 22 20 66 61 69 6c 65 64 2e ..self.die('Command."%s".failed.
19e80 5c 6e 25 73 27 2c 20 27 20 27 2e 6a 6f 69 6e 28 63 6d 64 29 2c 20 6f 75 74 70 75 74 29 0a 20 20 \n%s',.'.'.join(cmd),.output)...
19ea0 20 20 20 20 20 20 72 65 74 75 72 6e 20 28 6f 75 74 70 75 74 2c 20 70 72 6f 63 2e 72 65 74 75 72 ......return.(output,.proc.retur
19ec0 6e 63 6f 64 65 29 0a 0a 20 20 20 20 64 65 66 20 72 75 6e 5f 63 6f 6d 6d 61 6e 64 28 73 65 6c 66 ncode)......def.run_command(self
19ee0 2c 20 63 6d 64 2c 20 72 65 64 69 72 65 63 74 5f 6f 75 74 70 75 74 3d 54 72 75 65 2c 20 63 68 65 ,.cmd,.redirect_output=True,.che
19f00 63 6b 5f 65 78 69 74 5f 63 6f 64 65 3d 54 72 75 65 29 3a 0a 20 20 20 20 20 20 20 20 72 65 74 75 ck_exit_code=True):.........retu
19f20 72 6e 20 73 65 6c 66 2e 72 75 6e 5f 63 6f 6d 6d 61 6e 64 5f 77 69 74 68 5f 63 6f 64 65 28 63 6d rn.self.run_command_with_code(cm
19f40 64 2c 20 72 65 64 69 72 65 63 74 5f 6f 75 74 70 75 74 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 d,.redirect_output,.............
19f60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 68 ..............................ch
19f80 65 63 6b 5f 65 78 69 74 5f 63 6f 64 65 29 5b 30 5d 0a 0a 20 20 20 20 64 65 66 20 67 65 74 5f 64 eck_exit_code)[0]......def.get_d
19fa0 69 73 74 72 6f 28 73 65 6c 66 29 3a 0a 20 20 20 20 20 20 20 20 69 66 20 28 6f 73 2e 70 61 74 68 istro(self):.........if.(os.path
19fc0 2e 65 78 69 73 74 73 28 27 2f 65 74 63 2f 66 65 64 6f 72 61 2d 72 65 6c 65 61 73 65 27 29 20 6f .exists('/etc/fedora-release').o
19fe0 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 73 2e 70 61 74 68 2e 65 78 69 73 74 73 r.................os.path.exists
1a000 28 27 2f 65 74 63 2f 72 65 64 68 61 74 2d 72 65 6c 65 61 73 65 27 29 29 3a 0a 20 20 20 20 20 20 ('/etc/redhat-release')):.......
1a020 20 20 20 20 20 20 72 65 74 75 72 6e 20 46 65 64 6f 72 61 28 0a 20 20 20 20 20 20 20 20 20 20 20 ......return.Fedora(............
1a040 20 20 20 20 20 73 65 6c 66 2e 72 6f 6f 74 2c 20 73 65 6c 66 2e 76 65 6e 76 2c 20 73 65 6c 66 2e .....self.root,.self.venv,.self.
1a060 72 65 71 75 69 72 65 6d 65 6e 74 73 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 65 requirements,.................se
1a080 6c 66 2e 74 65 73 74 5f 72 65 71 75 69 72 65 6d 65 6e 74 73 2c 20 73 65 6c 66 2e 70 79 5f 76 65 lf.test_requirements,.self.py_ve
1a0a0 72 73 69 6f 6e 2c 20 73 65 6c 66 2e 70 72 6f 6a 65 63 74 29 0a 20 20 20 20 20 20 20 20 65 6c 73 rsion,.self.project).........els
1a0c0 65 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 44 69 73 74 72 6f 28 0a 20 20 e:.............return.Distro(...
1a0e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 72 6f 6f 74 2c 20 73 65 6c 66 2e 76 65 ..............self.root,.self.ve
1a100 6e 76 2c 20 73 65 6c 66 2e 72 65 71 75 69 72 65 6d 65 6e 74 73 2c 0a 20 20 20 20 20 20 20 20 20 nv,.self.requirements,..........
1a120 20 20 20 20 20 20 20 73 65 6c 66 2e 74 65 73 74 5f 72 65 71 75 69 72 65 6d 65 6e 74 73 2c 20 73 .......self.test_requirements,.s
1a140 65 6c 66 2e 70 79 5f 76 65 72 73 69 6f 6e 2c 20 73 65 6c 66 2e 70 72 6f 6a 65 63 74 29 0a 0a 20 elf.py_version,.self.project)...
1a160 20 20 20 64 65 66 20 63 68 65 63 6b 5f 64 65 70 65 6e 64 65 6e 63 69 65 73 28 73 65 6c 66 29 3a ...def.check_dependencies(self):
1a180 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 67 65 74 5f 64 69 73 74 72 6f 28 29 2e 69 6e 73 74 61 .........self.get_distro().insta
1a1a0 6c 6c 5f 76 69 72 74 75 61 6c 65 6e 76 28 29 0a 0a 20 20 20 20 64 65 66 20 63 72 65 61 74 65 5f ll_virtualenv()......def.create_
1a1c0 76 69 72 74 75 61 6c 65 6e 76 28 73 65 6c 66 2c 20 6e 6f 5f 73 69 74 65 5f 70 61 63 6b 61 67 65 virtualenv(self,.no_site_package
1a1e0 73 3d 54 72 75 65 29 3a 0a 20 20 20 20 20 20 20 20 22 22 22 43 72 65 61 74 65 73 20 74 68 65 20 s=True):........."""Creates.the.
1a200 76 69 72 74 75 61 6c 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 61 6e 64 20 69 6e 73 74 61 6c 6c 73 virtual.environment.and.installs
1a220 20 50 49 50 2e 0a 0a 20 20 20 20 20 20 20 20 43 72 65 61 74 65 73 20 74 68 65 20 76 69 72 74 75 .PIP...........Creates.the.virtu
1a240 61 6c 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 61 6e 64 20 69 6e 73 74 61 6c 6c 73 20 50 49 50 20 al.environment.and.installs.PIP.
1a260 6f 6e 6c 79 20 69 6e 74 6f 20 74 68 65 0a 20 20 20 20 20 20 20 20 76 69 72 74 75 61 6c 20 65 6e only.into.the.........virtual.en
1a280 76 69 72 6f 6e 6d 65 6e 74 2e 0a 20 20 20 20 20 20 20 20 22 22 22 0a 20 20 20 20 20 20 20 20 69 vironment..........""".........i
1a2a0 66 20 6e 6f 74 20 6f 73 2e 70 61 74 68 2e 69 73 64 69 72 28 73 65 6c 66 2e 76 65 6e 76 29 3a 0a f.not.os.path.isdir(self.venv):.
1a2c0 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 27 43 72 65 61 74 69 6e 67 20 76 65 6e 76 ............print('Creating.venv
1a2e0 2e 2e 2e 27 2c 20 65 6e 64 3d 27 20 27 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 6e 6f ...',.end='.').............if.no
1a300 5f 73 69 74 65 5f 70 61 63 6b 61 67 65 73 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 _site_packages:.................
1a320 73 65 6c 66 2e 72 75 6e 5f 63 6f 6d 6d 61 6e 64 28 5b 27 76 69 72 74 75 61 6c 65 6e 76 27 2c 20 self.run_command(['virtualenv',.
1a340 27 2d 71 27 2c 20 27 2d 2d 6e 6f 2d 73 69 74 65 2d 70 61 63 6b 61 67 65 73 27 2c 0a 20 20 20 20 '-q',.'--no-site-packages',.....
1a360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c .............................sel
1a380 66 2e 76 65 6e 76 5d 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 3a 0a 20 20 20 20 20 f.venv]).............else:......
1a3a0 20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 72 75 6e 5f 63 6f 6d 6d 61 6e 64 28 5b 27 76 69 ...........self.run_command(['vi
1a3c0 72 74 75 61 6c 65 6e 76 27 2c 20 27 2d 71 27 2c 20 73 65 6c 66 2e 76 65 6e 76 5d 29 0a 20 20 20 rtualenv',.'-q',.self.venv])....
1a3e0 20 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 27 64 6f 6e 65 2e 27 29 0a 20 20 20 20 20 20 20 20 .........print('done.').........
1a400 65 6c 73 65 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 22 76 65 6e 76 20 61 6c else:.............print("venv.al
1a420 72 65 61 64 79 20 65 78 69 73 74 73 2e 2e 2e 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 61 ready.exists...").............pa
1a440 73 73 0a 0a 20 20 20 20 64 65 66 20 70 69 70 5f 69 6e 73 74 61 6c 6c 28 73 65 6c 66 2c 20 2a 61 ss......def.pip_install(self,.*a
1a460 72 67 73 29 3a 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 72 75 6e 5f 63 6f 6d 6d 61 6e 64 28 5b rgs):.........self.run_command([
1a480 27 74 6f 6f 6c 73 2f 77 69 74 68 5f 76 65 6e 76 2e 73 68 27 2c 0a 20 20 20 20 20 20 20 20 20 20 'tools/with_venv.sh',...........
1a4a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 70 69 70 27 2c 20 27 69 6e 73 74 61 6c 6c 27 2c ...............'pip',.'install',
1a4c0 20 27 2d 2d 75 70 67 72 61 64 65 27 5d 20 2b 20 6c 69 73 74 28 61 72 67 73 29 2c 0a 20 20 20 20 .'--upgrade'].+.list(args),.....
1a4e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 64 69 72 65 63 74 5f 6f 75 .....................redirect_ou
1a500 74 70 75 74 3d 46 61 6c 73 65 29 0a 0a 20 20 20 20 64 65 66 20 69 6e 73 74 61 6c 6c 5f 64 65 70 tput=False)......def.install_dep
1a520 65 6e 64 65 6e 63 69 65 73 28 73 65 6c 66 29 3a 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 27 endencies(self):.........print('
1a540 49 6e 73 74 61 6c 6c 69 6e 67 20 64 65 70 65 6e 64 65 6e 63 69 65 73 20 77 69 74 68 20 70 69 70 Installing.dependencies.with.pip
1a560 20 28 74 68 69 73 20 63 61 6e 20 74 61 6b 65 20 61 20 77 68 69 6c 65 29 2e 2e 2e 27 29 0a 0a 20 .(this.can.take.a.while)...')...
1a580 20 20 20 20 20 20 20 23 20 46 69 72 73 74 20 74 68 69 6e 67 73 20 66 69 72 73 74 2c 20 6d 61 6b .......#.First.things.first,.mak
1a5a0 65 20 73 75 72 65 20 6f 75 72 20 76 65 6e 76 20 68 61 73 20 74 68 65 20 6c 61 74 65 73 74 20 70 e.sure.our.venv.has.the.latest.p
1a5c0 69 70 20 61 6e 64 0a 20 20 20 20 20 20 20 20 23 20 73 65 74 75 70 74 6f 6f 6c 73 20 61 6e 64 20 ip.and.........#.setuptools.and.
1a5e0 70 62 72 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 70 69 70 5f 69 6e 73 74 61 6c 6c 28 27 70 69 pbr.........self.pip_install('pi
1a600 70 3e 3d 31 2e 34 27 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 70 69 70 5f 69 6e 73 74 61 6c p>=1.4').........self.pip_instal
1a620 6c 28 27 73 65 74 75 70 74 6f 6f 6c 73 27 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 70 69 70 l('setuptools').........self.pip
1a640 5f 69 6e 73 74 61 6c 6c 28 27 70 62 72 27 29 0a 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 70 69 _install('pbr')..........self.pi
1a660 70 5f 69 6e 73 74 61 6c 6c 28 27 2d 72 27 2c 20 73 65 6c 66 2e 72 65 71 75 69 72 65 6d 65 6e 74 p_install('-r',.self.requirement
1a680 73 2c 20 27 2d 72 27 2c 20 73 65 6c 66 2e 74 65 73 74 5f 72 65 71 75 69 72 65 6d 65 6e 74 73 29 s,.'-r',.self.test_requirements)
1a6a0 0a 0a 20 20 20 20 64 65 66 20 70 61 72 73 65 5f 61 72 67 73 28 73 65 6c 66 2c 20 61 72 67 76 29 ......def.parse_args(self,.argv)
1a6c0 3a 0a 20 20 20 20 20 20 20 20 22 22 22 50 61 72 73 65 73 20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 :........."""Parses.command-line
1a6e0 20 61 72 67 75 6d 65 6e 74 73 2e 22 22 22 0a 20 20 20 20 20 20 20 20 70 61 72 73 65 72 20 3d 20 .arguments.""".........parser.=.
1a700 6f 70 74 70 61 72 73 65 2e 4f 70 74 69 6f 6e 50 61 72 73 65 72 28 29 0a 20 20 20 20 20 20 20 20 optparse.OptionParser().........
1a720 70 61 72 73 65 72 2e 61 64 64 5f 6f 70 74 69 6f 6e 28 27 2d 6e 27 2c 20 27 2d 2d 6e 6f 2d 73 69 parser.add_option('-n',.'--no-si
1a740 74 65 2d 70 61 63 6b 61 67 65 73 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 te-packages',...................
1a760 20 20 20 20 20 20 20 20 61 63 74 69 6f 6e 3d 27 73 74 6f 72 65 5f 74 72 75 65 27 2c 0a 20 20 20 ........action='store_true',....
1a780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 68 65 6c 70 3d 22 44 6f 20 .......................help="Do.
1a7a0 6e 6f 74 20 69 6e 68 65 72 69 74 20 70 61 63 6b 61 67 65 73 20 66 72 6f 6d 20 67 6c 6f 62 61 6c not.inherit.packages.from.global
1a7c0 20 50 79 74 68 6f 6e 20 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .Python.".......................
1a7e0 20 20 20 20 20 20 20 20 20 22 69 6e 73 74 61 6c 6c 2e 22 29 0a 20 20 20 20 20 20 20 20 72 65 74 ........."install.").........ret
1a800 75 72 6e 20 70 61 72 73 65 72 2e 70 61 72 73 65 5f 61 72 67 73 28 61 72 67 76 5b 31 3a 5d 29 5b urn.parser.parse_args(argv[1:])[
1a820 30 5d 0a 0a 0a 63 6c 61 73 73 20 44 69 73 74 72 6f 28 49 6e 73 74 61 6c 6c 56 65 6e 76 29 3a 0a 0]...class.Distro(InstallVenv):.
1a840 0a 20 20 20 20 64 65 66 20 63 68 65 63 6b 5f 63 6d 64 28 73 65 6c 66 2c 20 63 6d 64 29 3a 0a 20 .....def.check_cmd(self,.cmd):..
1a860 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 62 6f 6f 6c 28 73 65 6c 66 2e 72 75 6e 5f 63 6f 6d 6d .......return.bool(self.run_comm
1a880 61 6e 64 28 5b 27 77 68 69 63 68 27 2c 20 63 6d 64 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 and(['which',.cmd],.............
1a8a0 20 20 20 20 20 20 20 20 63 68 65 63 6b 5f 65 78 69 74 5f 63 6f 64 65 3d 46 61 6c 73 65 29 2e 73 ........check_exit_code=False).s
1a8c0 74 72 69 70 28 29 29 0a 0a 20 20 20 20 64 65 66 20 69 6e 73 74 61 6c 6c 5f 76 69 72 74 75 61 6c trip())......def.install_virtual
1a8e0 65 6e 76 28 73 65 6c 66 29 3a 0a 20 20 20 20 20 20 20 20 69 66 20 73 65 6c 66 2e 63 68 65 63 6b env(self):.........if.self.check
1a900 5f 63 6d 64 28 27 76 69 72 74 75 61 6c 65 6e 76 27 29 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 _cmd('virtualenv'):.............
1a920 72 65 74 75 72 6e 0a 0a 20 20 20 20 20 20 20 20 69 66 20 73 65 6c 66 2e 63 68 65 63 6b 5f 63 6d return..........if.self.check_cm
1a940 64 28 27 65 61 73 79 5f 69 6e 73 74 61 6c 6c 27 29 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 d('easy_install'):.............p
1a960 72 69 6e 74 28 27 49 6e 73 74 61 6c 6c 69 6e 67 20 76 69 72 74 75 61 6c 65 6e 76 20 76 69 61 20 rint('Installing.virtualenv.via.
1a980 65 61 73 79 5f 69 6e 73 74 61 6c 6c 2e 2e 2e 27 2c 20 65 6e 64 3d 27 20 27 29 0a 20 20 20 20 20 easy_install...',.end='.')......
1a9a0 20 20 20 20 20 20 20 69 66 20 73 65 6c 66 2e 72 75 6e 5f 63 6f 6d 6d 61 6e 64 28 5b 27 65 61 73 .......if.self.run_command(['eas
1a9c0 79 5f 69 6e 73 74 61 6c 6c 27 2c 20 27 76 69 72 74 75 61 6c 65 6e 76 27 5d 29 3a 0a 20 20 20 20 y_install',.'virtualenv']):.....
1a9e0 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 27 53 75 63 63 65 65 64 65 64 27 29 0a 20 ............print('Succeeded')..
1aa00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 0a 20 20 20 20 20 20 20 20 20 20 ...............return...........
1aa20 20 20 65 6c 73 65 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 27 46 ..else:.................print('F
1aa40 61 69 6c 65 64 27 29 0a 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 64 69 65 28 27 45 52 52 4f 52 ailed')..........self.die('ERROR
1aa60 3a 20 76 69 72 74 75 61 6c 65 6e 76 20 6e 6f 74 20 66 6f 75 6e 64 2e 5c 6e 5c 6e 25 73 20 64 65 :.virtualenv.not.found.\n\n%s.de
1aa80 76 65 6c 6f 70 6d 65 6e 74 27 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 20 72 65 velopment'..................'.re
1aaa0 71 75 69 72 65 73 20 76 69 72 74 75 61 6c 65 6e 76 2c 20 70 6c 65 61 73 65 20 69 6e 73 74 61 6c quires.virtualenv,.please.instal
1aac0 6c 20 69 74 20 75 73 69 6e 67 20 79 6f 75 72 27 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 l.it.using.your'................
1aae0 20 20 27 20 66 61 76 6f 72 69 74 65 20 70 61 63 6b 61 67 65 20 6d 61 6e 61 67 65 6d 65 6e 74 20 ..'.favorite.package.management.
1ab00 74 6f 6f 6c 27 20 25 20 73 65 6c 66 2e 70 72 6f 6a 65 63 74 29 0a 0a 0a 63 6c 61 73 73 20 46 65 tool'.%.self.project)...class.Fe
1ab20 64 6f 72 61 28 44 69 73 74 72 6f 29 3a 0a 20 20 20 20 22 22 22 54 68 69 73 20 63 6f 76 65 72 73 dora(Distro):....."""This.covers
1ab40 20 61 6c 6c 20 46 65 64 6f 72 61 2d 62 61 73 65 64 20 64 69 73 74 72 69 62 75 74 69 6f 6e 73 2e .all.Fedora-based.distributions.
1ab60 0a 0a 20 20 20 20 49 6e 63 6c 75 64 65 73 3a 20 46 65 64 6f 72 61 2c 20 52 48 45 4c 2c 20 43 65 ......Includes:.Fedora,.RHEL,.Ce
1ab80 6e 74 4f 53 2c 20 53 63 69 65 6e 74 69 66 69 63 20 4c 69 6e 75 78 0a 20 20 20 20 22 22 22 0a 0a ntOS,.Scientific.Linux....."""..
1aba0 20 20 20 20 64 65 66 20 63 68 65 63 6b 5f 70 6b 67 28 73 65 6c 66 2c 20 70 6b 67 29 3a 0a 20 20 ....def.check_pkg(self,.pkg):...
1abc0 20 20 20 20 20 20 72 65 74 75 72 6e 20 73 65 6c 66 2e 72 75 6e 5f 63 6f 6d 6d 61 6e 64 5f 77 69 ......return.self.run_command_wi
1abe0 74 68 5f 63 6f 64 65 28 5b 27 72 70 6d 27 2c 20 27 2d 71 27 2c 20 70 6b 67 5d 2c 0a 20 20 20 20 th_code(['rpm',.'-q',.pkg],.....
1ac00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1ac20 20 20 20 20 20 20 63 68 65 63 6b 5f 65 78 69 74 5f 63 6f 64 65 3d 46 61 6c 73 65 29 5b 31 5d 20 ......check_exit_code=False)[1].
1ac40 3d 3d 20 30 0a 0a 20 20 20 20 64 65 66 20 69 6e 73 74 61 6c 6c 5f 76 69 72 74 75 61 6c 65 6e 76 ==.0......def.install_virtualenv
1ac60 28 73 65 6c 66 29 3a 0a 20 20 20 20 20 20 20 20 69 66 20 73 65 6c 66 2e 63 68 65 63 6b 5f 63 6d (self):.........if.self.check_cm
1ac80 64 28 27 76 69 72 74 75 61 6c 65 6e 76 27 29 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 d('virtualenv'):.............ret
1aca0 75 72 6e 0a 0a 20 20 20 20 20 20 20 20 69 66 20 6e 6f 74 20 73 65 6c 66 2e 63 68 65 63 6b 5f 70 urn..........if.not.self.check_p
1acc0 6b 67 28 27 70 79 74 68 6f 6e 2d 76 69 72 74 75 61 6c 65 6e 76 27 29 3a 0a 20 20 20 20 20 20 20 kg('python-virtualenv'):........
1ace0 20 20 20 20 20 73 65 6c 66 2e 64 69 65 28 22 50 6c 65 61 73 65 20 69 6e 73 74 61 6c 6c 20 27 70 .....self.die("Please.install.'p
1ad00 79 74 68 6f 6e 2d 76 69 72 74 75 61 6c 65 6e 76 27 2e 22 29 0a 0a 20 20 20 20 20 20 20 20 73 75 ython-virtualenv'.")..........su
1ad20 70 65 72 28 46 65 64 6f 72 61 2c 20 73 65 6c 66 29 2e 69 6e 73 74 61 6c 6c 5f 76 69 72 74 75 61 per(Fedora,.self).install_virtua
1ad40 6c 65 6e 76 28 29 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 lenv()..........................
1ad60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ad80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ada0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1adc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ade0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ae00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 74 6f 6f 6c 73 2f 63 68 65 63 6b 5f 69 31 38 6e networking-onos/tools/check_i18n
1ae20 2e 70 79 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .py.............................
1ae40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ae60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
1ae80 30 30 31 32 34 33 34 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 36 33 37 37 00 20 30 00 00 00 0012434.12627513442.016377..0...
1aea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1aec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1aee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1af00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
1af20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
1af40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1af60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1af80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1afa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1afc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1afe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1b000 23 20 20 20 20 43 6f 70 79 72 69 67 68 74 20 32 30 31 32 20 4f 70 65 6e 53 74 61 63 6b 20 46 6f #....Copyright.2012.OpenStack.Fo
1b020 75 6e 64 61 74 69 6f 6e 0a 23 0a 23 20 20 20 20 4c 69 63 65 6e 73 65 64 20 75 6e 64 65 72 20 74 undation.#.#....Licensed.under.t
1b040 68 65 20 41 70 61 63 68 65 20 4c 69 63 65 6e 73 65 2c 20 56 65 72 73 69 6f 6e 20 32 2e 30 20 28 he.Apache.License,.Version.2.0.(
1b060 74 68 65 20 22 4c 69 63 65 6e 73 65 22 29 3b 20 79 6f 75 20 6d 61 79 0a 23 20 20 20 20 6e 6f 74 the."License");.you.may.#....not
1b080 20 75 73 65 20 74 68 69 73 20 66 69 6c 65 20 65 78 63 65 70 74 20 69 6e 20 63 6f 6d 70 6c 69 61 .use.this.file.except.in.complia
1b0a0 6e 63 65 20 77 69 74 68 20 74 68 65 20 4c 69 63 65 6e 73 65 2e 20 59 6f 75 20 6d 61 79 20 6f 62 nce.with.the.License..You.may.ob
1b0c0 74 61 69 6e 0a 23 20 20 20 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 4c 69 63 65 6e 73 65 20 tain.#....a.copy.of.the.License.
1b0e0 61 74 0a 23 0a 23 20 20 20 20 20 20 20 20 20 68 74 74 70 3a 2f 2f 77 77 77 2e 61 70 61 63 68 65 at.#.#.........http://www.apache
1b100 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 4c 49 43 45 4e 53 45 2d 32 2e 30 0a 23 0a 23 20 20 20 .org/licenses/LICENSE-2.0.#.#...
1b120 20 55 6e 6c 65 73 73 20 72 65 71 75 69 72 65 64 20 62 79 20 61 70 70 6c 69 63 61 62 6c 65 20 6c .Unless.required.by.applicable.l
1b140 61 77 20 6f 72 20 61 67 72 65 65 64 20 74 6f 20 69 6e 20 77 72 69 74 69 6e 67 2c 20 73 6f 66 74 aw.or.agreed.to.in.writing,.soft
1b160 77 61 72 65 0a 23 20 20 20 20 64 69 73 74 72 69 62 75 74 65 64 20 75 6e 64 65 72 20 74 68 65 20 ware.#....distributed.under.the.
1b180 4c 69 63 65 6e 73 65 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 6f 6e 20 61 6e 20 22 41 53 License.is.distributed.on.an."AS
1b1a0 20 49 53 22 20 42 41 53 49 53 2c 20 57 49 54 48 4f 55 54 0a 23 20 20 20 20 57 41 52 52 41 4e 54 .IS".BASIS,.WITHOUT.#....WARRANT
1b1c0 49 45 53 20 4f 52 20 43 4f 4e 44 49 54 49 4f 4e 53 20 4f 46 20 41 4e 59 20 4b 49 4e 44 2c 20 65 IES.OR.CONDITIONS.OF.ANY.KIND,.e
1b1e0 69 74 68 65 72 20 65 78 70 72 65 73 73 20 6f 72 20 69 6d 70 6c 69 65 64 2e 20 53 65 65 20 74 68 ither.express.or.implied..See.th
1b200 65 0a 23 20 20 20 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 74 68 65 20 73 70 65 63 69 66 69 63 20 e.#....License.for.the.specific.
1b220 6c 61 6e 67 75 61 67 65 20 67 6f 76 65 72 6e 69 6e 67 20 70 65 72 6d 69 73 73 69 6f 6e 73 20 61 language.governing.permissions.a
1b240 6e 64 20 6c 69 6d 69 74 61 74 69 6f 6e 73 0a 23 20 20 20 20 75 6e 64 65 72 20 74 68 65 20 4c 69 nd.limitations.#....under.the.Li
1b260 63 65 6e 73 65 2e 0a 66 72 6f 6d 20 5f 5f 66 75 74 75 72 65 5f 5f 20 69 6d 70 6f 72 74 20 70 72 cense..from.__future__.import.pr
1b280 69 6e 74 5f 66 75 6e 63 74 69 6f 6e 0a 0a 69 6d 70 6f 72 74 20 63 6f 6d 70 69 6c 65 72 0a 69 6d int_function..import.compiler.im
1b2a0 70 6f 72 74 20 69 6d 70 0a 69 6d 70 6f 72 74 20 6f 73 2e 70 61 74 68 0a 69 6d 70 6f 72 74 20 73 port.imp.import.os.path.import.s
1b2c0 79 73 0a 0a 0a 64 65 66 20 69 73 5f 6c 6f 63 61 6c 69 7a 65 64 28 6e 6f 64 65 29 3a 0a 20 20 20 ys...def.is_localized(node):....
1b2e0 20 22 22 22 43 68 65 63 6b 20 6d 65 73 73 61 67 65 20 77 72 61 70 70 65 64 20 62 79 20 5f 28 29 ."""Check.message.wrapped.by._()
1b300 22 22 22 0a 20 20 20 20 69 66 20 69 73 69 6e 73 74 61 6e 63 65 28 6e 6f 64 65 2e 70 61 72 65 6e """.....if.isinstance(node.paren
1b320 74 2c 20 63 6f 6d 70 69 6c 65 72 2e 61 73 74 2e 43 61 6c 6c 46 75 6e 63 29 3a 0a 20 20 20 20 20 t,.compiler.ast.CallFunc):......
1b340 20 20 20 69 66 20 69 73 69 6e 73 74 61 6e 63 65 28 6e 6f 64 65 2e 70 61 72 65 6e 74 2e 6e 6f 64 ...if.isinstance(node.parent.nod
1b360 65 2c 20 63 6f 6d 70 69 6c 65 72 2e 61 73 74 2e 4e 61 6d 65 29 3a 0a 20 20 20 20 20 20 20 20 20 e,.compiler.ast.Name):..........
1b380 20 20 20 69 66 20 6e 6f 64 65 2e 70 61 72 65 6e 74 2e 6e 6f 64 65 2e 6e 61 6d 65 20 3d 3d 20 27 ...if.node.parent.node.name.==.'
1b3a0 5f 27 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 54 72 75 65 0a _':.................return.True.
1b3c0 20 20 20 20 72 65 74 75 72 6e 20 46 61 6c 73 65 0a 0a 0a 63 6c 61 73 73 20 41 53 54 57 61 6c 6b ....return.False...class.ASTWalk
1b3e0 65 72 28 63 6f 6d 70 69 6c 65 72 2e 76 69 73 69 74 6f 72 2e 41 53 54 56 69 73 69 74 6f 72 29 3a er(compiler.visitor.ASTVisitor):
1b400 0a 0a 20 20 20 20 64 65 66 20 64 65 66 61 75 6c 74 28 73 65 6c 66 2c 20 6e 6f 64 65 2c 20 2a 61 ......def.default(self,.node,.*a
1b420 72 67 73 29 3a 0a 20 20 20 20 20 20 20 20 66 6f 72 20 63 68 69 6c 64 20 69 6e 20 6e 6f 64 65 2e rgs):.........for.child.in.node.
1b440 67 65 74 43 68 69 6c 64 4e 6f 64 65 73 28 29 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 68 69 getChildNodes():.............chi
1b460 6c 64 2e 70 61 72 65 6e 74 20 3d 20 6e 6f 64 65 0a 20 20 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 ld.parent.=.node.........compile
1b480 72 2e 76 69 73 69 74 6f 72 2e 41 53 54 56 69 73 69 74 6f 72 2e 64 65 66 61 75 6c 74 28 73 65 6c r.visitor.ASTVisitor.default(sel
1b4a0 66 2c 20 6e 6f 64 65 2c 20 2a 61 72 67 73 29 0a 0a 0a 63 6c 61 73 73 20 56 69 73 69 74 6f 72 28 f,.node,.*args)...class.Visitor(
1b4c0 6f 62 6a 65 63 74 29 3a 0a 0a 20 20 20 20 64 65 66 20 5f 5f 69 6e 69 74 5f 5f 28 73 65 6c 66 2c object):......def.__init__(self,
1b4e0 20 66 69 6c 65 6e 61 6d 65 2c 20 69 31 38 6e 5f 6d 73 67 5f 70 72 65 64 69 63 61 74 65 73 2c 0a .filename,.i18n_msg_predicates,.
1b500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 73 67 5f 66 6f 72 6d 61 74 5f 63 68 65 63 .................msg_format_chec
1b520 6b 65 72 73 2c 20 64 65 62 75 67 29 3a 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 66 69 6c 65 6e kers,.debug):.........self.filen
1b540 61 6d 65 20 3d 20 66 69 6c 65 6e 61 6d 65 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 64 65 62 75 ame.=.filename.........self.debu
1b560 67 20 3d 20 64 65 62 75 67 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 65 72 72 6f 72 20 3d 20 30 g.=.debug.........self.error.=.0
1b580 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 69 31 38 6e 5f 6d 73 67 5f 70 72 65 64 69 63 61 74 65 .........self.i18n_msg_predicate
1b5a0 73 20 3d 20 69 31 38 6e 5f 6d 73 67 5f 70 72 65 64 69 63 61 74 65 73 0a 20 20 20 20 20 20 20 20 s.=.i18n_msg_predicates.........
1b5c0 73 65 6c 66 2e 6d 73 67 5f 66 6f 72 6d 61 74 5f 63 68 65 63 6b 65 72 73 20 3d 20 6d 73 67 5f 66 self.msg_format_checkers.=.msg_f
1b5e0 6f 72 6d 61 74 5f 63 68 65 63 6b 65 72 73 0a 20 20 20 20 20 20 20 20 77 69 74 68 20 6f 70 65 6e ormat_checkers.........with.open
1b600 28 66 69 6c 65 6e 61 6d 65 29 20 61 73 20 66 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c (filename).as.f:.............sel
1b620 66 2e 6c 69 6e 65 73 20 3d 20 66 2e 72 65 61 64 6c 69 6e 65 73 28 29 0a 0a 20 20 20 20 64 65 66 f.lines.=.f.readlines()......def
1b640 20 76 69 73 69 74 43 6f 6e 73 74 28 73 65 6c 66 2c 20 6e 6f 64 65 29 3a 0a 20 20 20 20 20 20 20 .visitConst(self,.node):........
1b660 20 69 66 20 6e 6f 74 20 69 73 69 6e 73 74 61 6e 63 65 28 6e 6f 64 65 2e 76 61 6c 75 65 2c 20 73 .if.not.isinstance(node.value,.s
1b680 74 72 29 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 0a 0a 20 20 20 20 20 20 20 tr):.............return.........
1b6a0 20 69 66 20 69 73 5f 6c 6f 63 61 6c 69 7a 65 64 28 6e 6f 64 65 29 3a 0a 20 20 20 20 20 20 20 20 .if.is_localized(node):.........
1b6c0 20 20 20 20 66 6f 72 20 28 63 68 65 63 6b 65 72 2c 20 6d 73 67 29 20 69 6e 20 73 65 6c 66 2e 6d ....for.(checker,.msg).in.self.m
1b6e0 73 67 5f 66 6f 72 6d 61 74 5f 63 68 65 63 6b 65 72 73 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 sg_format_checkers:.............
1b700 20 20 20 20 69 66 20 63 68 65 63 6b 65 72 28 6e 6f 64 65 29 3a 0a 20 20 20 20 20 20 20 20 20 20 ....if.checker(node):...........
1b720 20 20 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 27 25 73 3a 25 64 20 25 73 3a 20 25 73 20 45 72 ..........print('%s:%d.%s:.%s.Er
1b740 72 6f 72 3a 20 25 73 27 20 25 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ror:.%s'.%......................
1b760 20 20 20 20 20 28 73 65 6c 66 2e 66 69 6c 65 6e 61 6d 65 2c 20 6e 6f 64 65 2e 6c 69 6e 65 6e 6f .....(self.filename,.node.lineno
1b780 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c ,............................sel
1b7a0 66 2e 6c 69 6e 65 73 5b 6e 6f 64 65 2e 6c 69 6e 65 6e 6f 20 2d 20 31 5d 5b 3a 2d 31 5d 2c 0a 20 f.lines[node.lineno.-.1][:-1],..
1b7c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 68 65 63 6b 65 ..........................checke
1b7e0 72 2e 5f 5f 6e 61 6d 65 5f 5f 2c 20 6d 73 67 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 r.__name__,.msg),...............
1b800 20 20 20 20 20 20 20 20 20 20 20 20 20 66 69 6c 65 3d 73 79 73 2e 73 74 64 65 72 72 29 0a 20 20 .............file=sys.stderr)...
1b820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 65 72 72 6f 72 20 3d 20 31 ..................self.error.=.1
1b840 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 0a 20 20 20 20 .....................return.....
1b860 20 20 20 20 20 20 20 20 69 66 20 64 65 62 75 67 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ........if.debug:...............
1b880 20 20 70 72 69 6e 74 28 27 25 73 3a 25 64 20 25 73 3a 20 25 73 27 20 25 0a 20 20 20 20 20 20 20 ..print('%s:%d.%s:.%s'.%........
1b8a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 6c 66 2e 66 69 6c 65 6e 61 6d 65 2c 20 6e ...............(self.filename,.n
1b8c0 6f 64 65 2e 6c 69 6e 65 6e 6f 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ode.lineno,.....................
1b8e0 20 20 20 73 65 6c 66 2e 6c 69 6e 65 73 5b 6e 6f 64 65 2e 6c 69 6e 65 6e 6f 20 2d 20 31 5d 5b 3a ...self.lines[node.lineno.-.1][:
1b900 2d 31 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 50 61 73 -1],........................"Pas
1b920 73 22 29 29 0a 20 20 20 20 20 20 20 20 65 6c 73 65 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 s")).........else:.............f
1b940 6f 72 20 28 70 72 65 64 69 63 61 74 65 2c 20 61 63 74 69 6f 6e 2c 20 6d 73 67 29 20 69 6e 20 73 or.(predicate,.action,.msg).in.s
1b960 65 6c 66 2e 69 31 38 6e 5f 6d 73 67 5f 70 72 65 64 69 63 61 74 65 73 3a 0a 20 20 20 20 20 20 20 elf.i18n_msg_predicates:........
1b980 20 20 20 20 20 20 20 20 20 69 66 20 70 72 65 64 69 63 61 74 65 28 6e 6f 64 65 29 3a 0a 20 20 20 .........if.predicate(node):....
1b9a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 61 63 74 69 6f 6e 20 3d 3d 20 27 73 .................if.action.==.'s
1b9c0 6b 69 70 27 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 kip':.........................if
1b9e0 20 64 65 62 75 67 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .debug:.........................
1ba00 20 20 20 20 70 72 69 6e 74 28 27 25 73 3a 25 64 20 25 73 3a 20 25 73 27 20 25 0a 20 20 20 20 20 ....print('%s:%d.%s:.%s'.%......
1ba20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 .............................(se
1ba40 6c 66 2e 66 69 6c 65 6e 61 6d 65 2c 20 6e 6f 64 65 2e 6c 69 6e 65 6e 6f 2c 0a 20 20 20 20 20 20 lf.filename,.node.lineno,.......
1ba60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 ............................self
1ba80 2e 6c 69 6e 65 73 5b 6e 6f 64 65 2e 6c 69 6e 65 6e 6f 20 2d 20 31 5d 5b 3a 2d 31 5d 2c 0a 20 20 .lines[node.lineno.-.1][:-1],...
1baa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1bac0 22 50 61 73 73 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 "Pass"))........................
1bae0 20 72 65 74 75 72 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 69 66 .return.....................elif
1bb00 20 61 63 74 69 6f 6e 20 3d 3d 20 27 65 72 72 6f 72 27 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 .action.==.'error':.............
1bb20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 27 25 73 3a 25 64 20 25 73 3a 20 25 73 20 ............print('%s:%d.%s:.%s.
1bb40 45 72 72 6f 72 3a 20 25 73 27 20 25 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 Error:.%s'.%....................
1bb60 20 20 20 20 20 20 20 20 20 20 20 28 73 65 6c 66 2e 66 69 6c 65 6e 61 6d 65 2c 20 6e 6f 64 65 2e ...........(self.filename,.node.
1bb80 6c 69 6e 65 6e 6f 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 lineno,.........................
1bba0 20 20 20 20 20 20 20 73 65 6c 66 2e 6c 69 6e 65 73 5b 6e 6f 64 65 2e 6c 69 6e 65 6e 6f 20 2d 20 .......self.lines[node.lineno.-.
1bbc0 31 5d 5b 3a 2d 31 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 1][:-1],........................
1bbe0 20 20 20 20 20 20 20 20 70 72 65 64 69 63 61 74 65 2e 5f 5f 6e 61 6d 65 5f 5f 2c 20 6d 73 67 29 ........predicate.__name__,.msg)
1bc00 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ,...............................
1bc20 20 66 69 6c 65 3d 73 79 73 2e 73 74 64 65 72 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .file=sys.stderr)...............
1bc40 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 65 72 72 6f 72 20 3d 20 31 0a 20 20 20 20 20 20 20 ..........self.error.=.1........
1bc60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 0a 20 20 20 20 20 20 20 20 .................return.........
1bc80 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 69 66 20 61 63 74 69 6f 6e 20 3d 3d 20 27 77 61 72 6e ............elif.action.==.'warn
1bca0 27 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 6e 74 ':.........................print
1bcc0 28 27 25 73 3a 25 64 20 25 73 3a 20 25 73 27 20 25 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ('%s:%d.%s:.%s'.%...............
1bce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 6c 66 2e 66 69 6c 65 6e 61 6d 65 2c 20 ................(self.filename,.
1bd00 6e 6f 64 65 2e 6c 69 6e 65 6e 6f 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 node.lineno,....................
1bd20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 6c 69 6e 65 73 5b 6e 6f 64 65 2e 6c 69 6e 65 6e ...........self.lines[node.linen
1bd40 6f 20 2d 20 31 5d 5b 3a 2d 31 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 o.-.1][:-1],....................
1bd60 20 20 20 20 20 20 20 20 20 20 20 22 57 61 72 6e 3a 20 25 73 22 20 25 20 6d 73 67 29 29 0a 20 20 ..........."Warn:.%s".%.msg))...
1bd80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 0a 20 20 20 ......................return....
1bda0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 27 50 72 65 64 69 63 61 74 .................print('Predicat
1bdc0 65 20 77 69 74 68 20 77 72 6f 6e 67 20 61 63 74 69 6f 6e 21 27 2c 20 66 69 6c 65 3d 73 79 73 2e e.with.wrong.action!',.file=sys.
1bde0 73 74 64 65 72 72 29 0a 0a 0a 64 65 66 20 69 73 5f 66 69 6c 65 5f 69 6e 5f 62 6c 61 63 6b 5f 6c stderr)...def.is_file_in_black_l
1be00 69 73 74 28 62 6c 61 63 6b 5f 6c 69 73 74 2c 20 66 29 3a 0a 20 20 20 20 66 6f 72 20 66 20 69 6e ist(black_list,.f):.....for.f.in
1be20 20 62 6c 61 63 6b 5f 6c 69 73 74 3a 0a 20 20 20 20 20 20 20 20 69 66 20 6f 73 2e 70 61 74 68 2e .black_list:.........if.os.path.
1be40 61 62 73 70 61 74 68 28 69 6e 70 75 74 5f 66 69 6c 65 29 2e 73 74 61 72 74 73 77 69 74 68 28 0a abspath(input_file).startswith(.
1be60 20 20 20 20 20 20 20 20 20 20 20 20 6f 73 2e 70 61 74 68 2e 61 62 73 70 61 74 68 28 66 29 29 3a ............os.path.abspath(f)):
1be80 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 54 72 75 65 0a 20 20 20 20 72 65 74 .............return.True.....ret
1bea0 75 72 6e 20 46 61 6c 73 65 0a 0a 0a 64 65 66 20 63 68 65 63 6b 5f 69 31 38 6e 28 69 6e 70 75 74 urn.False...def.check_i18n(input
1bec0 5f 66 69 6c 65 2c 20 69 31 38 6e 5f 6d 73 67 5f 70 72 65 64 69 63 61 74 65 73 2c 20 6d 73 67 5f _file,.i18n_msg_predicates,.msg_
1bee0 66 6f 72 6d 61 74 5f 63 68 65 63 6b 65 72 73 2c 20 64 65 62 75 67 29 3a 0a 20 20 20 20 69 6e 70 format_checkers,.debug):.....inp
1bf00 75 74 5f 6d 6f 64 20 3d 20 63 6f 6d 70 69 6c 65 72 2e 70 61 72 73 65 46 69 6c 65 28 69 6e 70 75 ut_mod.=.compiler.parseFile(inpu
1bf20 74 5f 66 69 6c 65 29 0a 20 20 20 20 76 20 3d 20 63 6f 6d 70 69 6c 65 72 2e 76 69 73 69 74 6f 72 t_file).....v.=.compiler.visitor
1bf40 2e 77 61 6c 6b 28 69 6e 70 75 74 5f 6d 6f 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .walk(input_mod,................
1bf60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 56 69 73 69 74 6f 72 28 69 6e 70 75 74 5f 66 69 6c ...............Visitor(input_fil
1bf80 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e,..............................
1bfa0 20 20 20 20 20 20 20 20 20 69 31 38 6e 5f 6d 73 67 5f 70 72 65 64 69 63 61 74 65 73 2c 0a 20 20 .........i18n_msg_predicates,...
1bfc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1bfe0 20 20 20 20 6d 73 67 5f 66 6f 72 6d 61 74 5f 63 68 65 63 6b 65 72 73 2c 0a 20 20 20 20 20 20 20 ....msg_format_checkers,........
1c000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 ...............................d
1c020 65 62 75 67 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ebug),..........................
1c040 20 20 20 20 20 41 53 54 57 61 6c 6b 65 72 28 29 29 0a 20 20 20 20 72 65 74 75 72 6e 20 76 2e 65 .....ASTWalker()).....return.v.e
1c060 72 72 6f 72 0a 0a 0a 69 66 20 5f 5f 6e 61 6d 65 5f 5f 20 3d 3d 20 27 5f 5f 6d 61 69 6e 5f 5f 27 rror...if.__name__.==.'__main__'
1c080 3a 0a 20 20 20 20 69 6e 70 75 74 5f 70 61 74 68 20 3d 20 73 79 73 2e 61 72 67 76 5b 31 5d 0a 20 :.....input_path.=.sys.argv[1]..
1c0a0 20 20 20 63 66 67 5f 70 61 74 68 20 3d 20 73 79 73 2e 61 72 67 76 5b 32 5d 0a 20 20 20 20 74 72 ...cfg_path.=.sys.argv[2].....tr
1c0c0 79 3a 0a 20 20 20 20 20 20 20 20 63 66 67 5f 6d 6f 64 20 3d 20 69 6d 70 2e 6c 6f 61 64 5f 73 6f y:.........cfg_mod.=.imp.load_so
1c0e0 75 72 63 65 28 27 27 2c 20 63 66 67 5f 70 61 74 68 29 0a 20 20 20 20 65 78 63 65 70 74 20 45 78 urce('',.cfg_path).....except.Ex
1c100 63 65 70 74 69 6f 6e 3a 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 22 4c 6f 61 64 20 63 66 67 ception:.........print("Load.cfg
1c120 20 6d 6f 64 75 6c 65 20 66 61 69 6c 65 64 22 2c 20 66 69 6c 65 3d 73 79 73 2e 73 74 64 65 72 72 .module.failed",.file=sys.stderr
1c140 29 0a 20 20 20 20 20 20 20 20 73 79 73 2e 65 78 69 74 28 31 29 0a 0a 20 20 20 20 69 31 38 6e 5f ).........sys.exit(1)......i18n_
1c160 6d 73 67 5f 70 72 65 64 69 63 61 74 65 73 20 3d 20 63 66 67 5f 6d 6f 64 2e 69 31 38 6e 5f 6d 73 msg_predicates.=.cfg_mod.i18n_ms
1c180 67 5f 70 72 65 64 69 63 61 74 65 73 0a 20 20 20 20 6d 73 67 5f 66 6f 72 6d 61 74 5f 63 68 65 63 g_predicates.....msg_format_chec
1c1a0 6b 65 72 73 20 3d 20 63 66 67 5f 6d 6f 64 2e 6d 73 67 5f 66 6f 72 6d 61 74 5f 63 68 65 63 6b 65 kers.=.cfg_mod.msg_format_checke
1c1c0 72 73 0a 20 20 20 20 62 6c 61 63 6b 5f 6c 69 73 74 20 3d 20 63 66 67 5f 6d 6f 64 2e 66 69 6c 65 rs.....black_list.=.cfg_mod.file
1c1e0 5f 62 6c 61 63 6b 5f 6c 69 73 74 0a 0a 20 20 20 20 64 65 62 75 67 20 3d 20 46 61 6c 73 65 0a 20 _black_list......debug.=.False..
1c200 20 20 20 69 66 20 6c 65 6e 28 73 79 73 2e 61 72 67 76 29 20 3e 20 33 3a 0a 20 20 20 20 20 20 20 ...if.len(sys.argv).>.3:........
1c220 20 69 66 20 73 79 73 2e 61 72 67 76 5b 33 5d 20 3d 3d 20 27 2d 64 27 3a 0a 20 20 20 20 20 20 20 .if.sys.argv[3].==.'-d':........
1c240 20 20 20 20 20 64 65 62 75 67 20 3d 20 54 72 75 65 0a 0a 20 20 20 20 69 66 20 6f 73 2e 70 61 74 .....debug.=.True......if.os.pat
1c260 68 2e 69 73 66 69 6c 65 28 69 6e 70 75 74 5f 70 61 74 68 29 3a 0a 20 20 20 20 20 20 20 20 73 79 h.isfile(input_path):.........sy
1c280 73 2e 65 78 69 74 28 63 68 65 63 6b 5f 69 31 38 6e 28 69 6e 70 75 74 5f 70 61 74 68 2c 0a 20 20 s.exit(check_i18n(input_path,...
1c2a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 31 38 6e 5f 6d ..........................i18n_m
1c2c0 73 67 5f 70 72 65 64 69 63 61 74 65 73 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 sg_predicates,..................
1c2e0 20 20 20 20 20 20 20 20 20 20 20 6d 73 67 5f 66 6f 72 6d 61 74 5f 63 68 65 63 6b 65 72 73 2c 0a ...........msg_format_checkers,.
1c300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 65 62 75 ............................debu
1c320 67 29 29 0a 0a 20 20 20 20 65 72 72 6f 72 20 3d 20 30 0a 20 20 20 20 66 6f 72 20 64 69 72 70 61 g))......error.=.0.....for.dirpa
1c340 74 68 2c 20 64 69 72 73 2c 20 66 69 6c 65 73 20 69 6e 20 6f 73 2e 77 61 6c 6b 28 69 6e 70 75 74 th,.dirs,.files.in.os.walk(input
1c360 5f 70 61 74 68 29 3a 0a 20 20 20 20 20 20 20 20 66 6f 72 20 66 20 69 6e 20 66 69 6c 65 73 3a 0a _path):.........for.f.in.files:.
1c380 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 6e 6f 74 20 66 2e 65 6e 64 73 77 69 74 68 28 27 2e ............if.not.f.endswith('.
1c3a0 70 79 27 29 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 0a 20 py'):.................continue..
1c3c0 20 20 20 20 20 20 20 20 20 20 20 69 6e 70 75 74 5f 66 69 6c 65 20 3d 20 6f 73 2e 70 61 74 68 2e ...........input_file.=.os.path.
1c3e0 6a 6f 69 6e 28 64 69 72 70 61 74 68 2c 20 66 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 join(dirpath,.f).............if.
1c400 69 73 5f 66 69 6c 65 5f 69 6e 5f 62 6c 61 63 6b 5f 6c 69 73 74 28 62 6c 61 63 6b 5f 6c 69 73 74 is_file_in_black_list(black_list
1c420 2c 20 69 6e 70 75 74 5f 66 69 6c 65 29 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 ,.input_file):.................c
1c440 6f 6e 74 69 6e 75 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 63 68 65 63 6b 5f 69 31 38 ontinue.............if.check_i18
1c460 6e 28 69 6e 70 75 74 5f 66 69 6c 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 n(input_file,...................
1c480 20 20 20 20 20 20 20 20 69 31 38 6e 5f 6d 73 67 5f 70 72 65 64 69 63 61 74 65 73 2c 0a 20 20 20 ........i18n_msg_predicates,....
1c4a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 73 67 5f 66 6f 72 6d 61 .......................msg_forma
1c4c0 74 5f 63 68 65 63 6b 65 72 73 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t_checkers,.....................
1c4e0 20 20 20 20 20 20 64 65 62 75 67 29 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 72 ......debug):.................er
1c500 72 6f 72 20 3d 20 31 0a 20 20 20 20 73 79 73 2e 65 78 69 74 28 65 72 72 6f 72 29 0a 00 00 00 00 ror.=.1.....sys.exit(error).....
1c520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c5a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c5c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c5e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c600 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 74 6f 6f 6c 73 2f 63 68 65 63 6b 5f 69 31 38 6e networking-onos/tools/check_i18n
1c620 5f 74 65 73 74 5f 63 61 73 65 2e 74 78 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 _test_case.txt..................
1c640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c660 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
1c680 30 30 30 32 36 34 35 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 30 36 32 33 00 20 30 00 00 00 0002645.12627513442.020623..0...
1c6a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c6c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c6e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c700 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
1c720 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
1c740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c7a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c7c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c7e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c800 23 20 74 65 73 74 2d 63 61 73 65 20 66 6f 72 20 63 68 65 63 6b 5f 69 31 38 6e 2e 70 79 0a 23 20 #.test-case.for.check_i18n.py.#.
1c820 70 79 74 68 6f 6e 20 63 68 65 63 6b 5f 69 31 38 6e 2e 70 79 20 63 68 65 63 6b 5f 69 31 38 6e 2e python.check_i18n.py.check_i18n.
1c840 74 78 74 20 2d 64 0a 0a 23 20 6d 65 73 73 61 67 65 20 66 6f 72 6d 61 74 20 63 68 65 63 6b 69 6e txt.-d..#.message.format.checkin
1c860 67 0a 23 20 20 63 61 70 69 74 61 6c 20 63 68 65 63 6b 69 6e 67 0a 6d 73 67 20 3d 20 5f 28 22 68 g.#..capital.checking.msg.=._("h
1c880 65 6c 6c 6f 20 77 6f 72 6c 64 2c 20 65 72 72 6f 72 22 29 0a 6d 73 67 20 3d 20 5f 28 22 68 65 6c ello.world,.error").msg.=._("hel
1c8a0 6c 6f 20 77 6f 72 6c 64 5f 76 61 72 2c 20 65 72 72 6f 72 22 29 0a 6d 73 67 20 3d 20 5f 28 27 66 lo.world_var,.error").msg.=._('f
1c8c0 69 6c 65 5f 6c 69 73 74 20 78 79 7a 2c 20 70 61 73 73 27 29 0a 6d 73 67 20 3d 20 5f 28 22 48 65 ile_list.xyz,.pass').msg.=._("He
1c8e0 6c 6c 6f 20 77 6f 72 6c 64 2c 20 70 61 73 73 22 29 0a 0a 23 20 20 66 6f 72 6d 61 74 20 73 70 65 llo.world,.pass")..#..format.spe
1c900 63 69 66 69 65 72 20 63 68 65 63 6b 69 6e 67 0a 6d 73 67 20 3d 20 5f 28 22 48 65 6c 6c 6f 20 25 cifier.checking.msg.=._("Hello.%
1c920 73 20 77 6f 72 6c 64 20 25 64 2c 20 65 72 72 6f 72 22 29 0a 6d 73 67 20 3d 20 5f 28 22 48 65 6c s.world.%d,.error").msg.=._("Hel
1c940 6c 6f 20 25 73 20 77 6f 72 6c 64 2c 20 70 61 73 73 22 29 0a 6d 73 67 20 3d 20 5f 28 22 48 65 6c lo.%s.world,.pass").msg.=._("Hel
1c960 6c 6f 20 25 28 76 61 72 31 29 73 20 77 6f 72 6c 64 20 25 28 76 61 72 32 29 73 2c 20 70 61 73 73 lo.%(var1)s.world.%(var2)s,.pass
1c980 22 29 0a 0a 23 20 6d 65 73 73 61 67 65 20 68 61 73 20 62 65 65 6e 20 6c 6f 63 61 6c 69 7a 65 64 ")..#.message.has.been.localized
1c9a0 0a 23 20 20 69 73 5f 6c 6f 63 61 6c 69 7a 65 64 0a 6d 73 67 20 3d 20 5f 28 22 48 65 6c 6c 6f 20 .#..is_localized.msg.=._("Hello.
1c9c0 77 6f 72 6c 64 2c 20 70 61 73 73 22 29 0a 6d 73 67 20 3d 20 5f 28 22 48 65 6c 6c 6f 20 77 6f 72 world,.pass").msg.=._("Hello.wor
1c9e0 6c 64 2c 20 70 61 73 73 22 29 20 25 20 76 61 72 0a 4c 4f 47 2e 64 65 62 75 67 28 5f 28 27 48 65 ld,.pass").%.var.LOG.debug(_('He
1ca00 6c 6c 6f 20 77 6f 72 6c 64 2c 20 70 61 73 73 27 29 29 0a 4c 4f 47 2e 69 6e 66 6f 28 5f 28 27 48 llo.world,.pass')).LOG.info(_('H
1ca20 65 6c 6c 6f 20 77 6f 72 6c 64 2c 20 70 61 73 73 27 29 29 0a 72 61 69 73 65 20 78 2e 79 2e 45 78 ello.world,.pass')).raise.x.y.Ex
1ca40 63 65 70 74 69 6f 6e 28 5f 28 27 48 65 6c 6c 6f 20 77 6f 72 6c 64 2c 20 70 61 73 73 27 29 29 0a ception(_('Hello.world,.pass')).
1ca60 72 61 69 73 65 20 45 78 63 65 70 74 69 6f 6e 28 5f 28 27 48 65 6c 6c 6f 20 77 6f 72 6c 64 2c 20 raise.Exception(_('Hello.world,.
1ca80 70 61 73 73 27 29 29 0a 0a 23 20 6d 65 73 73 61 67 65 20 6e 65 65 64 20 62 65 20 6c 6f 63 61 6c pass'))..#.message.need.be.local
1caa0 69 7a 65 64 0a 23 20 20 69 73 5f 6c 6f 67 5f 63 61 6c 6c 66 75 6e 63 0a 4c 4f 47 2e 64 65 62 75 ized.#..is_log_callfunc.LOG.debu
1cac0 67 28 27 68 65 6c 6c 6f 20 77 6f 72 6c 64 2c 20 65 72 72 6f 72 27 29 0a 4c 4f 47 2e 64 65 62 75 g('hello.world,.error').LOG.debu
1cae0 67 28 27 68 65 6c 6c 6f 20 77 6f 72 6c 64 2c 20 65 72 72 6f 72 27 20 25 20 78 79 7a 29 0a 73 79 g('hello.world,.error'.%.xyz).sy
1cb00 73 2e 61 70 70 65 6e 64 28 27 68 65 6c 6c 6f 20 77 6f 72 6c 64 2c 20 77 61 72 6e 27 29 0a 0a 23 s.append('hello.world,.warn')..#
1cb20 20 69 73 5f 6c 6f 67 5f 69 31 38 6e 5f 6d 73 67 5f 77 69 74 68 5f 6d 6f 64 0a 4c 4f 47 2e 64 65 .is_log_i18n_msg_with_mod.LOG.de
1cb40 62 75 67 28 5f 28 27 48 65 6c 6c 6f 20 77 6f 72 6c 64 2c 20 65 72 72 6f 72 27 29 20 25 20 78 79 bug(_('Hello.world,.error').%.xy
1cb60 7a 29 0a 0a 23 20 64 65 66 61 75 6c 74 20 77 61 72 6e 0a 6d 73 67 20 3d 20 27 68 65 6c 6c 6f 20 z)..#.default.warn.msg.=.'hello.
1cb80 77 6f 72 6c 64 2c 20 77 61 72 6e 27 0a 6d 73 67 20 3d 20 27 68 65 6c 6c 6f 20 77 6f 72 6c 64 2c world,.warn'.msg.=.'hello.world,
1cba0 20 77 61 72 6e 27 20 25 20 76 61 72 0a 0a 23 20 6d 65 73 73 61 67 65 20 6e 65 65 64 6e 27 74 20 .warn'.%.var..#.message.needn't.
1cbc0 62 65 20 6c 6f 63 61 6c 69 7a 65 64 0a 23 20 20 73 6b 69 70 20 6f 6e 6c 79 20 6f 6e 65 20 77 6f be.localized.#..skip.only.one.wo
1cbe0 72 64 0a 6d 73 67 20 3d 20 27 27 0a 6d 73 67 20 3d 20 22 68 65 6c 6c 6f 2c 70 61 73 73 22 0a 0a rd.msg.=.''.msg.=."hello,pass"..
1cc00 23 20 20 73 6b 69 70 20 64 69 63 74 0a 6d 73 67 20 3d 20 7b 27 68 65 6c 6c 6f 20 77 6f 72 6c 64 #..skip.dict.msg.=.{'hello.world
1cc20 2c 20 70 61 73 73 27 3a 20 31 7d 0a 0a 23 20 20 73 6b 69 70 20 6c 69 73 74 0a 6d 73 67 20 3d 20 ,.pass':.1}..#..skip.list.msg.=.
1cc40 5b 22 68 65 6c 6c 6f 20 77 6f 72 6c 64 2c 20 70 61 73 73 22 5d 0a 0a 23 20 20 73 6b 69 70 20 73 ["hello.world,.pass"]..#..skip.s
1cc60 75 62 73 63 72 69 70 74 0a 6d 73 67 5b 27 68 65 6c 6c 6f 20 77 6f 72 6c 64 2c 20 70 61 73 73 27 ubscript.msg['hello.world,.pass'
1cc80 5d 0a 0a 23 20 20 73 6b 69 70 20 78 6d 6c 20 6d 61 72 6b 65 72 0a 6d 73 67 20 3d 20 22 3c 74 65 ]..#..skip.xml.marker.msg.=."<te
1cca0 73 74 3e 3c 74 3e 3c 2f 74 3e 3c 2f 74 65 73 74 3e 2c 20 70 61 73 73 22 0a 0a 23 20 20 73 6b 69 st><t></t></test>,.pass"..#..ski
1ccc0 70 20 73 71 6c 20 73 74 61 74 65 6d 65 6e 74 0a 6d 73 67 20 3d 20 22 53 45 4c 45 43 54 20 2a 20 p.sql.statement.msg.=."SELECT.*.
1cce0 46 52 4f 4d 20 78 79 7a 20 57 48 45 52 45 20 68 65 6c 6c 6f 3d 31 2c 20 70 61 73 73 22 0a 6d 73 FROM.xyz.WHERE.hello=1,.pass".ms
1cd00 67 20 3d 20 22 73 65 6c 65 63 74 20 2a 20 66 72 6f 6d 20 78 79 7a 2c 20 70 61 73 73 22 0a 0a 23 g.=."select.*.from.xyz,.pass"..#
1cd20 20 20 73 6b 69 70 20 61 64 64 20 73 74 61 74 65 6d 65 6e 74 0a 6d 73 67 20 3d 20 27 68 65 6c 6c ..skip.add.statement.msg.=.'hell
1cd40 6f 20 77 6f 72 6c 64 27 20 2b 20 65 20 2b 20 27 77 6f 72 6c 64 20 68 65 6c 6c 6f 2c 20 70 61 73 o.world'.+.e.+.'world.hello,.pas
1cd60 73 27 0a 0a 23 20 20 73 6b 69 70 20 64 6f 63 20 73 74 72 69 6e 67 0a 22 22 22 0a 48 65 6c 6c 6f s'..#..skip.doc.string.""".Hello
1cd80 20 77 6f 72 6c 64 2c 20 70 61 73 73 0a 22 22 22 0a 63 6c 61 73 73 20 4d 73 67 3a 0a 20 20 20 20 .world,.pass.""".class.Msg:.....
1cda0 70 61 73 73 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 pass............................
1cdc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1cde0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ce00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 74 6f 6f 6c 73 2f 69 6e 73 74 61 6c 6c 5f 76 65 networking-onos/tools/install_ve
1ce20 6e 76 2e 70 79 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 nv.py...........................
1ce40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ce60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
1ce80 30 30 30 34 34 30 30 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 37 31 36 31 00 20 30 00 00 00 0004400.12627513442.017161..0...
1cea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1cec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1cee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1cf00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
1cf20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
1cf40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1cf60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1cf80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1cfa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1cfc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1cfe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d000 23 21 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20 70 79 74 68 6f 6e 0a 23 20 43 6f 70 79 72 69 67 68 #!/usr/bin/env.python.#.Copyrigh
1d020 74 20 32 30 31 30 20 55 6e 69 74 65 64 20 53 74 61 74 65 73 20 47 6f 76 65 72 6e 6d 65 6e 74 20 t.2010.United.States.Government.
1d040 61 73 20 72 65 70 72 65 73 65 6e 74 65 64 20 62 79 20 74 68 65 0a 23 20 41 64 6d 69 6e 69 73 74 as.represented.by.the.#.Administ
1d060 72 61 74 6f 72 20 6f 66 20 74 68 65 20 4e 61 74 69 6f 6e 61 6c 20 41 65 72 6f 6e 61 75 74 69 63 rator.of.the.National.Aeronautic
1d080 73 20 61 6e 64 20 53 70 61 63 65 20 41 64 6d 69 6e 69 73 74 72 61 74 69 6f 6e 2e 0a 23 20 41 6c s.and.Space.Administration..#.Al
1d0a0 6c 20 52 69 67 68 74 73 20 52 65 73 65 72 76 65 64 2e 0a 23 0a 23 20 43 6f 70 79 72 69 67 68 74 l.Rights.Reserved..#.#.Copyright
1d0c0 20 32 30 31 30 20 4f 70 65 6e 53 74 61 63 6b 20 46 6f 75 6e 64 61 74 69 6f 6e 2e 0a 23 20 43 6f .2010.OpenStack.Foundation..#.Co
1d0e0 70 79 72 69 67 68 74 20 32 30 31 33 20 49 42 4d 20 43 6f 72 70 2e 0a 23 0a 23 20 20 20 20 4c 69 pyright.2013.IBM.Corp..#.#....Li
1d100 63 65 6e 73 65 64 20 75 6e 64 65 72 20 74 68 65 20 41 70 61 63 68 65 20 4c 69 63 65 6e 73 65 2c censed.under.the.Apache.License,
1d120 20 56 65 72 73 69 6f 6e 20 32 2e 30 20 28 74 68 65 20 22 4c 69 63 65 6e 73 65 22 29 3b 20 79 6f .Version.2.0.(the."License");.yo
1d140 75 20 6d 61 79 0a 23 20 20 20 20 6e 6f 74 20 75 73 65 20 74 68 69 73 20 66 69 6c 65 20 65 78 63 u.may.#....not.use.this.file.exc
1d160 65 70 74 20 69 6e 20 63 6f 6d 70 6c 69 61 6e 63 65 20 77 69 74 68 20 74 68 65 20 4c 69 63 65 6e ept.in.compliance.with.the.Licen
1d180 73 65 2e 20 59 6f 75 20 6d 61 79 20 6f 62 74 61 69 6e 0a 23 20 20 20 20 61 20 63 6f 70 79 20 6f se..You.may.obtain.#....a.copy.o
1d1a0 66 20 74 68 65 20 4c 69 63 65 6e 73 65 20 61 74 0a 23 0a 23 20 20 20 20 20 20 20 20 20 68 74 74 f.the.License.at.#.#.........htt
1d1c0 70 3a 2f 2f 77 77 77 2e 61 70 61 63 68 65 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 4c 49 43 45 p://www.apache.org/licenses/LICE
1d1e0 4e 53 45 2d 32 2e 30 0a 23 0a 23 20 20 20 20 55 6e 6c 65 73 73 20 72 65 71 75 69 72 65 64 20 62 NSE-2.0.#.#....Unless.required.b
1d200 79 20 61 70 70 6c 69 63 61 62 6c 65 20 6c 61 77 20 6f 72 20 61 67 72 65 65 64 20 74 6f 20 69 6e y.applicable.law.or.agreed.to.in
1d220 20 77 72 69 74 69 6e 67 2c 20 73 6f 66 74 77 61 72 65 0a 23 20 20 20 20 64 69 73 74 72 69 62 75 .writing,.software.#....distribu
1d240 74 65 64 20 75 6e 64 65 72 20 74 68 65 20 4c 69 63 65 6e 73 65 20 69 73 20 64 69 73 74 72 69 62 ted.under.the.License.is.distrib
1d260 75 74 65 64 20 6f 6e 20 61 6e 20 22 41 53 20 49 53 22 20 42 41 53 49 53 2c 20 57 49 54 48 4f 55 uted.on.an."AS.IS".BASIS,.WITHOU
1d280 54 0a 23 20 20 20 20 57 41 52 52 41 4e 54 49 45 53 20 4f 52 20 43 4f 4e 44 49 54 49 4f 4e 53 20 T.#....WARRANTIES.OR.CONDITIONS.
1d2a0 4f 46 20 41 4e 59 20 4b 49 4e 44 2c 20 65 69 74 68 65 72 20 65 78 70 72 65 73 73 20 6f 72 20 69 OF.ANY.KIND,.either.express.or.i
1d2c0 6d 70 6c 69 65 64 2e 20 53 65 65 20 74 68 65 0a 23 20 20 20 20 4c 69 63 65 6e 73 65 20 66 6f 72 mplied..See.the.#....License.for
1d2e0 20 74 68 65 20 73 70 65 63 69 66 69 63 20 6c 61 6e 67 75 61 67 65 20 67 6f 76 65 72 6e 69 6e 67 .the.specific.language.governing
1d300 20 70 65 72 6d 69 73 73 69 6f 6e 73 20 61 6e 64 20 6c 69 6d 69 74 61 74 69 6f 6e 73 0a 23 20 20 .permissions.and.limitations.#..
1d320 20 20 75 6e 64 65 72 20 74 68 65 20 4c 69 63 65 6e 73 65 2e 0a 0a 22 22 22 0a 49 6e 73 74 61 6c ..under.the.License...""".Instal
1d340 6c 61 74 69 6f 6e 20 73 63 72 69 70 74 20 66 6f 72 20 4e 65 75 74 72 6f 6e 27 73 20 64 65 76 65 lation.script.for.Neutron's.deve
1d360 6c 6f 70 6d 65 6e 74 20 76 69 72 74 75 61 6c 65 6e 76 0a 22 22 22 0a 66 72 6f 6d 20 5f 5f 66 75 lopment.virtualenv.""".from.__fu
1d380 74 75 72 65 5f 5f 20 69 6d 70 6f 72 74 20 70 72 69 6e 74 5f 66 75 6e 63 74 69 6f 6e 0a 0a 69 6d ture__.import.print_function..im
1d3a0 70 6f 72 74 20 6f 73 0a 69 6d 70 6f 72 74 20 73 79 73 0a 0a 69 6d 70 6f 72 74 20 69 6e 73 74 61 port.os.import.sys..import.insta
1d3c0 6c 6c 5f 76 65 6e 76 5f 63 6f 6d 6d 6f 6e 20 61 73 20 69 6e 73 74 61 6c 6c 5f 76 65 6e 76 0a 0a ll_venv_common.as.install_venv..
1d3e0 0a 64 65 66 20 70 72 69 6e 74 5f 68 65 6c 70 28 29 3a 0a 20 20 20 20 68 65 6c 70 20 3d 20 22 22 .def.print_help():.....help.=.""
1d400 22 0a 20 4e 65 75 74 72 6f 6e 20 64 65 76 65 6c 6f 70 6d 65 6e 74 20 65 6e 76 69 72 6f 6e 6d 65 "..Neutron.development.environme
1d420 6e 74 20 73 65 74 75 70 20 69 73 20 63 6f 6d 70 6c 65 74 65 2e 0a 0a 20 4e 65 75 74 72 6f 6e 20 nt.setup.is.complete....Neutron.
1d440 64 65 76 65 6c 6f 70 6d 65 6e 74 20 75 73 65 73 20 76 69 72 74 75 61 6c 65 6e 76 20 74 6f 20 74 development.uses.virtualenv.to.t
1d460 72 61 63 6b 20 61 6e 64 20 6d 61 6e 61 67 65 20 50 79 74 68 6f 6e 20 64 65 70 65 6e 64 65 6e 63 rack.and.manage.Python.dependenc
1d480 69 65 73 0a 20 77 68 69 6c 65 20 69 6e 20 64 65 76 65 6c 6f 70 6d 65 6e 74 20 61 6e 64 20 74 65 ies..while.in.development.and.te
1d4a0 73 74 69 6e 67 2e 0a 0a 20 54 6f 20 61 63 74 69 76 61 74 65 20 74 68 65 20 4e 65 75 74 72 6f 6e sting....To.activate.the.Neutron
1d4c0 20 76 69 72 74 75 61 6c 65 6e 76 20 66 6f 72 20 74 68 65 20 65 78 74 65 6e 74 20 6f 66 20 79 6f .virtualenv.for.the.extent.of.yo
1d4e0 75 72 20 63 75 72 72 65 6e 74 20 73 68 65 6c 6c 0a 20 73 65 73 73 69 6f 6e 20 79 6f 75 20 63 61 ur.current.shell..session.you.ca
1d500 6e 20 72 75 6e 3a 0a 0a 20 24 20 73 6f 75 72 63 65 20 2e 76 65 6e 76 2f 62 69 6e 2f 61 63 74 69 n.run:...$.source..venv/bin/acti
1d520 76 61 74 65 0a 0a 20 4f 72 2c 20 69 66 20 79 6f 75 20 70 72 65 66 65 72 2c 20 79 6f 75 20 63 61 vate...Or,.if.you.prefer,.you.ca
1d540 6e 20 72 75 6e 20 63 6f 6d 6d 61 6e 64 73 20 69 6e 20 74 68 65 20 76 69 72 74 75 61 6c 65 6e 76 n.run.commands.in.the.virtualenv
1d560 20 6f 6e 20 61 20 63 61 73 65 20 62 79 20 63 61 73 65 0a 20 62 61 73 69 73 20 62 79 20 72 75 6e .on.a.case.by.case..basis.by.run
1d580 6e 69 6e 67 3a 0a 0a 20 24 20 74 6f 6f 6c 73 2f 77 69 74 68 5f 76 65 6e 76 2e 73 68 20 3c 79 6f ning:...$.tools/with_venv.sh.<yo
1d5a0 75 72 20 63 6f 6d 6d 61 6e 64 3e 0a 0a 20 41 6c 73 6f 2c 20 6d 61 6b 65 20 74 65 73 74 20 77 69 ur.command>...Also,.make.test.wi
1d5c0 6c 6c 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 75 73 65 20 74 68 65 20 76 69 72 74 75 61 6c ll.automatically.use.the.virtual
1d5e0 65 6e 76 2e 0a 20 20 20 20 22 22 22 0a 20 20 20 20 70 72 69 6e 74 28 68 65 6c 70 29 0a 0a 0a 64 env......""".....print(help)...d
1d600 65 66 20 6d 61 69 6e 28 61 72 67 76 29 3a 0a 20 20 20 20 72 6f 6f 74 20 3d 20 6f 73 2e 70 61 74 ef.main(argv):.....root.=.os.pat
1d620 68 2e 64 69 72 6e 61 6d 65 28 6f 73 2e 70 61 74 68 2e 64 69 72 6e 61 6d 65 28 6f 73 2e 70 61 74 h.dirname(os.path.dirname(os.pat
1d640 68 2e 72 65 61 6c 70 61 74 68 28 5f 5f 66 69 6c 65 5f 5f 29 29 29 0a 20 20 20 20 76 65 6e 76 20 h.realpath(__file__))).....venv.
1d660 3d 20 6f 73 2e 70 61 74 68 2e 6a 6f 69 6e 28 72 6f 6f 74 2c 20 27 2e 76 65 6e 76 27 29 0a 20 20 =.os.path.join(root,.'.venv')...
1d680 20 20 70 69 70 5f 72 65 71 75 69 72 65 73 20 3d 20 6f 73 2e 70 61 74 68 2e 6a 6f 69 6e 28 72 6f ..pip_requires.=.os.path.join(ro
1d6a0 6f 74 2c 20 27 72 65 71 75 69 72 65 6d 65 6e 74 73 2e 74 78 74 27 29 0a 20 20 20 20 74 65 73 74 ot,.'requirements.txt').....test
1d6c0 5f 72 65 71 75 69 72 65 73 20 3d 20 6f 73 2e 70 61 74 68 2e 6a 6f 69 6e 28 72 6f 6f 74 2c 20 27 _requires.=.os.path.join(root,.'
1d6e0 74 65 73 74 2d 72 65 71 75 69 72 65 6d 65 6e 74 73 2e 74 78 74 27 29 0a 20 20 20 20 70 79 5f 76 test-requirements.txt').....py_v
1d700 65 72 73 69 6f 6e 20 3d 20 22 70 79 74 68 6f 6e 25 73 2e 25 73 22 20 25 20 28 73 79 73 2e 76 65 ersion.=."python%s.%s".%.(sys.ve
1d720 72 73 69 6f 6e 5f 69 6e 66 6f 5b 30 5d 2c 20 73 79 73 2e 76 65 72 73 69 6f 6e 5f 69 6e 66 6f 5b rsion_info[0],.sys.version_info[
1d740 31 5d 29 0a 20 20 20 20 70 72 6f 6a 65 63 74 20 3d 20 27 4e 65 75 74 72 6f 6e 27 0a 20 20 20 20 1]).....project.=.'Neutron'.....
1d760 69 6e 73 74 61 6c 6c 20 3d 20 69 6e 73 74 61 6c 6c 5f 76 65 6e 76 2e 49 6e 73 74 61 6c 6c 56 65 install.=.install_venv.InstallVe
1d780 6e 76 28 72 6f 6f 74 2c 20 76 65 6e 76 2c 20 70 69 70 5f 72 65 71 75 69 72 65 73 2c 20 74 65 73 nv(root,.venv,.pip_requires,.tes
1d7a0 74 5f 72 65 71 75 69 72 65 73 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t_requires,.....................
1d7c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 79 5f 76 65 72 73 69 6f 6e 2c 20 70 ...................py_version,.p
1d7e0 72 6f 6a 65 63 74 29 0a 20 20 20 20 6f 70 74 69 6f 6e 73 20 3d 20 69 6e 73 74 61 6c 6c 2e 70 61 roject).....options.=.install.pa
1d800 72 73 65 5f 61 72 67 73 28 61 72 67 76 29 0a 20 20 20 20 69 6e 73 74 61 6c 6c 2e 63 68 65 63 6b rse_args(argv).....install.check
1d820 5f 70 79 74 68 6f 6e 5f 76 65 72 73 69 6f 6e 28 29 0a 20 20 20 20 69 6e 73 74 61 6c 6c 2e 63 68 _python_version().....install.ch
1d840 65 63 6b 5f 64 65 70 65 6e 64 65 6e 63 69 65 73 28 29 0a 20 20 20 20 69 6e 73 74 61 6c 6c 2e 63 eck_dependencies().....install.c
1d860 72 65 61 74 65 5f 76 69 72 74 75 61 6c 65 6e 76 28 6e 6f 5f 73 69 74 65 5f 70 61 63 6b 61 67 65 reate_virtualenv(no_site_package
1d880 73 3d 6f 70 74 69 6f 6e 73 2e 6e 6f 5f 73 69 74 65 5f 70 61 63 6b 61 67 65 73 29 0a 20 20 20 20 s=options.no_site_packages).....
1d8a0 69 6e 73 74 61 6c 6c 2e 69 6e 73 74 61 6c 6c 5f 64 65 70 65 6e 64 65 6e 63 69 65 73 28 29 0a 20 install.install_dependencies()..
1d8c0 20 20 20 70 72 69 6e 74 5f 68 65 6c 70 28 29 0a 0a 0a 69 66 20 5f 5f 6e 61 6d 65 5f 5f 20 3d 3d ...print_help()...if.__name__.==
1d8e0 20 27 5f 5f 6d 61 69 6e 5f 5f 27 3a 0a 20 20 20 20 6d 61 69 6e 28 73 79 73 2e 61 72 67 76 29 0a .'__main__':.....main(sys.argv).
1d900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d9a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d9c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d9e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1da00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 74 6f 6f 6c 73 2f 63 6c 65 61 6e 2e 73 68 00 00 networking-onos/tools/clean.sh..
1da20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1da40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1da60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
1da80 30 30 30 30 32 37 34 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 35 35 32 36 00 20 30 00 00 00 0000274.12627513442.015526..0...
1daa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1db00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
1db20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
1db40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1db60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1db80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dbc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dbe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dc00 23 21 2f 62 69 6e 2f 62 61 73 68 0a 72 6d 20 2d 72 66 20 2e 2f 2a 2e 64 65 62 20 2e 2f 2a 2e 74 #!/bin/bash.rm.-rf../*.deb../*.t
1dc20 61 72 2e 67 7a 20 2e 2f 2a 2e 64 73 63 20 2e 2f 2a 2e 63 68 61 6e 67 65 73 0a 72 6d 20 2d 72 66 ar.gz../*.dsc../*.changes.rm.-rf
1dc40 20 2a 2f 2a 2e 64 65 62 0a 72 6d 20 2d 72 66 20 2e 2f 70 6c 75 67 69 6e 73 2f 2a 2a 2f 62 75 69 .*/*.deb.rm.-rf../plugins/**/bui
1dc60 6c 64 2f 20 2e 2f 70 6c 75 67 69 6e 73 2f 2a 2a 2f 64 69 73 74 0a 72 6d 20 2d 72 66 20 2e 2f 70 ld/../plugins/**/dist.rm.-rf../p
1dc80 6c 75 67 69 6e 73 2f 2a 2a 2f 6c 69 62 2f 6e 65 75 74 72 6f 6e 5f 2a 5f 70 6c 75 67 69 6e 2e 65 lugins/**/lib/neutron_*_plugin.e
1dca0 67 67 2d 69 6e 66 6f 20 2e 2f 70 6c 75 67 69 6e 73 2f 6e 65 75 74 72 6f 6e 2d 2a 0a 00 00 00 00 gg-info../plugins/neutron-*.....
1dcc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dd00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dd20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dd40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dd60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dd80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dda0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ddc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dde0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1de00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 74 6f 6f 6c 73 2f 63 68 65 63 6b 5f 62 61 73 68 networking-onos/tools/check_bash
1de20 2e 73 68 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .sh.............................
1de40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1de60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
1de80 30 30 30 32 32 32 36 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 36 35 31 35 00 20 30 00 00 00 0002226.12627513442.016515..0...
1dea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1df00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
1df20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
1df40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1df60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1df80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dfa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dfc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dfe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e000 23 21 20 2f 62 69 6e 2f 73 68 0a 0a 23 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 31 34 #!./bin/sh..#.Copyright.(C).2014
1e020 20 56 41 20 4c 69 6e 75 78 20 53 79 73 74 65 6d 73 20 4a 61 70 61 6e 20 4b 2e 4b 2e 0a 23 20 43 .VA.Linux.Systems.Japan.K.K..#.C
1e040 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 31 34 20 59 41 4d 41 4d 4f 54 4f 20 54 61 6b 61 73 opyright.(C).2014.YAMAMOTO.Takas
1e060 68 69 20 3c 79 61 6d 61 6d 6f 74 6f 20 61 74 20 76 61 6c 69 6e 75 78 20 63 6f 20 6a 70 3e 0a 23 hi.<yamamoto.at.valinux.co.jp>.#
1e080 20 41 6c 6c 20 52 69 67 68 74 73 20 52 65 73 65 72 76 65 64 2e 0a 23 0a 23 20 20 20 20 4c 69 63 .All.Rights.Reserved..#.#....Lic
1e0a0 65 6e 73 65 64 20 75 6e 64 65 72 20 74 68 65 20 41 70 61 63 68 65 20 4c 69 63 65 6e 73 65 2c 20 ensed.under.the.Apache.License,.
1e0c0 56 65 72 73 69 6f 6e 20 32 2e 30 20 28 74 68 65 20 22 4c 69 63 65 6e 73 65 22 29 3b 20 79 6f 75 Version.2.0.(the."License");.you
1e0e0 20 6d 61 79 0a 23 20 20 20 20 6e 6f 74 20 75 73 65 20 74 68 69 73 20 66 69 6c 65 20 65 78 63 65 .may.#....not.use.this.file.exce
1e100 70 74 20 69 6e 20 63 6f 6d 70 6c 69 61 6e 63 65 20 77 69 74 68 20 74 68 65 20 4c 69 63 65 6e 73 pt.in.compliance.with.the.Licens
1e120 65 2e 20 59 6f 75 20 6d 61 79 20 6f 62 74 61 69 6e 0a 23 20 20 20 20 61 20 63 6f 70 79 20 6f 66 e..You.may.obtain.#....a.copy.of
1e140 20 74 68 65 20 4c 69 63 65 6e 73 65 20 61 74 0a 23 0a 23 20 20 20 20 20 20 20 20 20 68 74 74 70 .the.License.at.#.#.........http
1e160 3a 2f 2f 77 77 77 2e 61 70 61 63 68 65 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 4c 49 43 45 4e ://www.apache.org/licenses/LICEN
1e180 53 45 2d 32 2e 30 0a 23 0a 23 20 20 20 20 55 6e 6c 65 73 73 20 72 65 71 75 69 72 65 64 20 62 79 SE-2.0.#.#....Unless.required.by
1e1a0 20 61 70 70 6c 69 63 61 62 6c 65 20 6c 61 77 20 6f 72 20 61 67 72 65 65 64 20 74 6f 20 69 6e 20 .applicable.law.or.agreed.to.in.
1e1c0 77 72 69 74 69 6e 67 2c 20 73 6f 66 74 77 61 72 65 0a 23 20 20 20 20 64 69 73 74 72 69 62 75 74 writing,.software.#....distribut
1e1e0 65 64 20 75 6e 64 65 72 20 74 68 65 20 4c 69 63 65 6e 73 65 20 69 73 20 64 69 73 74 72 69 62 75 ed.under.the.License.is.distribu
1e200 74 65 64 20 6f 6e 20 61 6e 20 22 41 53 20 49 53 22 20 42 41 53 49 53 2c 20 57 49 54 48 4f 55 54 ted.on.an."AS.IS".BASIS,.WITHOUT
1e220 0a 23 20 20 20 20 57 41 52 52 41 4e 54 49 45 53 20 4f 52 20 43 4f 4e 44 49 54 49 4f 4e 53 20 4f .#....WARRANTIES.OR.CONDITIONS.O
1e240 46 20 41 4e 59 20 4b 49 4e 44 2c 20 65 69 74 68 65 72 20 65 78 70 72 65 73 73 20 6f 72 20 69 6d F.ANY.KIND,.either.express.or.im
1e260 70 6c 69 65 64 2e 20 53 65 65 20 74 68 65 0a 23 20 20 20 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 plied..See.the.#....License.for.
1e280 74 68 65 20 73 70 65 63 69 66 69 63 20 6c 61 6e 67 75 61 67 65 20 67 6f 76 65 72 6e 69 6e 67 20 the.specific.language.governing.
1e2a0 70 65 72 6d 69 73 73 69 6f 6e 73 20 61 6e 64 20 6c 69 6d 69 74 61 74 69 6f 6e 73 0a 23 20 20 20 permissions.and.limitations.#...
1e2c0 20 75 6e 64 65 72 20 74 68 65 20 4c 69 63 65 6e 73 65 2e 0a 0a 23 20 54 68 65 20 70 75 72 70 6f .under.the.License...#.The.purpo
1e2e0 73 65 20 6f 66 20 74 68 69 73 20 73 63 72 69 70 74 20 69 73 20 74 6f 20 61 76 6f 69 64 20 63 61 se.of.this.script.is.to.avoid.ca
1e300 73 75 61 6c 20 69 6e 74 72 6f 64 75 63 74 69 6f 6e 20 6f 66 20 6d 6f 72 65 0a 23 20 62 61 73 68 sual.introduction.of.more.#.bash
1e320 20 64 65 70 65 6e 64 65 6e 63 79 2e 20 20 50 6c 65 61 73 65 20 63 6f 6e 73 69 64 65 72 20 61 6c .dependency...Please.consider.al
1e340 74 65 72 6e 61 74 69 76 65 73 20 62 65 66 6f 72 65 20 63 6f 6d 6d 69 74 69 6e 67 20 63 6f 64 65 ternatives.before.commiting.code
1e360 0a 23 20 77 68 69 63 68 20 75 73 65 73 20 62 61 73 68 20 73 70 65 63 69 66 69 63 20 66 65 61 74 .#.which.uses.bash.specific.feat
1e380 75 72 65 73 2e 0a 0a 23 20 49 67 6e 6f 72 65 20 63 6f 6d 6d 65 6e 74 73 2c 20 62 75 74 20 69 6e ures...#.Ignore.comments,.but.in
1e3a0 63 6c 75 64 65 20 73 68 65 62 61 6e 67 73 0a 4f 42 53 45 52 56 45 44 3d 24 28 67 72 65 70 20 2d clude.shebangs.OBSERVED=$(grep.-
1e3c0 45 20 27 5e 28 5b 5e 23 5d 7c 23 21 29 2e 2a 62 61 73 68 27 20 74 6f 78 2e 69 6e 69 20 74 6f 6f E.'^([^#]|#!).*bash'.tox.ini.too
1e3e0 6c 73 2f 2a 20 7c 20 77 63 20 2d 6c 29 0a 45 58 50 45 43 54 45 44 3d 35 0a 69 66 20 5b 20 24 7b ls/*.|.wc.-l).EXPECTED=5.if.[.${
1e400 45 58 50 45 43 54 45 44 7d 20 2d 6e 65 20 24 7b 4f 42 53 45 52 56 45 44 7d 20 5d 3b 20 74 68 65 EXPECTED}.-ne.${OBSERVED}.];.the
1e420 6e 0a 20 20 20 20 65 63 68 6f 20 55 6e 65 78 70 65 63 74 65 64 20 6e 75 6d 62 65 72 20 6f 66 20 n.....echo.Unexpected.number.of.
1e440 62 61 73 68 20 75 73 61 67 65 73 20 61 72 65 20 64 65 74 65 63 74 65 64 2e 0a 20 20 20 20 65 63 bash.usages.are.detected......ec
1e460 68 6f 20 50 6c 65 61 73 65 20 72 65 61 64 20 74 68 65 20 63 6f 6d 6d 65 6e 74 20 69 6e 20 24 30 ho.Please.read.the.comment.in.$0
1e480 0a 20 20 20 20 65 78 69 74 20 31 0a 66 69 0a 65 78 69 74 20 30 0a 00 00 00 00 00 00 00 00 00 00 .....exit.1.fi.exit.0...........
1e4a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e4c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e4e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e5a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e5c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e5e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e600 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 74 6f 6f 6c 73 2f 73 75 62 75 6e 69 74 2d 74 72 networking-onos/tools/subunit-tr
1e620 61 63 65 2e 70 79 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ace.py..........................
1e640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e660 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
1e680 30 30 32 34 35 34 34 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 37 32 35 35 00 20 30 00 00 00 0024544.12627513442.017255..0...
1e6a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e6c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e6e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e700 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
1e720 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
1e740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e7a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e7c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e7e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e800 23 21 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20 70 79 74 68 6f 6e 0a 0a 23 20 43 6f 70 79 72 69 67 #!/usr/bin/env.python..#.Copyrig
1e820 68 74 20 32 30 31 34 20 48 65 77 6c 65 74 74 2d 50 61 63 6b 61 72 64 20 44 65 76 65 6c 6f 70 6d ht.2014.Hewlett-Packard.Developm
1e840 65 6e 74 20 43 6f 6d 70 61 6e 79 2c 20 4c 2e 50 2e 0a 23 20 43 6f 70 79 72 69 67 68 74 20 32 30 ent.Company,.L.P..#.Copyright.20
1e860 31 34 20 53 61 6d 73 75 6e 67 20 45 6c 65 63 74 72 6f 6e 69 63 73 0a 23 20 41 6c 6c 20 52 69 67 14.Samsung.Electronics.#.All.Rig
1e880 68 74 73 20 52 65 73 65 72 76 65 64 2e 0a 23 0a 23 20 4c 69 63 65 6e 73 65 64 20 75 6e 64 65 72 hts.Reserved..#.#.Licensed.under
1e8a0 20 74 68 65 20 41 70 61 63 68 65 20 4c 69 63 65 6e 73 65 2c 20 56 65 72 73 69 6f 6e 20 32 2e 30 .the.Apache.License,.Version.2.0
1e8c0 20 28 74 68 65 20 22 4c 69 63 65 6e 73 65 22 29 3b 20 79 6f 75 20 6d 61 79 0a 23 20 6e 6f 74 20 .(the."License");.you.may.#.not.
1e8e0 75 73 65 20 74 68 69 73 20 66 69 6c 65 20 65 78 63 65 70 74 20 69 6e 20 63 6f 6d 70 6c 69 61 6e use.this.file.except.in.complian
1e900 63 65 20 77 69 74 68 20 74 68 65 20 4c 69 63 65 6e 73 65 2e 20 59 6f 75 20 6d 61 79 20 6f 62 74 ce.with.the.License..You.may.obt
1e920 61 69 6e 0a 23 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 4c 69 63 65 6e 73 65 20 61 74 0a 23 ain.#.a.copy.of.the.License.at.#
1e940 0a 23 20 20 20 20 20 68 74 74 70 3a 2f 2f 77 77 77 2e 61 70 61 63 68 65 2e 6f 72 67 2f 6c 69 63 .#.....http://www.apache.org/lic
1e960 65 6e 73 65 73 2f 4c 49 43 45 4e 53 45 2d 32 2e 30 0a 23 0a 23 20 55 6e 6c 65 73 73 20 72 65 71 enses/LICENSE-2.0.#.#.Unless.req
1e980 75 69 72 65 64 20 62 79 20 61 70 70 6c 69 63 61 62 6c 65 20 6c 61 77 20 6f 72 20 61 67 72 65 65 uired.by.applicable.law.or.agree
1e9a0 64 20 74 6f 20 69 6e 20 77 72 69 74 69 6e 67 2c 20 73 6f 66 74 77 61 72 65 0a 23 20 64 69 73 74 d.to.in.writing,.software.#.dist
1e9c0 72 69 62 75 74 65 64 20 75 6e 64 65 72 20 74 68 65 20 4c 69 63 65 6e 73 65 20 69 73 20 64 69 73 ributed.under.the.License.is.dis
1e9e0 74 72 69 62 75 74 65 64 20 6f 6e 20 61 6e 20 22 41 53 20 49 53 22 20 42 41 53 49 53 2c 20 57 49 tributed.on.an."AS.IS".BASIS,.WI
1ea00 54 48 4f 55 54 0a 23 20 57 41 52 52 41 4e 54 49 45 53 20 4f 52 20 43 4f 4e 44 49 54 49 4f 4e 53 THOUT.#.WARRANTIES.OR.CONDITIONS
1ea20 20 4f 46 20 41 4e 59 20 4b 49 4e 44 2c 20 65 69 74 68 65 72 20 65 78 70 72 65 73 73 20 6f 72 20 .OF.ANY.KIND,.either.express.or.
1ea40 69 6d 70 6c 69 65 64 2e 20 53 65 65 20 74 68 65 0a 23 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 74 implied..See.the.#.License.for.t
1ea60 68 65 20 73 70 65 63 69 66 69 63 20 6c 61 6e 67 75 61 67 65 20 67 6f 76 65 72 6e 69 6e 67 20 70 he.specific.language.governing.p
1ea80 65 72 6d 69 73 73 69 6f 6e 73 20 61 6e 64 20 6c 69 6d 69 74 61 74 69 6f 6e 73 0a 23 20 75 6e 64 ermissions.and.limitations.#.und
1eaa0 65 72 20 74 68 65 20 4c 69 63 65 6e 73 65 2e 0a 0a 22 22 22 54 72 61 63 65 20 61 20 73 75 62 75 er.the.License..."""Trace.a.subu
1eac0 6e 69 74 20 73 74 72 65 61 6d 20 69 6e 20 72 65 61 73 6f 6e 61 62 6c 65 20 64 65 74 61 69 6c 20 nit.stream.in.reasonable.detail.
1eae0 61 6e 64 20 68 69 67 68 20 61 63 63 75 72 61 63 79 2e 22 22 22 0a 0a 69 6d 70 6f 72 74 20 61 72 and.high.accuracy."""..import.ar
1eb00 67 70 61 72 73 65 0a 69 6d 70 6f 72 74 20 66 75 6e 63 74 6f 6f 6c 73 0a 69 6d 70 6f 72 74 20 6f gparse.import.functools.import.o
1eb20 73 0a 69 6d 70 6f 72 74 20 72 65 0a 69 6d 70 6f 72 74 20 73 79 73 0a 0a 69 6d 70 6f 72 74 20 6d s.import.re.import.sys..import.m
1eb40 69 6d 65 70 61 72 73 65 0a 69 6d 70 6f 72 74 20 73 75 62 75 6e 69 74 0a 69 6d 70 6f 72 74 20 74 imeparse.import.subunit.import.t
1eb60 65 73 74 74 6f 6f 6c 73 0a 0a 44 41 59 5f 53 45 43 4f 4e 44 53 20 3d 20 36 30 20 2a 20 36 30 20 esttools..DAY_SECONDS.=.60.*.60.
1eb80 2a 20 32 34 0a 46 41 49 4c 53 20 3d 20 5b 5d 0a 52 45 53 55 4c 54 53 20 3d 20 7b 7d 0a 0a 0a 63 *.24.FAILS.=.[].RESULTS.=.{}...c
1eba0 6c 61 73 73 20 53 74 61 72 74 73 28 74 65 73 74 74 6f 6f 6c 73 2e 53 74 72 65 61 6d 52 65 73 75 lass.Starts(testtools.StreamResu
1ebc0 6c 74 29 3a 0a 0a 20 20 20 20 64 65 66 20 5f 5f 69 6e 69 74 5f 5f 28 73 65 6c 66 2c 20 6f 75 74 lt):......def.__init__(self,.out
1ebe0 70 75 74 29 3a 0a 20 20 20 20 20 20 20 20 73 75 70 65 72 28 53 74 61 72 74 73 2c 20 73 65 6c 66 put):.........super(Starts,.self
1ec00 29 2e 5f 5f 69 6e 69 74 5f 5f 28 29 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 5f 6f 75 74 70 75 ).__init__().........self._outpu
1ec20 74 20 3d 20 6f 75 74 70 75 74 0a 0a 20 20 20 20 64 65 66 20 73 74 61 72 74 54 65 73 74 52 75 6e t.=.output......def.startTestRun
1ec40 28 73 65 6c 66 29 3a 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 5f 6e 65 65 64 6e 65 77 6c 69 6e (self):.........self._neednewlin
1ec60 65 20 3d 20 46 61 6c 73 65 0a 20 20 20 20 20 20 20 20 73 65 6c 66 2e 5f 65 6d 69 74 74 65 64 20 e.=.False.........self._emitted.
1ec80 3d 20 73 65 74 28 29 0a 0a 20 20 20 20 64 65 66 20 73 74 61 74 75 73 28 73 65 6c 66 2c 20 74 65 =.set()......def.status(self,.te
1eca0 73 74 5f 69 64 3d 4e 6f 6e 65 2c 20 74 65 73 74 5f 73 74 61 74 75 73 3d 4e 6f 6e 65 2c 20 74 65 st_id=None,.test_status=None,.te
1ecc0 73 74 5f 74 61 67 73 3d 4e 6f 6e 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 75 6e st_tags=None,................run
1ece0 6e 61 62 6c 65 3d 54 72 75 65 2c 20 66 69 6c 65 5f 6e 61 6d 65 3d 4e 6f 6e 65 2c 20 66 69 6c 65 nable=True,.file_name=None,.file
1ed00 5f 62 79 74 65 73 3d 4e 6f 6e 65 2c 20 65 6f 66 3d 46 61 6c 73 65 2c 0a 20 20 20 20 20 20 20 20 _bytes=None,.eof=False,.........
1ed20 20 20 20 20 20 20 20 6d 69 6d 65 5f 74 79 70 65 3d 4e 6f 6e 65 2c 20 72 6f 75 74 65 5f 63 6f 64 .......mime_type=None,.route_cod
1ed40 65 3d 4e 6f 6e 65 2c 20 74 69 6d 65 73 74 61 6d 70 3d 4e 6f 6e 65 29 3a 0a 20 20 20 20 20 20 20 e=None,.timestamp=None):........
1ed60 20 73 75 70 65 72 28 53 74 61 72 74 73 2c 20 73 65 6c 66 29 2e 73 74 61 74 75 73 28 0a 20 20 20 .super(Starts,.self).status(....
1ed80 20 20 20 20 20 20 20 20 20 74 65 73 74 5f 69 64 2c 20 74 65 73 74 5f 73 74 61 74 75 73 2c 0a 20 .........test_id,.test_status,..
1eda0 20 20 20 20 20 20 20 20 20 20 20 74 65 73 74 5f 74 61 67 73 3d 74 65 73 74 5f 74 61 67 73 2c 20 ...........test_tags=test_tags,.
1edc0 72 75 6e 6e 61 62 6c 65 3d 72 75 6e 6e 61 62 6c 65 2c 20 66 69 6c 65 5f 6e 61 6d 65 3d 66 69 6c runnable=runnable,.file_name=fil
1ede0 65 5f 6e 61 6d 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 69 6c 65 5f 62 79 74 65 73 3d 66 e_name,.............file_bytes=f
1ee00 69 6c 65 5f 62 79 74 65 73 2c 20 65 6f 66 3d 65 6f 66 2c 20 6d 69 6d 65 5f 74 79 70 65 3d 6d 69 ile_bytes,.eof=eof,.mime_type=mi
1ee20 6d 65 5f 74 79 70 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 75 74 65 5f 63 6f 64 65 3d me_type,.............route_code=
1ee40 72 6f 75 74 65 5f 63 6f 64 65 2c 20 74 69 6d 65 73 74 61 6d 70 3d 74 69 6d 65 73 74 61 6d 70 29 route_code,.timestamp=timestamp)
1ee60 0a 20 20 20 20 20 20 20 20 69 66 20 6e 6f 74 20 74 65 73 74 5f 69 64 3a 0a 20 20 20 20 20 20 20 .........if.not.test_id:........
1ee80 20 20 20 20 20 69 66 20 6e 6f 74 20 66 69 6c 65 5f 62 79 74 65 73 3a 0a 20 20 20 20 20 20 20 20 .....if.not.file_bytes:.........
1eea0 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 6e 6f ........return.............if.no
1eec0 74 20 6d 69 6d 65 5f 74 79 70 65 20 6f 72 20 6d 69 6d 65 5f 74 79 70 65 20 3d 3d 20 27 74 65 73 t.mime_type.or.mime_type.==.'tes
1eee0 74 2f 70 6c 61 69 6e 3b 63 68 61 72 73 65 74 3d 75 74 66 38 27 3a 0a 20 20 20 20 20 20 20 20 20 t/plain;charset=utf8':..........
1ef00 20 20 20 20 20 20 20 6d 69 6d 65 5f 74 79 70 65 20 3d 20 27 74 65 78 74 2f 70 6c 61 69 6e 3b 20 .......mime_type.=.'text/plain;.
1ef20 63 68 61 72 73 65 74 3d 75 74 66 2d 38 27 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 6d 61 charset=utf-8'.............prima
1ef40 72 79 2c 20 73 75 62 2c 20 70 61 72 61 6d 65 74 65 72 73 20 3d 20 6d 69 6d 65 70 61 72 73 65 2e ry,.sub,.parameters.=.mimeparse.
1ef60 70 61 72 73 65 5f 6d 69 6d 65 5f 74 79 70 65 28 6d 69 6d 65 5f 74 79 70 65 29 0a 20 20 20 20 20 parse_mime_type(mime_type)......
1ef80 20 20 20 20 20 20 20 63 6f 6e 74 65 6e 74 5f 74 79 70 65 20 3d 20 74 65 73 74 74 6f 6f 6c 73 2e .......content_type.=.testtools.
1efa0 63 6f 6e 74 65 6e 74 5f 74 79 70 65 2e 43 6f 6e 74 65 6e 74 54 79 70 65 28 0a 20 20 20 20 20 20 content_type.ContentType(.......
1efc0 20 20 20 20 20 20 20 20 20 20 70 72 69 6d 61 72 79 2c 20 73 75 62 2c 20 70 61 72 61 6d 65 74 65 ..........primary,.sub,.paramete
1efe0 72 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 74 65 6e 74 20 3d 20 74 65 73 74 74 6f rs).............content.=.testto
1f000 6f 6c 73 2e 63 6f 6e 74 65 6e 74 2e 43 6f 6e 74 65 6e 74 28 0a 20 20 20 20 20 20 20 20 20 20 20 ols.content.Content(............
1f020 20 20 20 20 20 63 6f 6e 74 65 6e 74 5f 74 79 70 65 2c 20 6c 61 6d 62 64 61 3a 20 5b 66 69 6c 65 .....content_type,.lambda:.[file
1f040 5f 62 79 74 65 73 5d 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 65 78 74 20 3d 20 63 6f 6e 74 _bytes]).............text.=.cont
1f060 65 6e 74 2e 61 73 5f 74 65 78 74 28 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 74 65 78 ent.as_text().............if.tex
1f080 74 20 61 6e 64 20 74 65 78 74 5b 2d 31 5d 20 6e 6f 74 20 69 6e 20 27 5c 72 5c 6e 27 3a 0a 20 20 t.and.text[-1].not.in.'\r\n':...
1f0a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 5f 6e 65 65 64 6e 65 77 6c 69 6e 65 20 ..............self._neednewline.
1f0c0 3d 20 54 72 75 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 5f 6f 75 74 70 75 74 2e =.True.............self._output.
1f0e0 77 72 69 74 65 28 74 65 78 74 29 0a 20 20 20 20 20 20 20 20 65 6c 69 66 20 74 65 73 74 5f 73 74 write(text).........elif.test_st
1f100 61 74 75 73 20 3d 3d 20 27 69 6e 70 72 6f 67 72 65 73 73 27 20 61 6e 64 20 74 65 73 74 5f 69 64 atus.==.'inprogress'.and.test_id
1f120 20 6e 6f 74 20 69 6e 20 73 65 6c 66 2e 5f 65 6d 69 74 74 65 64 3a 0a 20 20 20 20 20 20 20 20 20 .not.in.self._emitted:..........
1f140 20 20 20 69 66 20 73 65 6c 66 2e 5f 6e 65 65 64 6e 65 77 6c 69 6e 65 3a 0a 20 20 20 20 20 20 20 ...if.self._neednewline:........
1f160 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 5f 6e 65 65 64 6e 65 77 6c 69 6e 65 20 3d 20 46 61 6c .........self._neednewline.=.Fal
1f180 73 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 5f 6f 75 74 70 75 74 2e se.................self._output.
1f1a0 77 72 69 74 65 28 27 5c 6e 27 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 6f 72 6b 65 72 20 3d write('\n').............worker.=
1f1c0 20 27 27 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 74 61 67 20 69 6e 20 74 65 73 74 5f .''.............for.tag.in.test_
1f1e0 74 61 67 73 20 6f 72 20 28 29 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 74 tags.or.():.................if.t
1f200 61 67 2e 73 74 61 72 74 73 77 69 74 68 28 27 77 6f 72 6b 65 72 2d 27 29 3a 0a 20 20 20 20 20 20 ag.startswith('worker-'):.......
1f220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 6f 72 6b 65 72 20 3d 20 27 28 27 20 2b 20 74 61 67 ..............worker.=.'('.+.tag
1f240 5b 37 3a 5d 20 2b 20 27 29 20 27 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 74 69 6d 65 73 [7:].+.').'.............if.times
1f260 74 61 6d 70 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 69 6d 65 73 74 72 20 3d 20 tamp:.................timestr.=.
1f280 74 69 6d 65 73 74 61 6d 70 2e 69 73 6f 66 6f 72 6d 61 74 28 29 0a 20 20 20 20 20 20 20 20 20 20 timestamp.isoformat()...........
1f2a0 20 20 65 6c 73 65 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 69 6d 65 73 74 72 20 ..else:.................timestr.
1f2c0 3d 20 27 27 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 5f 6f 75 74 70 75 =.''.................self._outpu
1f2e0 74 2e 77 72 69 74 65 28 27 25 73 3a 20 25 73 25 73 20 5b 73 74 61 72 74 5d 5c 6e 27 20 25 0a 20 t.write('%s:.%s%s.[start]\n'.%..
1f300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1f320 20 20 28 74 69 6d 65 73 74 72 2c 20 77 6f 72 6b 65 72 2c 20 74 65 73 74 5f 69 64 29 29 0a 20 20 ..(timestr,.worker,.test_id))...
1f340 20 20 20 20 20 20 20 20 20 20 73 65 6c 66 2e 5f 65 6d 69 74 74 65 64 2e 61 64 64 28 74 65 73 74 ..........self._emitted.add(test
1f360 5f 69 64 29 0a 0a 0a 64 65 66 20 63 6c 65 61 6e 75 70 5f 74 65 73 74 5f 6e 61 6d 65 28 6e 61 6d _id)...def.cleanup_test_name(nam
1f380 65 2c 20 73 74 72 69 70 5f 74 61 67 73 3d 54 72 75 65 2c 20 73 74 72 69 70 5f 73 63 65 6e 61 72 e,.strip_tags=True,.strip_scenar
1f3a0 69 6f 73 3d 46 61 6c 73 65 29 3a 0a 20 20 20 20 22 22 22 43 6c 65 61 6e 20 75 70 20 74 68 65 20 ios=False):....."""Clean.up.the.
1f3c0 74 65 73 74 20 6e 61 6d 65 20 66 6f 72 20 64 69 73 70 6c 61 79 2e 0a 0a 20 20 20 20 42 79 20 64 test.name.for.display.......By.d
1f3e0 65 66 61 75 6c 74 20 77 65 20 73 74 72 69 70 20 6f 75 74 20 74 68 65 20 74 61 67 73 20 69 6e 20 efault.we.strip.out.the.tags.in.
1f400 74 68 65 20 74 65 73 74 20 62 65 63 61 75 73 65 20 74 68 65 79 20 64 6f 6e 27 74 20 68 65 6c 70 the.test.because.they.don't.help
1f420 20 75 73 0a 20 20 20 20 69 6e 20 69 64 65 6e 74 69 66 79 69 6e 67 20 74 68 65 20 74 65 73 74 20 .us.....in.identifying.the.test.
1f440 74 68 61 74 20 69 73 20 72 75 6e 20 74 6f 20 69 74 27 73 20 72 65 73 75 6c 74 2e 0a 0a 20 20 20 that.is.run.to.it's.result......
1f460 20 4d 61 6b 65 20 69 74 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 73 74 72 69 70 20 6f 75 74 20 74 .Make.it.possible.to.strip.out.t
1f480 68 65 20 74 65 73 74 73 63 65 6e 61 72 69 6f 73 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 28 6e 6f he.testscenarios.information.(no
1f4a0 74 20 74 6f 0a 20 20 20 20 62 65 20 63 6f 6e 66 75 73 65 64 20 77 69 74 68 20 74 65 6d 70 65 73 t.to.....be.confused.with.tempes
1f4c0 74 20 73 63 65 6e 61 72 69 6f 73 29 20 68 6f 77 65 76 65 72 20 74 68 61 74 27 73 20 6f 66 74 65 t.scenarios).however.that's.ofte
1f4e0 6e 20 6e 65 65 64 65 64 20 74 6f 0a 20 20 20 20 69 6e 64 65 6e 74 69 66 79 20 67 65 6e 65 72 61 n.needed.to.....indentify.genera
1f500 74 65 64 20 6e 65 67 61 74 69 76 65 20 74 65 73 74 73 2e 0a 20 20 20 20 22 22 22 0a 20 20 20 20 ted.negative.tests......""".....
1f520 69 66 20 73 74 72 69 70 5f 74 61 67 73 3a 0a 20 20 20 20 20 20 20 20 74 61 67 73 5f 73 74 61 72 if.strip_tags:.........tags_star
1f540 74 20 3d 20 6e 61 6d 65 2e 66 69 6e 64 28 27 5b 27 29 0a 20 20 20 20 20 20 20 20 74 61 67 73 5f t.=.name.find('[').........tags_
1f560 65 6e 64 20 3d 20 6e 61 6d 65 2e 66 69 6e 64 28 27 5d 27 29 0a 20 20 20 20 20 20 20 20 69 66 20 end.=.name.find(']').........if.
1f580 74 61 67 73 5f 73 74 61 72 74 20 3e 20 30 20 61 6e 64 20 74 61 67 73 5f 65 6e 64 20 3e 20 74 61 tags_start.>.0.and.tags_end.>.ta
1f5a0 67 73 5f 73 74 61 72 74 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 77 6e 61 6d 65 20 3d 20 gs_start:.............newname.=.
1f5c0 6e 61 6d 65 5b 3a 74 61 67 73 5f 73 74 61 72 74 5d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 name[:tags_start].............ne
1f5e0 77 6e 61 6d 65 20 2b 3d 20 6e 61 6d 65 5b 74 61 67 73 5f 65 6e 64 20 2b 20 31 3a 5d 0a 20 20 20 wname.+=.name[tags_end.+.1:]....
1f600 20 20 20 20 20 20 20 20 20 6e 61 6d 65 20 3d 20 6e 65 77 6e 61 6d 65 0a 0a 20 20 20 20 69 66 20 .........name.=.newname......if.
1f620 73 74 72 69 70 5f 73 63 65 6e 61 72 69 6f 73 3a 0a 20 20 20 20 20 20 20 20 74 61 67 73 5f 73 74 strip_scenarios:.........tags_st
1f640 61 72 74 20 3d 20 6e 61 6d 65 2e 66 69 6e 64 28 27 28 27 29 0a 20 20 20 20 20 20 20 20 74 61 67 art.=.name.find('(').........tag
1f660 73 5f 65 6e 64 20 3d 20 6e 61 6d 65 2e 66 69 6e 64 28 27 29 27 29 0a 20 20 20 20 20 20 20 20 69 s_end.=.name.find(')').........i
1f680 66 20 74 61 67 73 5f 73 74 61 72 74 20 3e 20 30 20 61 6e 64 20 74 61 67 73 5f 65 6e 64 20 3e 20 f.tags_start.>.0.and.tags_end.>.
1f6a0 74 61 67 73 5f 73 74 61 72 74 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 77 6e 61 6d 65 20 tags_start:.............newname.
1f6c0 3d 20 6e 61 6d 65 5b 3a 74 61 67 73 5f 73 74 61 72 74 5d 0a 20 20 20 20 20 20 20 20 20 20 20 20 =.name[:tags_start].............
1f6e0 6e 65 77 6e 61 6d 65 20 2b 3d 20 6e 61 6d 65 5b 74 61 67 73 5f 65 6e 64 20 2b 20 31 3a 5d 0a 20 newname.+=.name[tags_end.+.1:]..
1f700 20 20 20 20 20 20 20 20 20 20 20 6e 61 6d 65 20 3d 20 6e 65 77 6e 61 6d 65 0a 0a 20 20 20 20 72 ...........name.=.newname......r
1f720 65 74 75 72 6e 20 6e 61 6d 65 0a 0a 0a 64 65 66 20 67 65 74 5f 64 75 72 61 74 69 6f 6e 28 74 69 eturn.name...def.get_duration(ti
1f740 6d 65 73 74 61 6d 70 73 29 3a 0a 20 20 20 20 73 74 61 72 74 2c 20 65 6e 64 20 3d 20 74 69 6d 65 mestamps):.....start,.end.=.time
1f760 73 74 61 6d 70 73 0a 20 20 20 20 69 66 20 6e 6f 74 20 73 74 61 72 74 20 6f 72 20 6e 6f 74 20 65 stamps.....if.not.start.or.not.e
1f780 6e 64 3a 0a 20 20 20 20 20 20 20 20 64 75 72 61 74 69 6f 6e 20 3d 20 27 27 0a 20 20 20 20 65 6c nd:.........duration.=.''.....el
1f7a0 73 65 3a 0a 20 20 20 20 20 20 20 20 64 65 6c 74 61 20 3d 20 65 6e 64 20 2d 20 73 74 61 72 74 0a se:.........delta.=.end.-.start.
1f7c0 20 20 20 20 20 20 20 20 64 75 72 61 74 69 6f 6e 20 3d 20 27 25 64 2e 25 30 36 64 73 27 20 25 20 ........duration.=.'%d.%06ds'.%.
1f7e0 28 0a 20 20 20 20 20 20 20 20 20 20 20 20 64 65 6c 74 61 2e 64 61 79 73 20 2a 20 44 41 59 5f 53 (.............delta.days.*.DAY_S
1f800 45 43 4f 4e 44 53 20 2b 20 64 65 6c 74 61 2e 73 65 63 6f 6e 64 73 2c 20 64 65 6c 74 61 2e 6d 69 ECONDS.+.delta.seconds,.delta.mi
1f820 63 72 6f 73 65 63 6f 6e 64 73 29 0a 20 20 20 20 72 65 74 75 72 6e 20 64 75 72 61 74 69 6f 6e 0a croseconds).....return.duration.
1f840 0a 0a 64 65 66 20 66 69 6e 64 5f 77 6f 72 6b 65 72 28 74 65 73 74 29 3a 0a 20 20 20 20 66 6f 72 ..def.find_worker(test):.....for
1f860 20 74 61 67 20 69 6e 20 74 65 73 74 5b 27 74 61 67 73 27 5d 3a 0a 20 20 20 20 20 20 20 20 69 66 .tag.in.test['tags']:.........if
1f880 20 74 61 67 2e 73 74 61 72 74 73 77 69 74 68 28 27 77 6f 72 6b 65 72 2d 27 29 3a 0a 20 20 20 20 .tag.startswith('worker-'):.....
1f8a0 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 69 6e 74 28 74 61 67 5b 37 3a 5d 29 0a 20 20 20 20 ........return.int(tag[7:]).....
1f8c0 72 65 74 75 72 6e 20 27 4e 61 4e 27 0a 0a 0a 23 20 50 72 69 6e 74 20 6f 75 74 20 73 74 64 6f 75 return.'NaN'...#.Print.out.stdou
1f8e0 74 2f 73 74 64 65 72 72 20 69 66 20 69 74 20 65 78 69 73 74 73 2c 20 61 6c 77 61 79 73 0a 64 65 t/stderr.if.it.exists,.always.de
1f900 66 20 70 72 69 6e 74 5f 61 74 74 61 63 68 6d 65 6e 74 73 28 73 74 72 65 61 6d 2c 20 74 65 73 74 f.print_attachments(stream,.test
1f920 2c 20 61 6c 6c 5f 63 68 61 6e 6e 65 6c 73 3d 46 61 6c 73 65 29 3a 0a 20 20 20 20 22 22 22 50 72 ,.all_channels=False):....."""Pr
1f940 69 6e 74 20 6f 75 74 20 73 75 62 75 6e 69 74 20 61 74 74 61 63 68 6d 65 6e 74 73 2e 0a 0a 20 20 int.out.subunit.attachments.....
1f960 20 20 50 72 69 6e 74 20 6f 75 74 20 73 75 62 75 6e 69 74 20 61 74 74 61 63 68 6d 65 6e 74 73 20 ..Print.out.subunit.attachments.
1f980 74 68 61 74 20 63 6f 6e 74 61 69 6e 20 63 6f 6e 74 65 6e 74 2e 20 54 68 69 73 0a 20 20 20 20 72 that.contain.content..This.....r
1f9a0 75 6e 73 20 69 6e 20 32 20 6d 6f 64 65 73 2c 20 6f 6e 65 20 66 6f 72 20 73 75 63 63 65 73 73 65 uns.in.2.modes,.one.for.successe
1f9c0 73 20 77 68 65 72 65 20 77 65 20 70 72 69 6e 74 20 6f 75 74 20 6a 75 73 74 20 73 74 64 6f 75 74 s.where.we.print.out.just.stdout
1f9e0 0a 20 20 20 20 61 6e 64 20 73 74 64 65 72 72 2c 20 61 6e 64 20 61 6e 20 6f 76 65 72 72 69 64 65 .....and.stderr,.and.an.override
1fa00 20 74 68 61 74 20 64 75 6d 70 73 20 61 6c 6c 20 74 68 65 20 61 74 74 61 63 68 6d 65 6e 74 73 2e .that.dumps.all.the.attachments.
1fa20 0a 20 20 20 20 22 22 22 0a 20 20 20 20 63 68 61 6e 6e 65 6c 73 20 3d 20 28 27 73 74 64 6f 75 74 .....""".....channels.=.('stdout
1fa40 27 2c 20 27 73 74 64 65 72 72 27 29 0a 20 20 20 20 66 6f 72 20 6e 61 6d 65 2c 20 64 65 74 61 69 ',.'stderr').....for.name,.detai
1fa60 6c 20 69 6e 20 74 65 73 74 5b 27 64 65 74 61 69 6c 73 27 5d 2e 69 74 65 6d 73 28 29 3a 0a 20 20 l.in.test['details'].items():...
1fa80 20 20 20 20 20 20 23 20 4e 4f 54 45 28 73 64 61 67 75 65 29 3a 20 74 68 65 20 73 75 62 75 6e 69 ......#.NOTE(sdague):.the.subuni
1faa0 74 20 6e 61 6d 65 73 20 61 72 65 20 61 20 6c 69 74 74 6c 65 20 63 72 61 7a 79 2c 20 61 6e 64 20 t.names.are.a.little.crazy,.and.
1fac0 61 63 74 75 61 6c 6c 79 0a 20 20 20 20 20 20 20 20 23 20 61 72 65 20 69 6e 20 74 68 65 20 66 6f actually.........#.are.in.the.fo
1fae0 72 6d 20 70 79 74 68 6f 6e 6c 6f 67 67 69 6e 67 3a 27 27 20 28 77 69 74 68 20 74 68 65 20 63 6f rm.pythonlogging:''.(with.the.co
1fb00 6c 6f 6e 20 61 6e 64 20 71 75 6f 74 65 73 29 0a 20 20 20 20 20 20 20 20 6e 61 6d 65 20 3d 20 6e lon.and.quotes).........name.=.n
1fb20 61 6d 65 2e 73 70 6c 69 74 28 27 3a 27 29 5b 30 5d 0a 20 20 20 20 20 20 20 20 69 66 20 64 65 74 ame.split(':')[0].........if.det
1fb40 61 69 6c 2e 63 6f 6e 74 65 6e 74 5f 74 79 70 65 2e 74 79 70 65 20 3d 3d 20 27 74 65 73 74 27 3a ail.content_type.type.==.'test':
1fb60 0a 20 20 20 20 20 20 20 20 20 20 20 20 64 65 74 61 69 6c 2e 63 6f 6e 74 65 6e 74 5f 74 79 70 65 .............detail.content_type
1fb80 2e 74 79 70 65 20 3d 20 27 74 65 78 74 27 0a 20 20 20 20 20 20 20 20 69 66 20 28 61 6c 6c 5f 63 .type.=.'text'.........if.(all_c
1fba0 68 61 6e 6e 65 6c 73 20 6f 72 20 6e 61 6d 65 20 69 6e 20 63 68 61 6e 6e 65 6c 73 29 20 61 6e 64 hannels.or.name.in.channels).and
1fbc0 20 64 65 74 61 69 6c 2e 61 73 5f 74 65 78 74 28 29 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 .detail.as_text():.............t
1fbe0 69 74 6c 65 20 3d 20 22 43 61 70 74 75 72 65 64 20 25 73 3a 22 20 25 20 6e 61 6d 65 0a 20 20 20 itle.=."Captured.%s:".%.name....
1fc00 20 20 20 20 20 20 20 20 20 73 74 72 65 61 6d 2e 77 72 69 74 65 28 22 5c 6e 25 73 5c 6e 25 73 5c .........stream.write("\n%s\n%s\
1fc20 6e 22 20 25 20 28 74 69 74 6c 65 2c 20 28 27 7e 27 20 2a 20 6c 65 6e 28 74 69 74 6c 65 29 29 29 n".%.(title,.('~'.*.len(title)))
1fc40 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 23 20 69 6e 64 65 6e 74 20 61 74 74 61 63 68 6d 65 6e ).............#.indent.attachmen
1fc60 74 20 6c 69 6e 65 73 20 34 20 73 70 61 63 65 73 20 74 6f 20 6d 61 6b 65 20 74 68 65 6d 20 76 69 t.lines.4.spaces.to.make.them.vi
1fc80 73 75 61 6c 6c 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 23 20 6f 66 66 73 65 74 0a 20 20 20 20 sually.............#.offset.....
1fca0 20 20 20 20 20 20 20 20 66 6f 72 20 6c 69 6e 65 20 69 6e 20 64 65 74 61 69 6c 2e 61 73 5f 74 65 ........for.line.in.detail.as_te
1fcc0 78 74 28 29 2e 73 70 6c 69 74 28 27 5c 6e 27 29 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 xt().split('\n'):...............
1fce0 20 20 73 74 72 65 61 6d 2e 77 72 69 74 65 28 22 20 20 20 20 25 73 5c 6e 22 20 25 20 6c 69 6e 65 ..stream.write("....%s\n".%.line
1fd00 29 0a 0a 0a 64 65 66 20 73 68 6f 77 5f 6f 75 74 63 6f 6d 65 28 73 74 72 65 61 6d 2c 20 74 65 73 )...def.show_outcome(stream,.tes
1fd20 74 2c 20 70 72 69 6e 74 5f 66 61 69 6c 75 72 65 73 3d 46 61 6c 73 65 2c 20 66 61 69 6c 6f 6e 6c t,.print_failures=False,.failonl
1fd40 79 3d 46 61 6c 73 65 29 3a 0a 20 20 20 20 67 6c 6f 62 61 6c 20 52 45 53 55 4c 54 53 0a 20 20 20 y=False):.....global.RESULTS....
1fd60 20 73 74 61 74 75 73 20 3d 20 74 65 73 74 5b 27 73 74 61 74 75 73 27 5d 0a 20 20 20 20 23 20 54 .status.=.test['status'].....#.T
1fd80 4f 44 4f 28 73 64 61 67 75 65 29 3a 20 61 73 6b 20 6c 69 66 65 6c 65 73 73 20 77 68 79 20 6f 6e ODO(sdague):.ask.lifeless.why.on
1fda0 20 74 68 69 73 3f 0a 20 20 20 20 69 66 20 73 74 61 74 75 73 20 3d 3d 20 27 65 78 69 73 74 73 27 .this?.....if.status.==.'exists'
1fdc0 3a 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 0a 0a 20 20 20 20 77 6f 72 6b 65 72 20 3d 20 66 :.........return......worker.=.f
1fde0 69 6e 64 5f 77 6f 72 6b 65 72 28 74 65 73 74 29 0a 20 20 20 20 6e 61 6d 65 20 3d 20 63 6c 65 61 ind_worker(test).....name.=.clea
1fe00 6e 75 70 5f 74 65 73 74 5f 6e 61 6d 65 28 74 65 73 74 5b 27 69 64 27 5d 29 0a 20 20 20 20 64 75 nup_test_name(test['id']).....du
1fe20 72 61 74 69 6f 6e 20 3d 20 67 65 74 5f 64 75 72 61 74 69 6f 6e 28 74 65 73 74 5b 27 74 69 6d 65 ration.=.get_duration(test['time
1fe40 73 74 61 6d 70 73 27 5d 29 0a 0a 20 20 20 20 69 66 20 77 6f 72 6b 65 72 20 6e 6f 74 20 69 6e 20 stamps'])......if.worker.not.in.
1fe60 52 45 53 55 4c 54 53 3a 0a 20 20 20 20 20 20 20 20 52 45 53 55 4c 54 53 5b 77 6f 72 6b 65 72 5d RESULTS:.........RESULTS[worker]
1fe80 20 3d 20 5b 5d 0a 20 20 20 20 52 45 53 55 4c 54 53 5b 77 6f 72 6b 65 72 5d 2e 61 70 70 65 6e 64 .=.[].....RESULTS[worker].append
1fea0 28 74 65 73 74 29 0a 0a 20 20 20 20 23 20 64 6f 6e 27 74 20 63 6f 75 6e 74 20 74 68 65 20 65 6e (test)......#.don't.count.the.en
1fec0 64 20 6f 66 20 74 68 65 20 72 65 74 75 72 6e 20 63 6f 64 65 20 61 73 20 61 20 66 61 69 6c 0a 20 d.of.the.return.code.as.a.fail..
1fee0 20 20 20 69 66 20 6e 61 6d 65 20 3d 3d 20 27 70 72 6f 63 65 73 73 2d 72 65 74 75 72 6e 63 6f 64 ...if.name.==.'process-returncod
1ff00 65 27 3a 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 0a 0a 20 20 20 20 69 66 20 73 74 61 74 75 e':.........return......if.statu
1ff20 73 20 3d 3d 20 27 66 61 69 6c 27 3a 0a 20 20 20 20 20 20 20 20 46 41 49 4c 53 2e 61 70 70 65 6e s.==.'fail':.........FAILS.appen
1ff40 64 28 74 65 73 74 29 0a 20 20 20 20 20 20 20 20 73 74 72 65 61 6d 2e 77 72 69 74 65 28 27 7b 25 d(test).........stream.write('{%
1ff60 73 7d 20 25 73 20 5b 25 73 5d 20 2e 2e 2e 20 46 41 49 4c 45 44 5c 6e 27 20 25 20 28 0a 20 20 20 s}.%s.[%s].....FAILED\n'.%.(....
1ff80 20 20 20 20 20 20 20 20 20 77 6f 72 6b 65 72 2c 20 6e 61 6d 65 2c 20 64 75 72 61 74 69 6f 6e 29 .........worker,.name,.duration)
1ffa0 29 0a 20 20 20 20 20 20 20 20 69 66 20 6e 6f 74 20 70 72 69 6e 74 5f 66 61 69 6c 75 72 65 73 3a ).........if.not.print_failures:
1ffc0 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 6e 74 5f 61 74 74 61 63 68 6d 65 6e 74 73 28 73 .............print_attachments(s
1ffe0 74 72 65 61 6d 2c 20 74 65 73 74 2c 20 61 6c 6c 5f 63 68 61 6e 6e 65 6c 73 3d 54 72 75 65 29 0a tream,.test,.all_channels=True).
20000 20 20 20 20 65 6c 69 66 20 6e 6f 74 20 66 61 69 6c 6f 6e 6c 79 3a 0a 20 20 20 20 20 20 20 20 69 ....elif.not.failonly:.........i
20020 66 20 73 74 61 74 75 73 20 3d 3d 20 27 73 75 63 63 65 73 73 27 3a 0a 20 20 20 20 20 20 20 20 20 f.status.==.'success':..........
20040 20 20 20 73 74 72 65 61 6d 2e 77 72 69 74 65 28 27 7b 25 73 7d 20 25 73 20 5b 25 73 5d 20 2e 2e ...stream.write('{%s}.%s.[%s]...
20060 2e 20 6f 6b 5c 6e 27 20 25 20 28 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 6f 72 6b ..ok\n'.%.(.................work
20080 65 72 2c 20 6e 61 6d 65 2c 20 64 75 72 61 74 69 6f 6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 er,.name,.duration))............
200a0 20 70 72 69 6e 74 5f 61 74 74 61 63 68 6d 65 6e 74 73 28 73 74 72 65 61 6d 2c 20 74 65 73 74 29 .print_attachments(stream,.test)
200c0 0a 20 20 20 20 20 20 20 20 65 6c 69 66 20 73 74 61 74 75 73 20 3d 3d 20 27 73 6b 69 70 27 3a 0a .........elif.status.==.'skip':.
200e0 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 65 61 6d 2e 77 72 69 74 65 28 27 7b 25 73 7d 20 25 ............stream.write('{%s}.%
20100 73 20 2e 2e 2e 20 53 4b 49 50 50 45 44 3a 20 25 73 5c 6e 27 20 25 20 28 0a 20 20 20 20 20 20 20 s.....SKIPPED:.%s\n'.%.(........
20120 20 20 20 20 20 20 20 20 20 77 6f 72 6b 65 72 2c 20 6e 61 6d 65 2c 20 74 65 73 74 5b 27 64 65 74 .........worker,.name,.test['det
20140 61 69 6c 73 27 5d 5b 27 72 65 61 73 6f 6e 27 5d 2e 61 73 5f 74 65 78 74 28 29 29 29 0a 20 20 20 ails']['reason'].as_text()))....
20160 20 20 20 20 20 65 6c 73 65 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 65 61 6d 2e 77 72 .....else:.............stream.wr
20180 69 74 65 28 27 7b 25 73 7d 20 25 73 20 5b 25 73 5d 20 2e 2e 2e 20 25 73 5c 6e 27 20 25 20 28 0a ite('{%s}.%s.[%s].....%s\n'.%.(.
201a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 6f 72 6b 65 72 2c 20 6e 61 6d 65 2c 20 64 75 ................worker,.name,.du
201c0 72 61 74 69 6f 6e 2c 20 74 65 73 74 5b 27 73 74 61 74 75 73 27 5d 29 29 0a 20 20 20 20 20 20 20 ration,.test['status']))........
201e0 20 20 20 20 20 69 66 20 6e 6f 74 20 70 72 69 6e 74 5f 66 61 69 6c 75 72 65 73 3a 0a 20 20 20 20 .....if.not.print_failures:.....
20200 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 6e 74 5f 61 74 74 61 63 68 6d 65 6e 74 73 28 73 74 ............print_attachments(st
20220 72 65 61 6d 2c 20 74 65 73 74 2c 20 61 6c 6c 5f 63 68 61 6e 6e 65 6c 73 3d 54 72 75 65 29 0a 0a ream,.test,.all_channels=True)..
20240 20 20 20 20 73 74 72 65 61 6d 2e 66 6c 75 73 68 28 29 0a 0a 0a 64 65 66 20 70 72 69 6e 74 5f 66 ....stream.flush()...def.print_f
20260 61 69 6c 73 28 73 74 72 65 61 6d 29 3a 0a 20 20 20 20 22 22 22 50 72 69 6e 74 20 73 75 6d 6d 61 ails(stream):....."""Print.summa
20280 72 79 20 66 61 69 6c 75 72 65 20 72 65 70 6f 72 74 2e 0a 0a 20 20 20 20 43 75 72 72 65 6e 74 6c ry.failure.report.......Currentl
202a0 79 20 75 6e 75 73 65 64 2c 20 68 6f 77 65 76 65 72 20 74 68 65 72 65 20 72 65 6d 61 69 6e 73 20 y.unused,.however.there.remains.
202c0 64 65 62 61 74 65 20 6f 6e 20 69 6e 6c 69 6e 65 20 76 73 2e 20 61 74 20 65 6e 64 0a 20 20 20 20 debate.on.inline.vs..at.end.....
202e0 72 65 70 6f 72 74 69 6e 67 2c 20 73 6f 20 6c 65 61 76 65 20 74 68 65 20 75 74 69 6c 69 74 79 20 reporting,.so.leave.the.utility.
20300 66 75 6e 63 74 69 6f 6e 20 66 6f 72 20 6c 61 74 65 72 20 75 73 65 2e 0a 20 20 20 20 22 22 22 0a function.for.later.use......""".
20320 20 20 20 20 69 66 20 6e 6f 74 20 46 41 49 4c 53 3a 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e ....if.not.FAILS:.........return
20340 0a 20 20 20 20 73 74 72 65 61 6d 2e 77 72 69 74 65 28 22 5c 6e 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d .....stream.write("\n===========
20360 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 5c 6e 22 29 0a 20 20 20 20 73 74 72 65 ===================\n").....stre
20380 61 6d 2e 77 72 69 74 65 28 22 46 61 69 6c 65 64 20 25 73 20 74 65 73 74 73 20 2d 20 6f 75 74 70 am.write("Failed.%s.tests.-.outp
203a0 75 74 20 62 65 6c 6f 77 3a 22 20 25 20 6c 65 6e 28 46 41 49 4c 53 29 29 0a 20 20 20 20 73 74 72 ut.below:".%.len(FAILS)).....str
203c0 65 61 6d 2e 77 72 69 74 65 28 22 5c 6e 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d eam.write("\n===================
203e0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 5c 6e 22 29 0a 20 20 20 20 66 6f 72 20 66 20 69 6e 20 46 41 49 ===========\n").....for.f.in.FAI
20400 4c 53 3a 0a 20 20 20 20 20 20 20 20 73 74 72 65 61 6d 2e 77 72 69 74 65 28 22 5c 6e 25 73 5c 6e LS:.........stream.write("\n%s\n
20420 22 20 25 20 66 5b 27 69 64 27 5d 29 0a 20 20 20 20 20 20 20 20 73 74 72 65 61 6d 2e 77 72 69 74 ".%.f['id']).........stream.writ
20440 65 28 22 25 73 5c 6e 22 20 25 20 28 27 2d 27 20 2a 20 6c 65 6e 28 66 5b 27 69 64 27 5d 29 29 29 e("%s\n".%.('-'.*.len(f['id'])))
20460 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 5f 61 74 74 61 63 68 6d 65 6e 74 73 28 73 74 72 65 61 .........print_attachments(strea
20480 6d 2c 20 66 2c 20 61 6c 6c 5f 63 68 61 6e 6e 65 6c 73 3d 54 72 75 65 29 0a 20 20 20 20 73 74 72 m,.f,.all_channels=True).....str
204a0 65 61 6d 2e 77 72 69 74 65 28 27 5c 6e 27 29 0a 0a 0a 64 65 66 20 63 6f 75 6e 74 5f 74 65 73 74 eam.write('\n')...def.count_test
204c0 73 28 6b 65 79 2c 20 76 61 6c 75 65 29 3a 0a 20 20 20 20 63 6f 75 6e 74 20 3d 20 30 0a 20 20 20 s(key,.value):.....count.=.0....
204e0 20 66 6f 72 20 6b 2c 20 76 20 69 6e 20 52 45 53 55 4c 54 53 2e 69 74 65 6d 73 28 29 3a 0a 20 20 .for.k,.v.in.RESULTS.items():...
20500 20 20 20 20 20 20 66 6f 72 20 69 74 65 6d 20 69 6e 20 76 3a 0a 20 20 20 20 20 20 20 20 20 20 20 ......for.item.in.v:............
20520 20 69 66 20 6b 65 79 20 69 6e 20 69 74 65 6d 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .if.key.in.item:................
20540 20 69 66 20 72 65 2e 73 65 61 72 63 68 28 76 61 6c 75 65 2c 20 69 74 65 6d 5b 6b 65 79 5d 29 3a .if.re.search(value,.item[key]):
20560 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 75 6e 74 20 2b 3d 20 31 0a .....................count.+=.1.
20580 20 20 20 20 72 65 74 75 72 6e 20 63 6f 75 6e 74 0a 0a 0a 64 65 66 20 72 75 6e 5f 74 69 6d 65 28 ....return.count...def.run_time(
205a0 29 3a 0a 20 20 20 20 72 75 6e 74 69 6d 65 20 3d 20 30 2e 30 0a 20 20 20 20 66 6f 72 20 6b 2c 20 ):.....runtime.=.0.0.....for.k,.
205c0 76 20 69 6e 20 52 45 53 55 4c 54 53 2e 69 74 65 6d 73 28 29 3a 0a 20 20 20 20 20 20 20 20 66 6f v.in.RESULTS.items():.........fo
205e0 72 20 74 65 73 74 20 69 6e 20 76 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 75 6e 74 69 6d 65 r.test.in.v:.............runtime
20600 20 2b 3d 20 66 6c 6f 61 74 28 67 65 74 5f 64 75 72 61 74 69 6f 6e 28 74 65 73 74 5b 27 74 69 6d .+=.float(get_duration(test['tim
20620 65 73 74 61 6d 70 73 27 5d 29 2e 73 74 72 69 70 28 27 73 27 29 29 0a 20 20 20 20 72 65 74 75 72 estamps']).strip('s')).....retur
20640 6e 20 72 75 6e 74 69 6d 65 0a 0a 0a 64 65 66 20 77 6f 72 6b 65 72 5f 73 74 61 74 73 28 77 6f 72 n.runtime...def.worker_stats(wor
20660 6b 65 72 29 3a 0a 20 20 20 20 74 65 73 74 73 20 3d 20 52 45 53 55 4c 54 53 5b 77 6f 72 6b 65 72 ker):.....tests.=.RESULTS[worker
20680 5d 0a 20 20 20 20 6e 75 6d 5f 74 65 73 74 73 20 3d 20 6c 65 6e 28 74 65 73 74 73 29 0a 20 20 20 ].....num_tests.=.len(tests)....
206a0 20 64 65 6c 74 61 20 3d 20 74 65 73 74 73 5b 2d 31 5d 5b 27 74 69 6d 65 73 74 61 6d 70 73 27 5d .delta.=.tests[-1]['timestamps']
206c0 5b 31 5d 20 2d 20 74 65 73 74 73 5b 30 5d 5b 27 74 69 6d 65 73 74 61 6d 70 73 27 5d 5b 30 5d 0a [1].-.tests[0]['timestamps'][0].
206e0 20 20 20 20 72 65 74 75 72 6e 20 6e 75 6d 5f 74 65 73 74 73 2c 20 64 65 6c 74 61 0a 0a 0a 64 65 ....return.num_tests,.delta...de
20700 66 20 70 72 69 6e 74 5f 73 75 6d 6d 61 72 79 28 73 74 72 65 61 6d 29 3a 0a 20 20 20 20 73 74 72 f.print_summary(stream):.....str
20720 65 61 6d 2e 77 72 69 74 65 28 22 5c 6e 3d 3d 3d 3d 3d 3d 5c 6e 54 6f 74 61 6c 73 5c 6e 3d 3d 3d eam.write("\n======\nTotals\n===
20740 3d 3d 3d 5c 6e 22 29 0a 20 20 20 20 73 74 72 65 61 6d 2e 77 72 69 74 65 28 22 52 75 6e 3a 20 25 ===\n").....stream.write("Run:.%
20760 73 20 69 6e 20 25 73 20 73 65 63 2e 5c 6e 22 20 25 20 28 63 6f 75 6e 74 5f 74 65 73 74 73 28 27 s.in.%s.sec.\n".%.(count_tests('
20780 73 74 61 74 75 73 27 2c 20 27 2e 2a 27 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 status',.'.*'),.................
207a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 75 6e 5f 74 ...........................run_t
207c0 69 6d 65 28 29 29 29 0a 20 20 20 20 73 74 72 65 61 6d 2e 77 72 69 74 65 28 22 20 2d 20 50 61 73 ime())).....stream.write(".-.Pas
207e0 73 65 64 3a 20 25 73 5c 6e 22 20 25 20 63 6f 75 6e 74 5f 74 65 73 74 73 28 27 73 74 61 74 75 73 sed:.%s\n".%.count_tests('status
20800 27 2c 20 27 73 75 63 63 65 73 73 27 29 29 0a 20 20 20 20 73 74 72 65 61 6d 2e 77 72 69 74 65 28 ',.'success')).....stream.write(
20820 22 20 2d 20 53 6b 69 70 70 65 64 3a 20 25 73 5c 6e 22 20 25 20 63 6f 75 6e 74 5f 74 65 73 74 73 ".-.Skipped:.%s\n".%.count_tests
20840 28 27 73 74 61 74 75 73 27 2c 20 27 73 6b 69 70 27 29 29 0a 20 20 20 20 73 74 72 65 61 6d 2e 77 ('status',.'skip')).....stream.w
20860 72 69 74 65 28 22 20 2d 20 46 61 69 6c 65 64 3a 20 25 73 5c 6e 22 20 25 20 63 6f 75 6e 74 5f 74 rite(".-.Failed:.%s\n".%.count_t
20880 65 73 74 73 28 27 73 74 61 74 75 73 27 2c 20 27 66 61 69 6c 27 29 29 0a 0a 20 20 20 20 23 20 77 ests('status',.'fail'))......#.w
208a0 65 20 63 6f 75 6c 64 20 68 61 76 65 20 6e 6f 20 72 65 73 75 6c 74 73 2c 20 65 73 70 65 63 69 61 e.could.have.no.results,.especia
208c0 6c 6c 79 20 61 73 20 77 65 20 66 69 6c 74 65 72 20 6f 75 74 20 74 68 65 20 70 72 6f 63 65 73 73 lly.as.we.filter.out.the.process
208e0 2d 63 6f 64 65 73 0a 20 20 20 20 69 66 20 52 45 53 55 4c 54 53 3a 0a 20 20 20 20 20 20 20 20 73 -codes.....if.RESULTS:.........s
20900 74 72 65 61 6d 2e 77 72 69 74 65 28 22 5c 6e 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 5c 6e 57 tream.write("\n==============\nW
20920 6f 72 6b 65 72 20 42 61 6c 61 6e 63 65 5c 6e 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 5c 6e 22 orker.Balance\n==============\n"
20940 29 0a 0a 20 20 20 20 20 20 20 20 66 6f 72 20 77 20 69 6e 20 72 61 6e 67 65 28 6d 61 78 28 52 45 )..........for.w.in.range(max(RE
20960 53 55 4c 54 53 2e 6b 65 79 73 28 29 29 20 2b 20 31 29 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 SULTS.keys()).+.1):.............
20980 69 66 20 77 20 6e 6f 74 20 69 6e 20 52 45 53 55 4c 54 53 3a 0a 20 20 20 20 20 20 20 20 20 20 20 if.w.not.in.RESULTS:............
209a0 20 20 20 20 20 73 74 72 65 61 6d 2e 77 72 69 74 65 28 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 .....stream.write(..............
209c0 20 20 20 20 20 20 20 22 20 2d 20 57 41 52 4e 49 4e 47 3a 20 6d 69 73 73 69 6e 67 20 57 6f 72 6b .......".-.WARNING:.missing.Work
209e0 65 72 20 25 73 21 20 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 52 61 er.%s!."....................."Ra
20a00 63 65 20 69 6e 20 74 65 73 74 72 20 61 63 63 6f 75 6e 74 69 6e 67 2e 5c 6e 22 20 25 20 77 29 0a ce.in.testr.accounting.\n".%.w).
20a20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ............else:...............
20a40 20 20 6e 75 6d 2c 20 74 69 6d 65 20 3d 20 77 6f 72 6b 65 72 5f 73 74 61 74 73 28 77 29 0a 20 20 ..num,.time.=.worker_stats(w)...
20a60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 65 61 6d 2e 77 72 69 74 65 28 22 20 2d 20 57 ..............stream.write(".-.W
20a80 6f 72 6b 65 72 20 25 73 20 28 25 73 20 74 65 73 74 73 29 20 3d 3e 20 25 73 73 5c 6e 22 20 25 0a orker.%s.(%s.tests).=>.%ss\n".%.
20aa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 2c .............................(w,
20ac0 20 6e 75 6d 2c 20 74 69 6d 65 29 29 0a 0a 0a 64 65 66 20 70 61 72 73 65 5f 61 72 67 73 28 29 3a .num,.time))...def.parse_args():
20ae0 0a 20 20 20 20 70 61 72 73 65 72 20 3d 20 61 72 67 70 61 72 73 65 2e 41 72 67 75 6d 65 6e 74 50 .....parser.=.argparse.ArgumentP
20b00 61 72 73 65 72 28 29 0a 20 20 20 20 70 61 72 73 65 72 2e 61 64 64 5f 61 72 67 75 6d 65 6e 74 28 arser().....parser.add_argument(
20b20 27 2d 2d 6e 6f 2d 66 61 69 6c 75 72 65 2d 64 65 62 75 67 27 2c 20 27 2d 6e 27 2c 20 61 63 74 69 '--no-failure-debug',.'-n',.acti
20b40 6f 6e 3d 27 73 74 6f 72 65 5f 74 72 75 65 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 on='store_true',................
20b60 20 20 20 20 20 20 20 20 20 64 65 73 74 3d 27 70 72 69 6e 74 5f 66 61 69 6c 75 72 65 73 27 2c 20 .........dest='print_failures',.
20b80 68 65 6c 70 3d 27 44 69 73 61 62 6c 65 20 70 72 69 6e 74 69 6e 67 20 66 61 69 6c 75 72 65 20 27 help='Disable.printing.failure.'
20ba0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 64 65 62 75 67 20 .........................'debug.
20bc0 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 69 6e 20 72 65 61 6c 74 69 6d 65 27 29 0a 20 20 20 20 70 61 information.in.realtime').....pa
20be0 72 73 65 72 2e 61 64 64 5f 61 72 67 75 6d 65 6e 74 28 27 2d 2d 66 61 69 6c 73 27 2c 20 27 2d 66 rser.add_argument('--fails',.'-f
20c00 27 2c 20 61 63 74 69 6f 6e 3d 27 73 74 6f 72 65 5f 74 72 75 65 27 2c 0a 20 20 20 20 20 20 20 20 ',.action='store_true',.........
20c20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 65 73 74 3d 27 70 6f 73 74 5f 66 61 69 6c 73 ................dest='post_fails
20c40 27 2c 20 68 65 6c 70 3d 27 50 72 69 6e 74 20 66 61 69 6c 75 72 65 20 64 65 62 75 67 20 27 0a 20 ',.help='Print.failure.debug.'..
20c60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 69 6e 66 6f 72 6d 61 74 .......................'informat
20c80 69 6f 6e 20 61 66 74 65 72 20 74 68 65 20 73 74 72 65 61 6d 20 69 73 20 70 72 6f 63 63 65 73 65 ion.after.the.stream.is.proccese
20ca0 64 27 29 0a 20 20 20 20 70 61 72 73 65 72 2e 61 64 64 5f 61 72 67 75 6d 65 6e 74 28 27 2d 2d 66 d').....parser.add_argument('--f
20cc0 61 69 6c 6f 6e 6c 79 27 2c 20 61 63 74 69 6f 6e 3d 27 73 74 6f 72 65 5f 74 72 75 65 27 2c 0a 20 ailonly',.action='store_true',..
20ce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 65 73 74 3d 27 66 61 69 .......................dest='fai
20d00 6c 6f 6e 6c 79 27 2c 20 68 65 6c 70 3d 22 44 6f 6e 27 74 20 70 72 69 6e 74 20 73 75 63 63 65 73 lonly',.help="Don't.print.succes
20d20 73 20 69 74 65 6d 73 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 s.items",.......................
20d40 20 20 64 65 66 61 75 6c 74 3d 28 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..default=(.....................
20d60 20 20 20 20 20 20 20 20 6f 73 2e 65 6e 76 69 72 6f 6e 2e 67 65 74 28 27 54 52 41 43 45 5f 46 41 ........os.environ.get('TRACE_FA
20d80 49 4c 4f 4e 4c 59 27 2c 20 46 61 6c 73 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ILONLY',.False).................
20da0 20 20 20 20 20 20 20 20 20 20 20 20 69 73 20 6e 6f 74 20 46 61 6c 73 65 29 29 0a 20 20 20 20 72 ............is.not.False)).....r
20dc0 65 74 75 72 6e 20 70 61 72 73 65 72 2e 70 61 72 73 65 5f 61 72 67 73 28 29 0a 0a 0a 64 65 66 20 eturn.parser.parse_args()...def.
20de0 6d 61 69 6e 28 29 3a 0a 20 20 20 20 61 72 67 73 20 3d 20 70 61 72 73 65 5f 61 72 67 73 28 29 0a main():.....args.=.parse_args().
20e00 20 20 20 20 73 74 72 65 61 6d 20 3d 20 73 75 62 75 6e 69 74 2e 42 79 74 65 53 74 72 65 61 6d 54 ....stream.=.subunit.ByteStreamT
20e20 6f 53 74 72 65 61 6d 52 65 73 75 6c 74 28 0a 20 20 20 20 20 20 20 20 73 79 73 2e 73 74 64 69 6e oStreamResult(.........sys.stdin
20e40 2c 20 6e 6f 6e 5f 73 75 62 75 6e 69 74 5f 6e 61 6d 65 3d 27 73 74 64 6f 75 74 27 29 0a 20 20 20 ,.non_subunit_name='stdout')....
20e60 20 73 74 61 72 74 73 20 3d 20 53 74 61 72 74 73 28 73 79 73 2e 73 74 64 6f 75 74 29 0a 20 20 20 .starts.=.Starts(sys.stdout)....
20e80 20 6f 75 74 63 6f 6d 65 73 20 3d 20 74 65 73 74 74 6f 6f 6c 73 2e 53 74 72 65 61 6d 54 6f 44 69 .outcomes.=.testtools.StreamToDi
20ea0 63 74 28 0a 20 20 20 20 20 20 20 20 66 75 6e 63 74 6f 6f 6c 73 2e 70 61 72 74 69 61 6c 28 73 68 ct(.........functools.partial(sh
20ec0 6f 77 5f 6f 75 74 63 6f 6d 65 2c 20 73 79 73 2e 73 74 64 6f 75 74 2c 0a 20 20 20 20 20 20 20 20 ow_outcome,.sys.stdout,.........
20ee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 6e 74 5f 66 61 69 6c 75 72 65 73 ..................print_failures
20f00 3d 61 72 67 73 2e 70 72 69 6e 74 5f 66 61 69 6c 75 72 65 73 2c 0a 20 20 20 20 20 20 20 20 20 20 =args.print_failures,...........
20f20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 61 69 6c 6f 6e 6c 79 3d 61 72 67 73 2e 66 61 ................failonly=args.fa
20f40 69 6c 6f 6e 6c 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 29 29 0a ilonly.......................)).
20f60 20 20 20 20 73 75 6d 6d 61 72 79 20 3d 20 74 65 73 74 74 6f 6f 6c 73 2e 53 74 72 65 61 6d 53 75 ....summary.=.testtools.StreamSu
20f80 6d 6d 61 72 79 28 29 0a 20 20 20 20 72 65 73 75 6c 74 20 3d 20 74 65 73 74 74 6f 6f 6c 73 2e 43 mmary().....result.=.testtools.C
20fa0 6f 70 79 53 74 72 65 61 6d 52 65 73 75 6c 74 28 5b 73 74 61 72 74 73 2c 20 6f 75 74 63 6f 6d 65 opyStreamResult([starts,.outcome
20fc0 73 2c 20 73 75 6d 6d 61 72 79 5d 29 0a 20 20 20 20 72 65 73 75 6c 74 2e 73 74 61 72 74 54 65 73 s,.summary]).....result.startTes
20fe0 74 52 75 6e 28 29 0a 20 20 20 20 74 72 79 3a 0a 20 20 20 20 20 20 20 20 73 74 72 65 61 6d 2e 72 tRun().....try:.........stream.r
21000 75 6e 28 72 65 73 75 6c 74 29 0a 20 20 20 20 66 69 6e 61 6c 6c 79 3a 0a 20 20 20 20 20 20 20 20 un(result).....finally:.........
21020 72 65 73 75 6c 74 2e 73 74 6f 70 54 65 73 74 52 75 6e 28 29 0a 20 20 20 20 69 66 20 63 6f 75 6e result.stopTestRun().....if.coun
21040 74 5f 74 65 73 74 73 28 27 73 74 61 74 75 73 27 2c 20 27 2e 2a 27 29 20 3d 3d 20 30 3a 0a 20 20 t_tests('status',.'.*').==.0:...
21060 20 20 20 20 20 20 70 72 69 6e 74 28 22 54 68 65 20 74 65 73 74 20 72 75 6e 20 64 69 64 6e 27 74 ......print("The.test.run.didn't
21080 20 61 63 74 75 61 6c 6c 79 20 72 75 6e 20 61 6e 79 20 74 65 73 74 73 22 29 0a 20 20 20 20 20 20 .actually.run.any.tests").......
210a0 20 20 72 65 74 75 72 6e 20 31 0a 20 20 20 20 69 66 20 61 72 67 73 2e 70 6f 73 74 5f 66 61 69 6c ..return.1.....if.args.post_fail
210c0 73 3a 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 5f 66 61 69 6c 73 28 73 79 73 2e 73 74 64 6f 75 s:.........print_fails(sys.stdou
210e0 74 29 0a 20 20 20 20 70 72 69 6e 74 5f 73 75 6d 6d 61 72 79 28 73 79 73 2e 73 74 64 6f 75 74 29 t).....print_summary(sys.stdout)
21100 0a 20 20 20 20 72 65 74 75 72 6e 20 28 30 20 69 66 20 73 75 6d 6d 61 72 79 2e 77 61 73 53 75 63 .....return.(0.if.summary.wasSuc
21120 63 65 73 73 66 75 6c 28 29 20 65 6c 73 65 20 31 29 0a 0a 0a 69 66 20 5f 5f 6e 61 6d 65 5f 5f 20 cessful().else.1)...if.__name__.
21140 3d 3d 20 27 5f 5f 6d 61 69 6e 5f 5f 27 3a 0a 20 20 20 20 73 79 73 2e 65 78 69 74 28 6d 61 69 6e ==.'__main__':.....sys.exit(main
21160 28 29 29 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ()).............................
21180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
211a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
211c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
211e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21200 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 74 6f 6f 6c 73 2f 70 72 65 74 74 79 5f 74 6f 78 networking-onos/tools/pretty_tox
21220 2e 73 68 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .sh.............................
21240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21260 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
21280 30 30 30 30 33 30 36 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 36 36 36 31 00 20 30 00 00 00 0000306.12627513442.016661..0...
212a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
212c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
212e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21300 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
21320 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
21340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
213a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
213c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
213e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21400 23 21 20 2f 62 69 6e 2f 73 68 0a 0a 54 45 53 54 52 41 52 47 53 3d 24 31 0a 0a 65 78 65 63 20 33 #!./bin/sh..TESTRARGS=$1..exec.3
21420 3e 26 31 0a 73 74 61 74 75 73 3d 24 28 65 78 65 63 20 34 3e 26 31 20 3e 26 33 3b 20 28 20 70 79 >&1.status=$(exec.4>&1.>&3;.(.py
21440 74 68 6f 6e 20 73 65 74 75 70 2e 70 79 20 74 65 73 74 72 20 2d 2d 73 6c 6f 77 65 73 74 20 2d 2d thon.setup.py.testr.--slowest.--
21460 74 65 73 74 72 2d 61 72 67 73 3d 22 2d 2d 73 75 62 75 6e 69 74 20 24 54 45 53 54 52 41 52 47 53 testr-args="--subunit.$TESTRARGS
21480 22 3b 20 65 63 68 6f 20 24 3f 20 3e 26 34 20 29 20 7c 20 24 28 64 69 72 6e 61 6d 65 20 24 30 29 ";.echo.$?.>&4.).|.$(dirname.$0)
214a0 2f 73 75 62 75 6e 69 74 2d 74 72 61 63 65 2e 70 79 20 2d 66 29 20 26 26 20 65 78 69 74 20 24 73 /subunit-trace.py.-f).&&.exit.$s
214c0 74 61 74 75 73 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 tatus...........................
214e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
215a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
215c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
215e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21600 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 74 6f 6f 6c 73 2f 69 31 38 6e 5f 63 66 67 2e 70 networking-onos/tools/i18n_cfg.p
21620 79 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 y...............................
21640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21660 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
21680 30 30 30 36 36 34 33 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 36 30 36 36 00 20 30 00 00 00 0006643.12627513442.016066..0...
216a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
216c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
216e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21700 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
21720 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
21740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
217a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
217c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
217e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21800 69 6d 70 6f 72 74 20 63 6f 6d 70 69 6c 65 72 0a 69 6d 70 6f 72 74 20 72 65 0a 0a 0a 64 65 66 20 import.compiler.import.re...def.
21820 69 73 5f 6c 6f 67 5f 63 61 6c 6c 66 75 6e 63 28 6e 29 3a 0a 20 20 20 20 22 22 22 4c 4f 47 2e 78 is_log_callfunc(n):....."""LOG.x
21840 78 78 28 27 68 65 6c 6c 6f 20 25 73 27 20 25 20 78 79 7a 29 20 61 6e 64 20 4c 4f 47 28 27 68 65 xx('hello.%s'.%.xyz).and.LOG('he
21860 6c 6c 6f 27 29 22 22 22 0a 20 20 20 20 69 66 20 69 73 69 6e 73 74 61 6e 63 65 28 6e 2e 70 61 72 llo')""".....if.isinstance(n.par
21880 65 6e 74 2c 20 63 6f 6d 70 69 6c 65 72 2e 61 73 74 2e 4d 6f 64 29 3a 0a 20 20 20 20 20 20 20 20 ent,.compiler.ast.Mod):.........
218a0 6e 20 3d 20 6e 2e 70 61 72 65 6e 74 0a 20 20 20 20 69 66 20 69 73 69 6e 73 74 61 6e 63 65 28 6e n.=.n.parent.....if.isinstance(n
218c0 2e 70 61 72 65 6e 74 2c 20 63 6f 6d 70 69 6c 65 72 2e 61 73 74 2e 43 61 6c 6c 46 75 6e 63 29 3a .parent,.compiler.ast.CallFunc):
218e0 0a 20 20 20 20 20 20 20 20 69 66 20 69 73 69 6e 73 74 61 6e 63 65 28 6e 2e 70 61 72 65 6e 74 2e .........if.isinstance(n.parent.
21900 6e 6f 64 65 2c 20 63 6f 6d 70 69 6c 65 72 2e 61 73 74 2e 47 65 74 61 74 74 72 29 3a 0a 20 20 20 node,.compiler.ast.Getattr):....
21920 20 20 20 20 20 20 20 20 20 69 66 20 69 73 69 6e 73 74 61 6e 63 65 28 6e 2e 70 61 72 65 6e 74 2e .........if.isinstance(n.parent.
21940 6e 6f 64 65 2e 67 65 74 43 68 69 6c 64 4e 6f 64 65 73 28 29 5b 30 5d 2c 0a 20 20 20 20 20 20 20 node.getChildNodes()[0],........
21960 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 72 2e 61 73 74 2e ...................compiler.ast.
21980 4e 61 6d 65 29 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 6e 2e 70 61 72 65 Name):.................if.n.pare
219a0 6e 74 2e 6e 6f 64 65 2e 67 65 74 43 68 69 6c 64 4e 6f 64 65 73 28 29 5b 30 5d 2e 6e 61 6d 65 20 nt.node.getChildNodes()[0].name.
219c0 3d 3d 20 27 4c 4f 47 27 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 ==.'LOG':.....................re
219e0 74 75 72 6e 20 54 72 75 65 0a 20 20 20 20 72 65 74 75 72 6e 20 46 61 6c 73 65 0a 0a 0a 64 65 66 turn.True.....return.False...def
21a00 20 69 73 5f 6c 6f 67 5f 69 31 38 6e 5f 6d 73 67 5f 77 69 74 68 5f 6d 6f 64 28 6e 29 3a 0a 20 20 .is_log_i18n_msg_with_mod(n):...
21a20 20 20 22 22 22 4c 4f 47 2e 78 78 78 28 22 48 65 6c 6c 6f 20 25 73 22 20 25 20 78 79 7a 29 20 73 .."""LOG.xxx("Hello.%s".%.xyz).s
21a40 68 6f 75 6c 64 20 62 65 20 4c 4f 47 2e 78 78 78 28 22 48 65 6c 6c 6f 20 25 73 22 2c 20 78 79 7a hould.be.LOG.xxx("Hello.%s",.xyz
21a60 29 22 22 22 0a 20 20 20 20 69 66 20 6e 6f 74 20 69 73 69 6e 73 74 61 6e 63 65 28 6e 2e 70 61 72 )""".....if.not.isinstance(n.par
21a80 65 6e 74 2e 70 61 72 65 6e 74 2c 20 63 6f 6d 70 69 6c 65 72 2e 61 73 74 2e 4d 6f 64 29 3a 0a 20 ent.parent,.compiler.ast.Mod):..
21aa0 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 46 61 6c 73 65 0a 20 20 20 20 6e 20 3d 20 6e 2e 70 61 .......return.False.....n.=.n.pa
21ac0 72 65 6e 74 2e 70 61 72 65 6e 74 0a 20 20 20 20 69 66 20 69 73 69 6e 73 74 61 6e 63 65 28 6e 2e rent.parent.....if.isinstance(n.
21ae0 70 61 72 65 6e 74 2c 20 63 6f 6d 70 69 6c 65 72 2e 61 73 74 2e 43 61 6c 6c 46 75 6e 63 29 3a 0a parent,.compiler.ast.CallFunc):.
21b00 20 20 20 20 20 20 20 20 69 66 20 69 73 69 6e 73 74 61 6e 63 65 28 6e 2e 70 61 72 65 6e 74 2e 6e ........if.isinstance(n.parent.n
21b20 6f 64 65 2c 20 63 6f 6d 70 69 6c 65 72 2e 61 73 74 2e 47 65 74 61 74 74 72 29 3a 0a 20 20 20 20 ode,.compiler.ast.Getattr):.....
21b40 20 20 20 20 20 20 20 20 69 66 20 69 73 69 6e 73 74 61 6e 63 65 28 6e 2e 70 61 72 65 6e 74 2e 6e ........if.isinstance(n.parent.n
21b60 6f 64 65 2e 67 65 74 43 68 69 6c 64 4e 6f 64 65 73 28 29 5b 30 5d 2c 0a 20 20 20 20 20 20 20 20 ode.getChildNodes()[0],.........
21b80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 72 2e 61 73 74 2e 4e ..................compiler.ast.N
21ba0 61 6d 65 29 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 6e 2e 70 61 72 65 6e ame):.................if.n.paren
21bc0 74 2e 6e 6f 64 65 2e 67 65 74 43 68 69 6c 64 4e 6f 64 65 73 28 29 5b 30 5d 2e 6e 61 6d 65 20 3d t.node.getChildNodes()[0].name.=
21be0 3d 20 27 4c 4f 47 27 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 =.'LOG':.....................ret
21c00 75 72 6e 20 54 72 75 65 0a 20 20 20 20 72 65 74 75 72 6e 20 46 61 6c 73 65 0a 0a 0a 64 65 66 20 urn.True.....return.False...def.
21c20 69 73 5f 77 72 6f 6e 67 5f 69 31 38 6e 5f 66 6f 72 6d 61 74 28 6e 29 3a 0a 20 20 20 20 22 22 22 is_wrong_i18n_format(n):....."""
21c40 43 68 65 63 6b 20 5f 28 27 68 65 6c 6c 6f 20 25 73 27 20 25 20 78 79 7a 29 22 22 22 0a 20 20 20 Check._('hello.%s'.%.xyz)"""....
21c60 20 69 66 20 69 73 69 6e 73 74 61 6e 63 65 28 6e 2e 70 61 72 65 6e 74 2c 20 63 6f 6d 70 69 6c 65 .if.isinstance(n.parent,.compile
21c80 72 2e 61 73 74 2e 4d 6f 64 29 3a 0a 20 20 20 20 20 20 20 20 6e 20 3d 20 6e 2e 70 61 72 65 6e 74 r.ast.Mod):.........n.=.n.parent
21ca0 0a 20 20 20 20 69 66 20 69 73 69 6e 73 74 61 6e 63 65 28 6e 2e 70 61 72 65 6e 74 2c 20 63 6f 6d .....if.isinstance(n.parent,.com
21cc0 70 69 6c 65 72 2e 61 73 74 2e 43 61 6c 6c 46 75 6e 63 29 3a 0a 20 20 20 20 20 20 20 20 69 66 20 piler.ast.CallFunc):.........if.
21ce0 69 73 69 6e 73 74 61 6e 63 65 28 6e 2e 70 61 72 65 6e 74 2e 6e 6f 64 65 2c 20 63 6f 6d 70 69 6c isinstance(n.parent.node,.compil
21d00 65 72 2e 61 73 74 2e 4e 61 6d 65 29 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 6e 2e 70 er.ast.Name):.............if.n.p
21d20 61 72 65 6e 74 2e 6e 6f 64 65 2e 6e 61 6d 65 20 3d 3d 20 27 5f 27 3a 0a 20 20 20 20 20 20 20 20 arent.node.name.==.'_':.........
21d40 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 54 72 75 65 0a 20 20 20 20 72 65 74 75 72 6e 20 46 ........return.True.....return.F
21d60 61 6c 73 65 0a 0a 0a 22 22 22 0a 55 73 65 64 20 66 6f 72 20 63 68 65 63 6b 20 6d 65 73 73 61 67 alse...""".Used.for.check.messag
21d80 65 20 6e 65 65 64 20 62 65 20 6c 6f 63 61 6c 69 7a 65 64 20 6f 72 20 6e 6f 74 2e 0a 28 70 72 65 e.need.be.localized.or.not..(pre
21da0 64 69 63 61 74 65 5f 66 75 6e 63 2c 20 61 63 74 69 6f 6e 2c 20 6d 65 73 73 61 67 65 29 0a 22 22 dicate_func,.action,.message).""
21dc0 22 0a 69 31 38 6e 5f 6d 73 67 5f 70 72 65 64 69 63 61 74 65 73 20 3d 20 5b 0a 20 20 20 20 23 20 ".i18n_msg_predicates.=.[.....#.
21de0 53 6b 69 70 20 5b 27 68 65 6c 6c 6f 20 77 6f 72 6c 64 27 2c 20 31 5d 0a 20 20 20 20 28 6c 61 6d Skip.['hello.world',.1].....(lam
21e00 62 64 61 20 6e 3a 20 69 73 69 6e 73 74 61 6e 63 65 28 6e 2e 70 61 72 65 6e 74 2c 20 63 6f 6d 70 bda.n:.isinstance(n.parent,.comp
21e20 69 6c 65 72 2e 61 73 74 2e 4c 69 73 74 29 2c 20 27 73 6b 69 70 27 2c 20 27 27 29 2c 0a 20 20 20 iler.ast.List),.'skip',.''),....
21e40 20 23 20 53 6b 69 70 20 7b 27 68 65 6c 6c 6f 77 20 77 6f 72 6c 64 27 2c 20 31 7d 0a 20 20 20 20 .#.Skip.{'hellow.world',.1}.....
21e60 28 6c 61 6d 62 64 61 20 6e 3a 20 69 73 69 6e 73 74 61 6e 63 65 28 6e 2e 70 61 72 65 6e 74 2c 20 (lambda.n:.isinstance(n.parent,.
21e80 63 6f 6d 70 69 6c 65 72 2e 61 73 74 2e 44 69 63 74 29 2c 20 27 73 6b 69 70 27 2c 20 27 27 29 2c compiler.ast.Dict),.'skip',.''),
21ea0 0a 20 20 20 20 23 20 53 6b 69 70 20 6d 73 67 5b 27 68 65 6c 6c 6f 20 77 6f 72 6c 64 27 5d 0a 20 .....#.Skip.msg['hello.world']..
21ec0 20 20 20 28 6c 61 6d 62 64 61 20 6e 3a 20 69 73 69 6e 73 74 61 6e 63 65 28 6e 2e 70 61 72 65 6e ...(lambda.n:.isinstance(n.paren
21ee0 74 2c 20 63 6f 6d 70 69 6c 65 72 2e 61 73 74 2e 53 75 62 73 63 72 69 70 74 29 2c 20 27 73 6b 69 t,.compiler.ast.Subscript),.'ski
21f00 70 27 2c 20 27 27 29 2c 0a 20 20 20 20 23 20 53 6b 69 70 20 64 6f 63 20 73 74 72 69 6e 67 0a 20 p',.''),.....#.Skip.doc.string..
21f20 20 20 20 28 6c 61 6d 62 64 61 20 6e 3a 20 69 73 69 6e 73 74 61 6e 63 65 28 6e 2e 70 61 72 65 6e ...(lambda.n:.isinstance(n.paren
21f40 74 2c 20 63 6f 6d 70 69 6c 65 72 2e 61 73 74 2e 44 69 73 63 61 72 64 29 2c 20 27 73 6b 69 70 27 t,.compiler.ast.Discard),.'skip'
21f60 2c 20 27 27 29 2c 0a 20 20 20 20 23 20 53 6b 69 70 20 6d 73 67 20 3d 20 22 68 65 6c 6c 6f 22 2c ,.''),.....#.Skip.msg.=."hello",
21f80 20 69 6e 20 6e 6f 72 6d 61 6c 2c 20 6d 65 73 73 61 67 65 20 73 68 6f 75 6c 64 20 6d 6f 72 65 20 .in.normal,.message.should.more.
21fa0 74 68 61 6e 20 6f 6e 65 20 77 6f 72 64 0a 20 20 20 20 28 6c 61 6d 62 64 61 20 6e 3a 20 6c 65 6e than.one.word.....(lambda.n:.len
21fc0 28 6e 2e 76 61 6c 75 65 2e 73 74 72 69 70 28 29 2e 73 70 6c 69 74 28 27 20 27 29 29 20 3c 3d 20 (n.value.strip().split('.')).<=.
21fe0 31 2c 20 27 73 6b 69 70 27 2c 20 27 27 29 2c 0a 20 20 20 20 23 20 53 6b 69 70 20 6d 73 67 20 3d 1,.'skip',.''),.....#.Skip.msg.=
22000 20 27 68 65 6c 6c 6f 20 77 6f 72 6c 64 27 20 2b 20 76 61 72 73 20 2b 20 27 77 6f 72 6c 64 20 68 .'hello.world'.+.vars.+.'world.h
22020 65 6c 6c 6f 27 0a 20 20 20 20 28 6c 61 6d 62 64 61 20 6e 3a 20 69 73 69 6e 73 74 61 6e 63 65 28 ello'.....(lambda.n:.isinstance(
22040 6e 2e 70 61 72 65 6e 74 2c 20 63 6f 6d 70 69 6c 65 72 2e 61 73 74 2e 41 64 64 29 2c 20 27 73 6b n.parent,.compiler.ast.Add),.'sk
22060 69 70 27 2c 20 27 27 29 2c 0a 20 20 20 20 23 20 53 6b 69 70 20 78 6d 6c 20 6d 61 72 6b 65 72 73 ip',.''),.....#.Skip.xml.markers
22080 20 6d 73 67 20 3d 20 22 3c 74 65 73 74 3e 3c 2f 74 65 73 74 3e 22 0a 20 20 20 20 28 6c 61 6d 62 .msg.=."<test></test>".....(lamb
220a0 64 61 20 6e 3a 20 6c 65 6e 28 72 65 2e 63 6f 6d 70 69 6c 65 28 22 3c 2f 2e 2a 3e 22 29 2e 66 69 da.n:.len(re.compile("</.*>").fi
220c0 6e 64 61 6c 6c 28 6e 2e 76 61 6c 75 65 29 29 20 3e 20 30 2c 20 27 73 6b 69 70 27 2c 20 27 27 29 ndall(n.value)).>.0,.'skip',.'')
220e0 2c 0a 20 20 20 20 23 20 53 6b 69 70 20 73 71 6c 20 73 74 61 74 65 6d 65 6e 74 0a 20 20 20 20 28 ,.....#.Skip.sql.statement.....(
22100 6c 61 6d 62 64 61 20 6e 3a 20 6c 65 6e 28 0a 20 20 20 20 20 20 20 20 72 65 2e 63 6f 6d 70 69 6c lambda.n:.len(.........re.compil
22120 65 28 22 5e 53 45 4c 45 43 54 2e 2a 46 52 4f 4d 22 2c 20 66 6c 61 67 73 3d 72 65 2e 49 29 2e 66 e("^SELECT.*FROM",.flags=re.I).f
22140 69 6e 64 61 6c 6c 28 6e 2e 76 61 6c 75 65 29 29 20 3e 20 30 2c 0a 20 20 20 20 20 27 73 6b 69 70 indall(n.value)).>.0,......'skip
22160 27 2c 20 27 27 29 2c 0a 20 20 20 20 23 20 4c 4f 47 2e 78 78 78 28 29 0a 20 20 20 20 28 69 73 5f ',.''),.....#.LOG.xxx().....(is_
22180 6c 6f 67 5f 63 61 6c 6c 66 75 6e 63 2c 20 27 65 72 72 6f 72 27 2c 20 27 4d 65 73 73 61 67 65 20 log_callfunc,.'error',.'Message.
221a0 6d 75 73 74 20 62 65 20 6c 6f 63 61 6c 69 7a 65 64 27 29 2c 0a 20 20 20 20 23 20 5f 28 27 68 65 must.be.localized'),.....#._('he
221c0 6c 6c 6f 20 25 73 27 20 25 20 78 79 7a 29 20 73 68 6f 75 6c 64 20 62 65 20 5f 28 27 68 65 6c 6c llo.%s'.%.xyz).should.be._('hell
221e0 6f 20 25 73 27 29 20 25 20 78 79 7a 0a 20 20 20 20 28 69 73 5f 77 72 6f 6e 67 5f 69 31 38 6e 5f o.%s').%.xyz.....(is_wrong_i18n_
22200 66 6f 72 6d 61 74 2c 20 27 65 72 72 6f 72 27 2c 0a 20 20 20 20 20 28 22 4d 65 73 73 61 67 65 20 format,.'error',......("Message.
22220 66 6f 72 6d 61 74 20 77 61 73 20 77 72 6f 6e 67 2c 20 5f 28 27 68 65 6c 6c 6f 20 25 73 27 20 25 format.was.wrong,._('hello.%s'.%
22240 20 78 79 7a 29 20 22 0a 20 20 20 20 20 20 22 73 68 6f 75 6c 64 20 62 65 20 5f 28 27 68 65 6c 6c .xyz)."......."should.be._('hell
22260 6f 20 25 73 27 29 20 25 20 78 79 7a 22 29 29 2c 0a 20 20 20 20 23 20 64 65 66 61 75 6c 74 0a 20 o.%s').%.xyz")),.....#.default..
22280 20 20 20 28 6c 61 6d 62 64 61 20 6e 3a 20 54 72 75 65 2c 20 27 77 61 72 6e 27 2c 20 27 4d 65 73 ...(lambda.n:.True,.'warn',.'Mes
222a0 73 61 67 65 20 6d 69 67 68 74 20 6e 65 65 64 20 6c 6f 63 61 6c 69 7a 65 64 27 29 0a 5d 0a 0a 0a sage.might.need.localized').]...
222c0 22 22 22 0a 55 73 65 64 20 66 6f 72 20 63 68 65 63 6b 69 6e 67 20 6d 65 73 73 61 67 65 20 66 6f """.Used.for.checking.message.fo
222e0 72 6d 61 74 2e 20 28 63 68 65 63 6b 65 72 5f 66 75 6e 63 2c 20 6d 65 73 73 61 67 65 29 0a 22 22 rmat..(checker_func,.message).""
22300 22 0a 6d 73 67 5f 66 6f 72 6d 61 74 5f 63 68 65 63 6b 65 72 73 20 3d 20 5b 0a 20 20 20 20 23 20 ".msg_format_checkers.=.[.....#.
22320 49 66 20 6d 65 73 73 61 67 65 20 63 6f 6e 74 61 69 6e 20 6d 6f 72 65 20 74 68 61 6e 20 6f 6e 20 If.message.contain.more.than.on.
22340 66 6f 72 6d 61 74 20 73 70 65 63 69 66 69 65 72 2c 20 69 74 20 73 68 6f 75 6c 64 20 75 73 65 0a format.specifier,.it.should.use.
22360 20 20 20 20 23 20 6d 61 70 70 69 6e 67 20 6b 65 79 0a 20 20 20 20 28 6c 61 6d 62 64 61 20 6e 3a ....#.mapping.key.....(lambda.n:
22380 20 6c 65 6e 28 72 65 2e 63 6f 6d 70 69 6c 65 28 22 25 5b 62 63 64 65 45 66 46 67 47 6e 6f 73 78 .len(re.compile("%[bcdeEfFgGnosx
223a0 58 5d 22 29 2e 66 69 6e 64 61 6c 6c 28 6e 2e 76 61 6c 75 65 29 29 20 3e 20 31 2c 0a 20 20 20 20 X]").findall(n.value)).>.1,.....
223c0 20 22 54 68 65 20 6d 65 73 73 61 67 65 20 73 68 6f 75 6c 64 6e 27 74 20 63 6f 6e 74 61 69 6e 20 ."The.message.shouldn't.contain.
223e0 6d 6f 72 65 20 74 68 61 6e 20 6f 6e 65 20 66 6f 72 6d 61 74 20 73 70 65 63 69 66 69 65 72 22 29 more.than.one.format.specifier")
22400 2c 0a 20 20 20 20 23 20 43 68 65 63 6b 20 63 61 70 69 74 61 6c 0a 20 20 20 20 28 6c 61 6d 62 64 ,.....#.Check.capital.....(lambd
22420 61 20 6e 3a 20 6e 2e 76 61 6c 75 65 2e 73 70 6c 69 74 28 27 20 27 29 5b 30 5d 2e 63 6f 75 6e 74 a.n:.n.value.split('.')[0].count
22440 28 27 5f 27 29 20 3d 3d 20 30 20 61 6e 64 0a 20 20 20 20 20 6e 2e 76 61 6c 75 65 5b 30 5d 2e 69 ('_').==.0.and......n.value[0].i
22460 73 61 6c 70 68 61 28 29 20 61 6e 64 0a 20 20 20 20 20 6e 2e 76 61 6c 75 65 5b 30 5d 2e 69 73 6c salpha().and......n.value[0].isl
22480 6f 77 65 72 28 29 2c 0a 20 20 20 20 20 22 46 69 72 73 74 20 6c 65 74 74 65 72 20 6d 75 73 74 20 ower(),......"First.letter.must.
224a0 62 65 20 63 61 70 69 74 61 6c 22 29 2c 0a 20 20 20 20 28 69 73 5f 6c 6f 67 5f 69 31 38 6e 5f 6d be.capital"),.....(is_log_i18n_m
224c0 73 67 5f 77 69 74 68 5f 6d 6f 64 2c 0a 20 20 20 20 20 27 4c 4f 47 2e 78 78 78 28 22 48 65 6c 6c sg_with_mod,......'LOG.xxx("Hell
224e0 6f 20 25 73 22 20 25 20 78 79 7a 29 20 73 68 6f 75 6c 64 20 62 65 20 4c 4f 47 2e 78 78 78 28 22 o.%s".%.xyz).should.be.LOG.xxx("
22500 48 65 6c 6c 6f 20 25 73 22 2c 20 78 79 7a 29 27 29 0a 5d 0a 0a 0a 66 69 6c 65 5f 62 6c 61 63 6b Hello.%s",.xyz)').]...file_black
22520 5f 6c 69 73 74 20 3d 20 5b 22 2e 2f 6e 65 75 74 72 6f 6e 2f 74 65 73 74 73 2f 75 6e 69 74 22 2c _list.=.["./neutron/tests/unit",
22540 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 2e 2f 6e 65 75 74 72 6f 6e 2f 6f ...................."./neutron/o
22560 70 65 6e 73 74 61 63 6b 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 2e penstack",....................".
22580 2f 6e 65 75 74 72 6f 6e 2f 70 6c 75 67 69 6e 73 2f 62 69 67 73 77 69 74 63 68 2f 74 65 73 74 73 /neutron/plugins/bigswitch/tests
225a0 22 5d 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 "]..............................
225c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
225e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22600 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 73 65 74 75 70 2e 70 79 00 00 00 00 00 00 00 00 networking-onos/setup.py........
22620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22660 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
22680 30 30 30 32 30 30 34 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 34 34 35 33 00 20 30 00 00 00 0002004.12627513442.014453..0...
226a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
226c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
226e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22700 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
22720 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
22740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
227a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
227c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
227e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22800 23 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 32 30 31 33 20 48 65 77 6c 65 74 74 2d 50 61 63 #.Copyright.(c).2013.Hewlett-Pac
22820 6b 61 72 64 20 44 65 76 65 6c 6f 70 6d 65 6e 74 20 43 6f 6d 70 61 6e 79 2c 20 4c 2e 50 2e 0a 23 kard.Development.Company,.L.P..#
22840 0a 23 20 4c 69 63 65 6e 73 65 64 20 75 6e 64 65 72 20 74 68 65 20 41 70 61 63 68 65 20 4c 69 63 .#.Licensed.under.the.Apache.Lic
22860 65 6e 73 65 2c 20 56 65 72 73 69 6f 6e 20 32 2e 30 20 28 74 68 65 20 22 4c 69 63 65 6e 73 65 22 ense,.Version.2.0.(the."License"
22880 29 3b 0a 23 20 79 6f 75 20 6d 61 79 20 6e 6f 74 20 75 73 65 20 74 68 69 73 20 66 69 6c 65 20 65 );.#.you.may.not.use.this.file.e
228a0 78 63 65 70 74 20 69 6e 20 63 6f 6d 70 6c 69 61 6e 63 65 20 77 69 74 68 20 74 68 65 20 4c 69 63 xcept.in.compliance.with.the.Lic
228c0 65 6e 73 65 2e 0a 23 20 59 6f 75 20 6d 61 79 20 6f 62 74 61 69 6e 20 61 20 63 6f 70 79 20 6f 66 ense..#.You.may.obtain.a.copy.of
228e0 20 74 68 65 20 4c 69 63 65 6e 73 65 20 61 74 0a 23 0a 23 20 20 20 20 68 74 74 70 3a 2f 2f 77 77 .the.License.at.#.#....http://ww
22900 77 2e 61 70 61 63 68 65 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 4c 49 43 45 4e 53 45 2d 32 2e w.apache.org/licenses/LICENSE-2.
22920 30 0a 23 0a 23 20 55 6e 6c 65 73 73 20 72 65 71 75 69 72 65 64 20 62 79 20 61 70 70 6c 69 63 61 0.#.#.Unless.required.by.applica
22940 62 6c 65 20 6c 61 77 20 6f 72 20 61 67 72 65 65 64 20 74 6f 20 69 6e 20 77 72 69 74 69 6e 67 2c ble.law.or.agreed.to.in.writing,
22960 20 73 6f 66 74 77 61 72 65 0a 23 20 64 69 73 74 72 69 62 75 74 65 64 20 75 6e 64 65 72 20 74 68 .software.#.distributed.under.th
22980 65 20 4c 69 63 65 6e 73 65 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 6f 6e 20 61 6e 20 22 e.License.is.distributed.on.an."
229a0 41 53 20 49 53 22 20 42 41 53 49 53 2c 0a 23 20 57 49 54 48 4f 55 54 20 57 41 52 52 41 4e 54 49 AS.IS".BASIS,.#.WITHOUT.WARRANTI
229c0 45 53 20 4f 52 20 43 4f 4e 44 49 54 49 4f 4e 53 20 4f 46 20 41 4e 59 20 4b 49 4e 44 2c 20 65 69 ES.OR.CONDITIONS.OF.ANY.KIND,.ei
229e0 74 68 65 72 20 65 78 70 72 65 73 73 20 6f 72 0a 23 20 69 6d 70 6c 69 65 64 2e 0a 23 20 53 65 65 ther.express.or.#.implied..#.See
22a00 20 74 68 65 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 74 68 65 20 73 70 65 63 69 66 69 63 20 6c 61 .the.License.for.the.specific.la
22a20 6e 67 75 61 67 65 20 67 6f 76 65 72 6e 69 6e 67 20 70 65 72 6d 69 73 73 69 6f 6e 73 20 61 6e 64 nguage.governing.permissions.and
22a40 0a 23 20 6c 69 6d 69 74 61 74 69 6f 6e 73 20 75 6e 64 65 72 20 74 68 65 20 4c 69 63 65 6e 73 65 .#.limitations.under.the.License
22a60 2e 0a 0a 23 20 54 48 49 53 20 46 49 4c 45 20 49 53 20 4d 41 4e 41 47 45 44 20 42 59 20 54 48 45 ...#.THIS.FILE.IS.MANAGED.BY.THE
22a80 20 47 4c 4f 42 41 4c 20 52 45 51 55 49 52 45 4d 45 4e 54 53 20 52 45 50 4f 20 2d 20 44 4f 20 4e .GLOBAL.REQUIREMENTS.REPO.-.DO.N
22aa0 4f 54 20 45 44 49 54 0a 69 6d 70 6f 72 74 20 73 65 74 75 70 74 6f 6f 6c 73 0a 0a 23 20 49 6e 20 OT.EDIT.import.setuptools..#.In.
22ac0 70 79 74 68 6f 6e 20 3c 20 32 2e 37 2e 34 2c 20 61 20 6c 61 7a 79 20 6c 6f 61 64 69 6e 67 20 6f python.<.2.7.4,.a.lazy.loading.o
22ae0 66 20 70 61 63 6b 61 67 65 20 60 70 62 72 60 20 77 69 6c 6c 20 62 72 65 61 6b 0a 23 20 73 65 74 f.package.`pbr`.will.break.#.set
22b00 75 70 74 6f 6f 6c 73 20 69 66 20 73 6f 6d 65 20 6f 74 68 65 72 20 6d 6f 64 75 6c 65 73 20 72 65 uptools.if.some.other.modules.re
22b20 67 69 73 74 65 72 65 64 20 66 75 6e 63 74 69 6f 6e 73 20 69 6e 20 60 61 74 65 78 69 74 60 2e 0a gistered.functions.in.`atexit`..
22b40 23 20 73 6f 6c 75 74 69 6f 6e 20 66 72 6f 6d 3a 20 68 74 74 70 3a 2f 2f 62 75 67 73 2e 70 79 74 #.solution.from:.http://bugs.pyt
22b60 68 6f 6e 2e 6f 72 67 2f 69 73 73 75 65 31 35 38 38 31 23 6d 73 67 31 37 30 32 31 35 0a 74 72 79 hon.org/issue15881#msg170215.try
22b80 3a 0a 20 20 20 20 69 6d 70 6f 72 74 20 6d 75 6c 74 69 70 72 6f 63 65 73 73 69 6e 67 20 20 23 20 :.....import.multiprocessing..#.
22ba0 6e 6f 71 61 0a 65 78 63 65 70 74 20 49 6d 70 6f 72 74 45 72 72 6f 72 3a 0a 20 20 20 20 70 61 73 noqa.except.ImportError:.....pas
22bc0 73 0a 0a 73 65 74 75 70 74 6f 6f 6c 73 2e 73 65 74 75 70 28 0a 20 20 20 20 73 65 74 75 70 5f 72 s..setuptools.setup(.....setup_r
22be0 65 71 75 69 72 65 73 3d 5b 27 70 62 72 3e 3d 31 2e 38 27 5d 2c 0a 20 20 20 20 70 62 72 3d 54 72 equires=['pbr>=1.8'],.....pbr=Tr
22c00 75 65 29 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ue).............................
22c20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22c60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22c80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22e00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 64 6f 63 2f 00 00 00 00 00 00 00 00 00 00 00 00 networking-onos/doc/............
22e20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22e60 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000755.0001750.0001750.0000
22e80 30 30 30 30 30 30 30 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 33 35 31 32 00 20 35 00 00 00 0000000.12627513442.013512..5...
22ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22f00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
22f20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
22f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23000 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 64 6f 63 2f 73 6f 75 72 63 65 2f 00 00 00 00 00 networking-onos/doc/source/.....
23020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23060 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000755.0001750.0001750.0000
23080 30 30 30 30 30 30 30 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 35 30 31 32 00 20 35 00 00 00 0000000.12627513442.015012..5...
230a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
230c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
230e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23100 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
23120 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
23140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
231a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
231c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
231e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23200 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 64 6f 63 2f 73 6f 75 72 63 65 2f 69 6e 73 74 61 networking-onos/doc/source/insta
23220 6c 6c 61 74 69 6f 6e 2e 72 73 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 llation.rst.....................
23240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23260 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
23280 30 30 30 30 33 32 36 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 30 32 34 36 00 20 30 00 00 00 0000326.12627513442.020246..0...
232a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
232c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
232e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23300 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
23320 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
23340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
233a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
233c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
233e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23400 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 0a 3d 3d 3d 3d 3d 3d ============.Installation.======
23420 3d 3d 3d 3d 3d 3d 0a 0a 41 74 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 3a 3a 0a 0a 20 ======..At.the.command.line::...
23440 20 20 20 24 20 70 69 70 20 69 6e 73 74 61 6c 6c 20 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 ...$.pip.install.networking-onos
23460 0a 0a 4f 72 2c 20 69 66 20 79 6f 75 20 68 61 76 65 20 76 69 72 74 75 61 6c 65 6e 76 77 72 61 70 ..Or,.if.you.have.virtualenvwrap
23480 70 65 72 20 69 6e 73 74 61 6c 6c 65 64 3a 3a 0a 0a 20 20 20 20 24 20 6d 6b 76 69 72 74 75 61 6c per.installed::......$.mkvirtual
234a0 65 6e 76 20 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 0a 20 20 20 20 24 20 70 69 70 20 69 6e env.networking-onos.....$.pip.in
234c0 73 74 61 6c 6c 20 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 0a 00 00 00 00 00 00 00 00 00 00 stall.networking-onos...........
234e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
235a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
235c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
235e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23600 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 64 6f 63 2f 73 6f 75 72 63 65 2f 63 6f 6e 74 72 networking-onos/doc/source/contr
23620 69 62 75 74 69 6e 67 2e 72 73 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ibuting.rst.....................
23640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23660 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
23680 30 30 30 30 31 31 33 00 31 32 36 32 37 35 31 33 34 34 32 00 30 32 30 32 34 36 00 20 30 00 00 00 0000113.12627513442.020246..0...
236a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
236c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
236e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23700 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
23720 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
23740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
237a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
237c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
237e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23800 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 43 6f 6e 74 72 69 62 75 74 69 6e 67 0a 3d 3d 3d 3d 3d 3d ============.Contributing.======
23820 3d 3d 3d 3d 3d 3d 0a 2e 2e 20 69 6e 63 6c 75 64 65 3a 3a 20 2e 2e 2f 2e 2e 2f 43 4f 4e 54 52 49 ======....include::.../../CONTRI
23840 42 55 54 49 4e 47 2e 72 73 74 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 BUTING.rst......................
23860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
238a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
238c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
238e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
239a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
239c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
239e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23a00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 64 6f 63 2f 73 6f 75 72 63 65 2f 69 6e 64 65 78 networking-onos/doc/source/index
23a20 2e 72 73 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .rst............................
23a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23a60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
23a80 30 30 30 31 30 30 31 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 36 36 34 33 00 20 30 00 00 00 0001001.12627513442.016643..0...
23aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23b00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
23b20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
23b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23c00 2e 2e 20 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e ...networking-onos.documentation
23c20 20 6d 61 73 74 65 72 20 66 69 6c 65 2c 20 63 72 65 61 74 65 64 20 62 79 0a 20 20 20 73 70 68 69 .master.file,.created.by....sphi
23c40 6e 78 2d 71 75 69 63 6b 73 74 61 72 74 20 6f 6e 20 54 75 65 20 4a 75 6c 20 20 39 20 32 32 3a 32 nx-quickstart.on.Tue.Jul..9.22:2
23c60 36 3a 33 36 20 32 30 31 33 2e 0a 20 20 20 59 6f 75 20 63 61 6e 20 61 64 61 70 74 20 74 68 69 73 6:36.2013.....You.can.adapt.this
23c80 20 66 69 6c 65 20 63 6f 6d 70 6c 65 74 65 6c 79 20 74 6f 20 79 6f 75 72 20 6c 69 6b 69 6e 67 2c .file.completely.to.your.liking,
23ca0 20 62 75 74 20 69 74 20 73 68 6f 75 6c 64 20 61 74 20 6c 65 61 73 74 0a 20 20 20 63 6f 6e 74 61 .but.it.should.at.least....conta
23cc0 69 6e 20 74 68 65 20 72 6f 6f 74 20 60 74 6f 63 74 72 65 65 60 20 64 69 72 65 63 74 69 76 65 2e in.the.root.`toctree`.directive.
23ce0 0a 0a 57 65 6c 63 6f 6d 65 20 74 6f 20 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 27 73 20 64 ..Welcome.to.networking-onos's.d
23d00 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 21 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ocumentation!.==================
23d20 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================================
23d40 3d 3d 3d 3d 3d 3d 0a 0a 43 6f 6e 74 65 6e 74 73 3a 0a 0a 2e 2e 20 74 6f 63 74 72 65 65 3a 3a 0a ======..Contents:.....toctree::.
23d60 20 20 20 3a 6d 61 78 64 65 70 74 68 3a 20 32 0a 0a 20 20 20 72 65 61 64 6d 65 0a 20 20 20 69 6e ...:maxdepth:.2.....readme....in
23d80 73 74 61 6c 6c 61 74 69 6f 6e 0a 20 20 20 75 73 61 67 65 0a 20 20 20 63 6f 6e 74 72 69 62 75 74 stallation....usage....contribut
23da0 69 6e 67 0a 0a 49 6e 64 69 63 65 73 20 61 6e 64 20 74 61 62 6c 65 73 0a 3d 3d 3d 3d 3d 3d 3d 3d ing..Indices.and.tables.========
23dc0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 2a 20 3a 72 65 66 3a 60 67 65 6e 69 6e 64 65 78 60 0a 2a 20 ==========..*.:ref:`genindex`.*.
23de0 3a 72 65 66 3a 60 6d 6f 64 69 6e 64 65 78 60 0a 2a 20 3a 72 65 66 3a 60 73 65 61 72 63 68 60 0a :ref:`modindex`.*.:ref:`search`.
23e00 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23e20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23e60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23e80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23f00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23f20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24000 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 64 6f 63 2f 73 6f 75 72 63 65 2f 75 73 61 67 65 networking-onos/doc/source/usage
24020 2e 72 73 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .rst............................
24040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24060 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
24080 30 30 30 30 31 33 33 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 36 36 34 35 00 20 30 00 00 00 0000133.12627513442.016645..0...
240a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
240c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
240e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24100 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
24120 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
24140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
241a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
241c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
241e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24200 3d 3d 3d 3d 3d 3d 3d 3d 0a 55 73 61 67 65 0a 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 54 6f 20 75 73 65 20 ========.Usage.========..To.use.
24220 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 20 69 6e 20 61 20 70 72 6f 6a 65 63 74 3a 3a 0a 0a networking-onos.in.a.project::..
24240 20 20 20 20 69 6d 70 6f 72 74 20 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 0a 00 00 00 00 00 ....import.networking-onos......
24260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
242a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
242c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
242e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
243a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
243c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
243e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24400 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 64 6f 63 2f 73 6f 75 72 63 65 2f 72 65 61 64 6d networking-onos/doc/source/readm
24420 65 2e 72 73 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e.rst...........................
24440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24460 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
24480 30 30 30 30 30 33 36 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 37 30 30 30 00 20 30 00 00 00 0000036.12627513442.017000..0...
244a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
244c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
244e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24500 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
24520 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
24540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
245a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
245c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
245e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24600 2e 2e 20 69 6e 63 6c 75 64 65 3a 3a 20 2e 2e 2f 2e 2e 2f 52 45 41 44 4d 45 2e 72 73 74 0a 00 00 ...include::.../../README.rst...
24620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
246a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
246c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
246e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
247a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
247c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
247e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24800 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 64 6f 63 2f 73 6f 75 72 63 65 2f 63 6f 6e 66 2e networking-onos/doc/source/conf.
24820 70 79 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 py..............................
24840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24860 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
24880 30 30 30 34 36 33 37 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 36 33 32 33 00 20 30 00 00 00 0004637.12627513442.016323..0...
248a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
248c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
248e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24900 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
24920 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
24940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
249a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
249c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
249e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24a00 23 20 2d 2a 2d 20 63 6f 64 69 6e 67 3a 20 75 74 66 2d 38 20 2d 2a 2d 0a 23 20 4c 69 63 65 6e 73 #.-*-.coding:.utf-8.-*-.#.Licens
24a20 65 64 20 75 6e 64 65 72 20 74 68 65 20 41 70 61 63 68 65 20 4c 69 63 65 6e 73 65 2c 20 56 65 72 ed.under.the.Apache.License,.Ver
24a40 73 69 6f 6e 20 32 2e 30 20 28 74 68 65 20 22 4c 69 63 65 6e 73 65 22 29 3b 0a 23 20 79 6f 75 20 sion.2.0.(the."License");.#.you.
24a60 6d 61 79 20 6e 6f 74 20 75 73 65 20 74 68 69 73 20 66 69 6c 65 20 65 78 63 65 70 74 20 69 6e 20 may.not.use.this.file.except.in.
24a80 63 6f 6d 70 6c 69 61 6e 63 65 20 77 69 74 68 20 74 68 65 20 4c 69 63 65 6e 73 65 2e 0a 23 20 59 compliance.with.the.License..#.Y
24aa0 6f 75 20 6d 61 79 20 6f 62 74 61 69 6e 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 4c 69 63 65 ou.may.obtain.a.copy.of.the.Lice
24ac0 6e 73 65 20 61 74 0a 23 0a 23 20 20 20 20 68 74 74 70 3a 2f 2f 77 77 77 2e 61 70 61 63 68 65 2e nse.at.#.#....http://www.apache.
24ae0 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 4c 49 43 45 4e 53 45 2d 32 2e 30 0a 23 0a 23 20 55 6e 6c org/licenses/LICENSE-2.0.#.#.Unl
24b00 65 73 73 20 72 65 71 75 69 72 65 64 20 62 79 20 61 70 70 6c 69 63 61 62 6c 65 20 6c 61 77 20 6f ess.required.by.applicable.law.o
24b20 72 20 61 67 72 65 65 64 20 74 6f 20 69 6e 20 77 72 69 74 69 6e 67 2c 20 73 6f 66 74 77 61 72 65 r.agreed.to.in.writing,.software
24b40 0a 23 20 64 69 73 74 72 69 62 75 74 65 64 20 75 6e 64 65 72 20 74 68 65 20 4c 69 63 65 6e 73 65 .#.distributed.under.the.License
24b60 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 6f 6e 20 61 6e 20 22 41 53 20 49 53 22 20 42 41 .is.distributed.on.an."AS.IS".BA
24b80 53 49 53 2c 0a 23 20 57 49 54 48 4f 55 54 20 57 41 52 52 41 4e 54 49 45 53 20 4f 52 20 43 4f 4e SIS,.#.WITHOUT.WARRANTIES.OR.CON
24ba0 44 49 54 49 4f 4e 53 20 4f 46 20 41 4e 59 20 4b 49 4e 44 2c 20 65 69 74 68 65 72 20 65 78 70 72 DITIONS.OF.ANY.KIND,.either.expr
24bc0 65 73 73 20 6f 72 0a 23 20 69 6d 70 6c 69 65 64 2e 0a 23 20 53 65 65 20 74 68 65 20 4c 69 63 65 ess.or.#.implied..#.See.the.Lice
24be0 6e 73 65 20 66 6f 72 20 74 68 65 20 73 70 65 63 69 66 69 63 20 6c 61 6e 67 75 61 67 65 20 67 6f nse.for.the.specific.language.go
24c00 76 65 72 6e 69 6e 67 20 70 65 72 6d 69 73 73 69 6f 6e 73 20 61 6e 64 0a 23 20 6c 69 6d 69 74 61 verning.permissions.and.#.limita
24c20 74 69 6f 6e 73 20 75 6e 64 65 72 20 74 68 65 20 4c 69 63 65 6e 73 65 2e 0a 0a 69 6d 70 6f 72 74 tions.under.the.License...import
24c40 20 6f 73 0a 69 6d 70 6f 72 74 20 73 79 73 0a 0a 73 79 73 2e 70 61 74 68 2e 69 6e 73 65 72 74 28 .os.import.sys..sys.path.insert(
24c60 30 2c 20 6f 73 2e 70 61 74 68 2e 61 62 73 70 61 74 68 28 27 2e 2e 2f 2e 2e 27 29 29 0a 23 20 2d 0,.os.path.abspath('../..')).#.-
24c80 2d 20 47 65 6e 65 72 61 6c 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 2d 2d 2d 2d 2d 2d 2d 2d -.General.configuration.--------
24ca0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
24cc0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 23 20 41 64 64 20 61 6e 79 20 53 70 68 69 6e 78 20 65 ------------..#.Add.any.Sphinx.e
24ce0 78 74 65 6e 73 69 6f 6e 20 6d 6f 64 75 6c 65 20 6e 61 6d 65 73 20 68 65 72 65 2c 20 61 73 20 73 xtension.module.names.here,.as.s
24d00 74 72 69 6e 67 73 2e 20 54 68 65 79 20 63 61 6e 20 62 65 0a 23 20 65 78 74 65 6e 73 69 6f 6e 73 trings..They.can.be.#.extensions
24d20 20 63 6f 6d 69 6e 67 20 77 69 74 68 20 53 70 68 69 6e 78 20 28 6e 61 6d 65 64 20 27 73 70 68 69 .coming.with.Sphinx.(named.'sphi
24d40 6e 78 2e 65 78 74 2e 2a 27 29 20 6f 72 20 79 6f 75 72 20 63 75 73 74 6f 6d 20 6f 6e 65 73 2e 0a nx.ext.*').or.your.custom.ones..
24d60 65 78 74 65 6e 73 69 6f 6e 73 20 3d 20 5b 0a 20 20 20 20 27 73 70 68 69 6e 78 2e 65 78 74 2e 61 extensions.=.[.....'sphinx.ext.a
24d80 75 74 6f 64 6f 63 27 2c 0a 20 20 20 20 23 27 73 70 68 69 6e 78 2e 65 78 74 2e 69 6e 74 65 72 73 utodoc',.....#'sphinx.ext.inters
24da0 70 68 69 6e 78 27 2c 0a 20 20 20 20 27 6f 73 6c 6f 73 70 68 69 6e 78 27 0a 5d 0a 0a 23 20 61 75 phinx',.....'oslosphinx'.]..#.au
24dc0 74 6f 64 6f 63 20 67 65 6e 65 72 61 74 69 6f 6e 20 69 73 20 61 20 62 69 74 20 61 67 67 72 65 73 todoc.generation.is.a.bit.aggres
24de0 73 69 76 65 20 61 6e 64 20 61 20 6e 75 69 73 61 6e 63 65 20 77 68 65 6e 20 64 6f 69 6e 67 20 68 sive.and.a.nuisance.when.doing.h
24e00 65 61 76 79 0a 23 20 74 65 78 74 20 65 64 69 74 20 63 79 63 6c 65 73 2e 0a 23 20 65 78 65 63 75 eavy.#.text.edit.cycles..#.execu
24e20 74 65 20 22 65 78 70 6f 72 74 20 53 50 48 49 4e 58 5f 44 45 42 55 47 3d 31 22 20 69 6e 20 79 6f te."export.SPHINX_DEBUG=1".in.yo
24e40 75 72 20 74 65 72 6d 69 6e 61 6c 20 74 6f 20 64 69 73 61 62 6c 65 0a 0a 23 20 54 68 65 20 73 75 ur.terminal.to.disable..#.The.su
24e60 66 66 69 78 20 6f 66 20 73 6f 75 72 63 65 20 66 69 6c 65 6e 61 6d 65 73 2e 0a 73 6f 75 72 63 65 ffix.of.source.filenames..source
24e80 5f 73 75 66 66 69 78 20 3d 20 27 2e 72 73 74 27 0a 0a 23 20 54 68 65 20 6d 61 73 74 65 72 20 74 _suffix.=.'.rst'..#.The.master.t
24ea0 6f 63 74 72 65 65 20 64 6f 63 75 6d 65 6e 74 2e 0a 6d 61 73 74 65 72 5f 64 6f 63 20 3d 20 27 69 octree.document..master_doc.=.'i
24ec0 6e 64 65 78 27 0a 0a 23 20 47 65 6e 65 72 61 6c 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f ndex'..#.General.information.abo
24ee0 75 74 20 74 68 65 20 70 72 6f 6a 65 63 74 2e 0a 70 72 6f 6a 65 63 74 20 3d 20 75 27 6e 65 74 77 ut.the.project..project.=.u'netw
24f00 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 27 0a 63 6f 70 79 72 69 67 68 74 20 3d 20 75 27 32 30 31 33 2c orking-onos'.copyright.=.u'2013,
24f20 20 4f 70 65 6e 53 74 61 63 6b 20 46 6f 75 6e 64 61 74 69 6f 6e 27 0a 0a 23 20 49 66 20 74 72 75 .OpenStack.Foundation'..#.If.tru
24f40 65 2c 20 27 28 29 27 20 77 69 6c 6c 20 62 65 20 61 70 70 65 6e 64 65 64 20 74 6f 20 3a 66 75 6e e,.'()'.will.be.appended.to.:fun
24f60 63 3a 20 65 74 63 2e 20 63 72 6f 73 73 2d 72 65 66 65 72 65 6e 63 65 20 74 65 78 74 2e 0a 61 64 c:.etc..cross-reference.text..ad
24f80 64 5f 66 75 6e 63 74 69 6f 6e 5f 70 61 72 65 6e 74 68 65 73 65 73 20 3d 20 54 72 75 65 0a 0a 23 d_function_parentheses.=.True..#
24fa0 20 49 66 20 74 72 75 65 2c 20 74 68 65 20 63 75 72 72 65 6e 74 20 6d 6f 64 75 6c 65 20 6e 61 6d .If.true,.the.current.module.nam
24fc0 65 20 77 69 6c 6c 20 62 65 20 70 72 65 70 65 6e 64 65 64 20 74 6f 20 61 6c 6c 20 64 65 73 63 72 e.will.be.prepended.to.all.descr
24fe0 69 70 74 69 6f 6e 0a 23 20 75 6e 69 74 20 74 69 74 6c 65 73 20 28 73 75 63 68 20 61 73 20 2e 2e iption.#.unit.titles.(such.as...
25000 20 66 75 6e 63 74 69 6f 6e 3a 3a 29 2e 0a 61 64 64 5f 6d 6f 64 75 6c 65 5f 6e 61 6d 65 73 20 3d .function::)..add_module_names.=
25020 20 54 72 75 65 0a 0a 23 20 54 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 50 79 67 6d 65 6e 74 .True..#.The.name.of.the.Pygment
25040 73 20 28 73 79 6e 74 61 78 20 68 69 67 68 6c 69 67 68 74 69 6e 67 29 20 73 74 79 6c 65 20 74 6f s.(syntax.highlighting).style.to
25060 20 75 73 65 2e 0a 70 79 67 6d 65 6e 74 73 5f 73 74 79 6c 65 20 3d 20 27 73 70 68 69 6e 78 27 0a .use..pygments_style.=.'sphinx'.
25080 0a 23 20 2d 2d 20 4f 70 74 69 6f 6e 73 20 66 6f 72 20 48 54 4d 4c 20 6f 75 74 70 75 74 20 2d 2d .#.--.Options.for.HTML.output.--
250a0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d --------------------------------
250c0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 23 20 54 68 65 20 74 68 65 6d 65 20 74 6f ----------------..#.The.theme.to
250e0 20 75 73 65 20 66 6f 72 20 48 54 4d 4c 20 61 6e 64 20 48 54 4d 4c 20 48 65 6c 70 20 70 61 67 65 .use.for.HTML.and.HTML.Help.page
25100 73 2e 20 20 4d 61 6a 6f 72 20 74 68 65 6d 65 73 20 74 68 61 74 20 63 6f 6d 65 20 77 69 74 68 0a s...Major.themes.that.come.with.
25120 23 20 53 70 68 69 6e 78 20 61 72 65 20 63 75 72 72 65 6e 74 6c 79 20 27 64 65 66 61 75 6c 74 27 #.Sphinx.are.currently.'default'
25140 20 61 6e 64 20 27 73 70 68 69 6e 78 64 6f 63 27 2e 0a 23 20 68 74 6d 6c 5f 74 68 65 6d 65 5f 70 .and.'sphinxdoc'..#.html_theme_p
25160 61 74 68 20 3d 20 5b 22 2e 22 5d 0a 23 20 68 74 6d 6c 5f 74 68 65 6d 65 20 3d 20 27 5f 74 68 65 ath.=.["."].#.html_theme.=.'_the
25180 6d 65 27 0a 23 20 68 74 6d 6c 5f 73 74 61 74 69 63 5f 70 61 74 68 20 3d 20 5b 27 73 74 61 74 69 me'.#.html_static_path.=.['stati
251a0 63 27 5d 0a 0a 23 20 4f 75 74 70 75 74 20 66 69 6c 65 20 62 61 73 65 20 6e 61 6d 65 20 66 6f 72 c']..#.Output.file.base.name.for
251c0 20 48 54 4d 4c 20 68 65 6c 70 20 62 75 69 6c 64 65 72 2e 0a 68 74 6d 6c 68 65 6c 70 5f 62 61 73 .HTML.help.builder..htmlhelp_bas
251e0 65 6e 61 6d 65 20 3d 20 27 25 73 64 6f 63 27 20 25 20 70 72 6f 6a 65 63 74 0a 0a 23 20 47 72 6f ename.=.'%sdoc'.%.project..#.Gro
25200 75 70 69 6e 67 20 74 68 65 20 64 6f 63 75 6d 65 6e 74 20 74 72 65 65 20 69 6e 74 6f 20 4c 61 54 uping.the.document.tree.into.LaT
25220 65 58 20 66 69 6c 65 73 2e 20 4c 69 73 74 20 6f 66 20 74 75 70 6c 65 73 0a 23 20 28 73 6f 75 72 eX.files..List.of.tuples.#.(sour
25240 63 65 20 73 74 61 72 74 20 66 69 6c 65 2c 20 74 61 72 67 65 74 20 6e 61 6d 65 2c 20 74 69 74 6c ce.start.file,.target.name,.titl
25260 65 2c 20 61 75 74 68 6f 72 2c 20 64 6f 63 75 6d 65 6e 74 63 6c 61 73 73 0a 23 20 5b 68 6f 77 74 e,.author,.documentclass.#.[howt
25280 6f 2f 6d 61 6e 75 61 6c 5d 29 2e 0a 6c 61 74 65 78 5f 64 6f 63 75 6d 65 6e 74 73 20 3d 20 5b 0a o/manual])..latex_documents.=.[.
252a0 20 20 20 20 28 27 69 6e 64 65 78 27 2c 0a 20 20 20 20 20 27 25 73 2e 74 65 78 27 20 25 20 70 72 ....('index',......'%s.tex'.%.pr
252c0 6f 6a 65 63 74 2c 0a 20 20 20 20 20 75 27 25 73 20 44 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 27 20 oject,......u'%s.Documentation'.
252e0 25 20 70 72 6f 6a 65 63 74 2c 0a 20 20 20 20 20 75 27 4f 70 65 6e 53 74 61 63 6b 20 46 6f 75 6e %.project,......u'OpenStack.Foun
25300 64 61 74 69 6f 6e 27 2c 20 27 6d 61 6e 75 61 6c 27 29 2c 0a 5d 0a 0a 23 20 45 78 61 6d 70 6c 65 dation',.'manual'),.]..#.Example
25320 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 66 6f 72 20 69 6e 74 65 72 73 70 68 69 6e 78 3a 20 .configuration.for.intersphinx:.
25340 72 65 66 65 72 20 74 6f 20 74 68 65 20 50 79 74 68 6f 6e 20 73 74 61 6e 64 61 72 64 20 6c 69 62 refer.to.the.Python.standard.lib
25360 72 61 72 79 2e 0a 23 69 6e 74 65 72 73 70 68 69 6e 78 5f 6d 61 70 70 69 6e 67 20 3d 20 7b 27 68 rary..#intersphinx_mapping.=.{'h
25380 74 74 70 3a 2f 2f 64 6f 63 73 2e 70 79 74 68 6f 6e 2e 6f 72 67 2f 27 3a 20 4e 6f 6e 65 7d 0a 00 ttp://docs.python.org/':.None}..
253a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
253c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
253e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
25400 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 54 45 53 54 49 4e 47 2e 72 73 74 00 00 00 00 00 networking-onos/TESTING.rst.....
25420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
25440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
25460 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
25480 30 30 31 32 32 31 32 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 34 36 31 32 00 20 30 00 00 00 0012212.12627513442.014612..0...
254a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
254c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
254e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
25500 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
25520 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
25540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
25560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
25580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
255a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
255c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
255e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
25600 54 65 73 74 69 6e 67 20 4e 65 75 74 72 6f 6e 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a Testing.Neutron.===============.
25620 0a 4f 76 65 72 76 69 65 77 0a 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 54 68 65 20 75 6e 69 74 20 74 65 73 .Overview.--------..The.unit.tes
25640 74 73 20 28 6e 65 75 74 72 6f 6e 2f 74 65 73 74 2f 75 6e 69 74 2f 29 20 61 72 65 20 6d 65 61 6e ts.(neutron/test/unit/).are.mean
25660 74 20 74 6f 20 63 6f 76 65 72 20 61 73 20 6d 75 63 68 20 63 6f 64 65 20 61 73 0a 70 6f 73 73 69 t.to.cover.as.much.code.as.possi
25680 62 6c 65 20 61 6e 64 20 73 68 6f 75 6c 64 20 62 65 20 65 78 65 63 75 74 65 64 20 77 69 74 68 6f ble.and.should.be.executed.witho
256a0 75 74 20 74 68 65 20 73 65 72 76 69 63 65 20 72 75 6e 6e 69 6e 67 2e 20 54 68 65 79 20 61 72 65 ut.the.service.running..They.are
256c0 0a 64 65 73 69 67 6e 65 64 20 74 6f 20 74 65 73 74 20 74 68 65 20 76 61 72 69 6f 75 73 20 70 69 .designed.to.test.the.various.pi
256e0 65 63 65 73 20 6f 66 20 74 68 65 20 6e 65 75 74 72 6f 6e 20 74 72 65 65 20 74 6f 20 6d 61 6b 65 eces.of.the.neutron.tree.to.make
25700 20 73 75 72 65 0a 61 6e 79 20 6e 65 77 20 63 68 61 6e 67 65 73 20 64 6f 6e 27 74 20 62 72 65 61 .sure.any.new.changes.don't.brea
25720 6b 20 65 78 69 73 74 69 6e 67 20 66 75 6e 63 74 69 6f 6e 61 6c 69 74 79 2e 0a 0a 54 68 65 20 66 k.existing.functionality...The.f
25740 75 6e 63 74 69 6f 6e 61 6c 20 74 65 73 74 73 20 28 6e 65 75 74 72 6f 6e 2f 74 65 73 74 73 2f 66 unctional.tests.(neutron/tests/f
25760 75 6e 63 74 69 6f 6e 61 6c 2f 29 20 61 72 65 20 69 6e 74 65 6e 64 65 64 20 74 6f 0a 76 61 6c 69 unctional/).are.intended.to.vali
25780 64 61 74 65 20 61 63 74 75 61 6c 20 73 79 73 74 65 6d 20 69 6e 74 65 72 61 63 74 69 6f 6e 2e 20 date.actual.system.interaction..
257a0 20 4d 6f 63 6b 73 20 73 68 6f 75 6c 64 20 62 65 20 75 73 65 64 20 73 70 61 72 69 6e 67 6c 79 2c .Mocks.should.be.used.sparingly,
257c0 0a 69 66 20 61 74 20 61 6c 6c 2e 20 20 43 61 72 65 20 73 68 6f 75 6c 64 20 62 65 20 74 61 6b 65 .if.at.all...Care.should.be.take
257e0 6e 20 74 6f 20 65 6e 73 75 72 65 20 74 68 61 74 20 65 78 69 73 74 69 6e 67 20 73 79 73 74 65 6d n.to.ensure.that.existing.system
25800 0a 72 65 73 6f 75 72 63 65 73 20 61 72 65 20 6e 6f 74 20 6d 6f 64 69 66 69 65 64 20 61 6e 64 20 .resources.are.not.modified.and.
25820 74 68 61 74 20 72 65 73 6f 75 72 63 65 73 20 63 72 65 61 74 65 64 20 69 6e 20 74 65 73 74 73 20 that.resources.created.in.tests.
25840 61 72 65 0a 70 72 6f 70 65 72 6c 79 20 63 6c 65 61 6e 65 64 20 75 70 2e 0a 0a 44 65 76 65 6c 6f are.properly.cleaned.up...Develo
25860 70 6d 65 6e 74 20 70 72 6f 63 65 73 73 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d pment.process.------------------
25880 2d 0a 0a 49 74 20 69 73 20 65 78 70 65 63 74 65 64 20 74 68 61 74 20 61 6e 79 20 6e 65 77 20 63 -..It.is.expected.that.any.new.c
258a0 68 61 6e 67 65 73 20 74 68 61 74 20 61 72 65 20 70 72 6f 70 6f 73 65 64 20 66 6f 72 20 6d 65 72 hanges.that.are.proposed.for.mer
258c0 67 65 0a 63 6f 6d 65 20 77 69 74 68 20 74 65 73 74 73 20 66 6f 72 20 74 68 61 74 20 66 65 61 74 ge.come.with.tests.for.that.feat
258e0 75 72 65 20 6f 72 20 63 6f 64 65 20 61 72 65 61 2e 20 49 64 65 61 6c 6c 79 20 61 6e 79 20 62 75 ure.or.code.area..Ideally.any.bu
25900 67 73 0a 66 69 78 65 73 20 74 68 61 74 20 61 72 65 20 73 75 62 6d 69 74 74 65 64 20 61 6c 73 6f gs.fixes.that.are.submitted.also
25920 20 68 61 76 65 20 74 65 73 74 73 20 74 6f 20 70 72 6f 76 65 20 74 68 61 74 20 74 68 65 79 20 73 .have.tests.to.prove.that.they.s
25940 74 61 79 0a 66 69 78 65 64 21 20 20 49 6e 20 61 64 64 69 74 69 6f 6e 2c 20 62 65 66 6f 72 65 20 tay.fixed!..In.addition,.before.
25960 70 72 6f 70 6f 73 69 6e 67 20 66 6f 72 20 6d 65 72 67 65 2c 20 61 6c 6c 20 6f 66 20 74 68 65 0a proposing.for.merge,.all.of.the.
25980 63 75 72 72 65 6e 74 20 74 65 73 74 73 20 73 68 6f 75 6c 64 20 62 65 20 70 61 73 73 69 6e 67 2e current.tests.should.be.passing.
259a0 0a 0a 56 69 72 74 75 61 6c 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 73 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e ..Virtual.environments.~~~~~~~~~
259c0 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a 54 65 73 74 69 6e 67 20 4f 70 65 6e 53 74 61 63 6b 20 70 ~~~~~~~~~~~..Testing.OpenStack.p
259e0 72 6f 6a 65 63 74 73 2c 20 69 6e 63 6c 75 64 69 6e 67 20 4e 65 75 74 72 6f 6e 2c 20 69 73 20 6d rojects,.including.Neutron,.is.m
25a00 61 64 65 20 65 61 73 69 65 72 20 77 69 74 68 20 60 44 65 76 53 74 61 63 6b 20 3c 68 74 74 70 73 ade.easier.with.`DevStack.<https
25a20 3a 2f 2f 67 69 74 2e 6f 70 65 6e 73 74 61 63 6b 2e 6f 72 67 2f 63 67 69 74 2f 6f 70 65 6e 73 74 ://git.openstack.org/cgit/openst
25a40 61 63 6b 2d 64 65 76 2f 64 65 76 73 74 61 63 6b 3e 60 5f 2e 0a 0a 43 72 65 61 74 65 20 61 20 6d ack-dev/devstack>`_...Create.a.m
25a60 61 63 68 69 6e 65 20 28 73 75 63 68 20 61 73 20 61 20 56 4d 20 6f 72 20 56 61 67 72 61 6e 74 20 achine.(such.as.a.VM.or.Vagrant.
25a80 62 6f 78 29 20 72 75 6e 6e 69 6e 67 20 61 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 73 75 70 70 box).running.a.distribution.supp
25aa0 6f 72 74 65 64 0a 62 79 20 44 65 76 53 74 61 63 6b 20 61 6e 64 20 69 6e 73 74 61 6c 6c 20 44 65 orted.by.DevStack.and.install.De
25ac0 76 53 74 61 63 6b 20 74 68 65 72 65 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 74 68 65 72 65 vStack.there..For.example,.there
25ae0 20 69 73 20 61 20 56 61 67 72 61 6e 74 20 73 63 72 69 70 74 0a 66 6f 72 20 44 65 76 53 74 61 63 .is.a.Vagrant.script.for.DevStac
25b00 6b 20 61 74 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 62 63 77 61 6c 64 6f 6e k.at.https://github.com/bcwaldon
25b20 2f 76 61 67 72 61 6e 74 5f 64 65 76 73 74 61 63 6b 2e 0a 0a 20 2e 2e 20 6e 6f 74 65 3a 3a 0a 0a /vagrant_devstack.......note::..
25b40 20 20 20 20 49 66 20 79 6f 75 20 70 72 65 66 65 72 20 6e 6f 74 20 74 6f 20 75 73 65 20 44 65 76 ....If.you.prefer.not.to.use.Dev
25b60 53 74 61 63 6b 2c 20 79 6f 75 20 63 61 6e 20 73 74 69 6c 6c 20 63 68 65 63 6b 20 6f 75 74 20 73 Stack,.you.can.still.check.out.s
25b80 6f 75 72 63 65 20 63 6f 64 65 20 6f 6e 20 79 6f 75 72 20 6c 6f 63 61 6c 0a 20 20 20 20 6d 61 63 ource.code.on.your.local.....mac
25ba0 68 69 6e 65 20 61 6e 64 20 64 65 76 65 6c 6f 70 20 66 72 6f 6d 20 74 68 65 72 65 2e 0a 0a 0a 52 hine.and.develop.from.there....R
25bc0 75 6e 6e 69 6e 67 20 75 6e 69 74 20 74 65 73 74 73 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d unning.unit.tests.--------------
25be0 2d 2d 2d 2d 0a 0a 54 68 65 72 65 20 61 72 65 20 74 77 6f 20 6d 65 63 68 61 6e 69 73 6d 73 20 66 ----..There.are.two.mechanisms.f
25c00 6f 72 20 72 75 6e 6e 69 6e 67 20 74 65 73 74 73 3a 20 74 6f 78 2c 20 61 6e 64 20 6e 6f 73 65 2e or.running.tests:.tox,.and.nose.
25c20 20 42 65 66 6f 72 65 20 73 75 62 6d 69 74 74 69 6e 67 0a 61 20 70 61 74 63 68 20 66 6f 72 20 72 .Before.submitting.a.patch.for.r
25c40 65 76 69 65 77 20 79 6f 75 20 73 68 6f 75 6c 64 20 61 6c 77 61 79 73 20 65 6e 73 75 72 65 20 61 eview.you.should.always.ensure.a
25c60 6c 6c 20 74 65 73 74 20 70 61 73 73 3b 20 61 20 74 6f 78 20 72 75 6e 20 69 73 0a 74 72 69 67 67 ll.test.pass;.a.tox.run.is.trigg
25c80 65 72 65 64 20 62 79 20 74 68 65 20 6a 65 6e 6b 69 6e 73 20 67 61 74 65 20 65 78 65 63 75 74 65 ered.by.the.jenkins.gate.execute
25ca0 64 20 6f 6e 20 67 65 72 72 69 74 20 66 6f 72 20 65 61 63 68 20 70 61 74 63 68 20 70 75 73 68 65 d.on.gerrit.for.each.patch.pushe
25cc0 64 20 66 6f 72 0a 72 65 76 69 65 77 2e 0a 0a 57 69 74 68 20 74 68 65 73 65 20 6d 65 63 68 61 6e d.for.review...With.these.mechan
25ce0 69 73 6d 73 20 79 6f 75 20 63 61 6e 20 65 69 74 68 65 72 20 72 75 6e 20 74 68 65 20 74 65 73 74 isms.you.can.either.run.the.test
25d00 73 20 69 6e 20 74 68 65 20 73 74 61 6e 64 61 72 64 0a 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 6f 72 s.in.the.standard.environment.or
25d20 20 63 72 65 61 74 65 20 61 20 76 69 72 74 75 61 6c 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 74 6f .create.a.virtual.environment.to
25d40 20 72 75 6e 20 74 68 65 6d 20 69 6e 2e 0a 0a 42 79 20 64 65 66 61 75 6c 74 20 61 66 74 65 72 20 .run.them.in...By.default.after.
25d60 72 75 6e 6e 69 6e 67 20 61 6c 6c 20 6f 66 20 74 68 65 20 74 65 73 74 73 2c 20 61 6e 79 20 70 65 running.all.of.the.tests,.any.pe
25d80 70 38 20 65 72 72 6f 72 73 0a 66 6f 75 6e 64 20 69 6e 20 74 68 65 20 74 72 65 65 20 77 69 6c 6c p8.errors.found.in.the.tree.will
25da0 20 62 65 20 72 65 70 6f 72 74 65 64 2e 0a 0a 0a 57 69 74 68 20 60 6e 6f 73 65 60 0a 7e 7e 7e 7e .be.reported....With.`nose`.~~~~
25dc0 7e 7e 7e 7e 7e 7e 7e 0a 0a 59 6f 75 20 63 61 6e 20 75 73 65 20 60 6e 6f 73 65 60 5f 20 74 6f 20 ~~~~~~~..You.can.use.`nose`_.to.
25de0 72 75 6e 20 69 6e 64 69 76 69 64 75 61 6c 20 74 65 73 74 73 2c 20 61 73 20 77 65 6c 6c 20 61 73 run.individual.tests,.as.well.as
25e00 20 75 73 65 20 66 6f 72 20 64 65 62 75 67 67 69 6e 67 0a 70 6f 72 74 69 6f 6e 73 20 6f 66 20 79 .use.for.debugging.portions.of.y
25e20 6f 75 72 20 63 6f 64 65 3a 3a 0a 0a 20 20 20 20 73 6f 75 72 63 65 20 2e 76 65 6e 76 2f 62 69 6e our.code::......source..venv/bin
25e40 2f 61 63 74 69 76 61 74 65 0a 20 20 20 20 70 69 70 20 69 6e 73 74 61 6c 6c 20 6e 6f 73 65 0a 20 /activate.....pip.install.nose..
25e60 20 20 20 6e 6f 73 65 74 65 73 74 73 0a 0a 54 68 65 72 65 20 61 72 65 20 64 69 73 61 64 76 61 6e ...nosetests..There.are.disadvan
25e80 74 61 67 65 73 20 74 6f 20 72 75 6e 6e 69 6e 67 20 4e 6f 73 65 20 2d 20 74 68 65 20 74 65 73 74 tages.to.running.Nose.-.the.test
25ea0 73 20 61 72 65 20 72 75 6e 20 73 65 71 75 65 6e 74 69 61 6c 6c 79 2c 20 73 6f 0a 72 61 63 65 20 s.are.run.sequentially,.so.race.
25ec0 63 6f 6e 64 69 74 69 6f 6e 20 62 75 67 73 20 77 69 6c 6c 20 6e 6f 74 20 62 65 20 74 72 69 67 67 condition.bugs.will.not.be.trigg
25ee0 65 72 65 64 2c 20 61 6e 64 20 74 68 65 20 66 75 6c 6c 20 74 65 73 74 20 73 75 69 74 65 20 77 69 ered,.and.the.full.test.suite.wi
25f00 6c 6c 0a 74 61 6b 65 20 73 69 67 6e 69 66 69 63 61 6e 74 6c 79 20 6c 6f 6e 67 65 72 20 74 68 61 ll.take.significantly.longer.tha
25f20 6e 20 74 6f 78 20 26 20 74 65 73 74 72 2e 20 54 68 65 20 75 70 73 69 64 65 20 69 73 20 74 68 61 n.tox.&.testr..The.upside.is.tha
25f40 74 20 74 65 73 74 72 20 68 61 73 0a 73 6f 6d 65 20 72 6f 75 67 68 20 65 64 67 65 73 20 77 68 65 t.testr.has.some.rough.edges.whe
25f60 6e 20 69 74 20 63 6f 6d 65 73 20 74 6f 20 64 69 61 67 6e 6f 73 69 6e 67 20 65 72 72 6f 72 73 20 n.it.comes.to.diagnosing.errors.
25f80 61 6e 64 20 66 61 69 6c 75 72 65 73 2c 20 61 6e 64 20 74 68 65 72 65 20 69 73 0a 6e 6f 20 65 61 and.failures,.and.there.is.no.ea
25fa0 73 79 20 77 61 79 20 74 6f 20 73 65 74 20 61 20 62 72 65 61 6b 70 6f 69 6e 74 20 69 6e 20 74 68 sy.way.to.set.a.breakpoint.in.th
25fc0 65 20 4e 65 75 74 72 6f 6e 20 63 6f 64 65 2c 20 61 6e 64 20 65 6e 74 65 72 20 61 6e 0a 69 6e 74 e.Neutron.code,.and.enter.an.int
25fe0 65 72 61 63 74 69 76 65 20 64 65 62 75 67 67 69 6e 67 20 73 65 73 73 69 6f 6e 20 77 68 69 6c 65 eractive.debugging.session.while
26000 20 75 73 69 6e 67 20 74 65 73 74 72 2e 0a 0a 2e 2e 20 5f 6e 6f 73 65 3a 20 68 74 74 70 73 3a 2f .using.testr......_nose:.https:/
26020 2f 6e 6f 73 65 2e 72 65 61 64 74 68 65 64 6f 63 73 2e 6f 72 67 2f 65 6e 2f 6c 61 74 65 73 74 2f /nose.readthedocs.org/en/latest/
26040 69 6e 64 65 78 2e 68 74 6d 6c 0a 0a 57 69 74 68 20 60 74 6f 78 60 0a 7e 7e 7e 7e 7e 7e 7e 7e 7e index.html..With.`tox`.~~~~~~~~~
26060 7e 0a 0a 4e 65 75 74 72 6f 6e 2c 20 6c 69 6b 65 20 6f 74 68 65 72 20 4f 70 65 6e 53 74 61 63 6b ~..Neutron,.like.other.OpenStack
26080 20 70 72 6f 6a 65 63 74 73 2c 20 75 73 65 73 20 60 74 6f 78 60 5f 20 66 6f 72 20 6d 61 6e 61 67 .projects,.uses.`tox`_.for.manag
260a0 69 6e 67 20 74 68 65 20 76 69 72 74 75 61 6c 0a 65 6e 76 69 72 6f 6e 6d 65 6e 74 73 20 66 6f 72 ing.the.virtual.environments.for
260c0 20 72 75 6e 6e 69 6e 67 20 74 65 73 74 20 63 61 73 65 73 2e 20 49 74 20 75 73 65 73 20 60 54 65 .running.test.cases..It.uses.`Te
260e0 73 74 72 60 5f 20 66 6f 72 20 6d 61 6e 61 67 69 6e 67 20 74 68 65 20 72 75 6e 6e 69 6e 67 0a 6f str`_.for.managing.the.running.o
26100 66 20 74 68 65 20 74 65 73 74 20 63 61 73 65 73 2e 0a 0a 54 6f 78 20 68 61 6e 64 6c 65 73 20 74 f.the.test.cases...Tox.handles.t
26120 68 65 20 63 72 65 61 74 69 6f 6e 20 6f 66 20 61 20 73 65 72 69 65 73 20 6f 66 20 60 76 69 72 74 he.creation.of.a.series.of.`virt
26140 75 61 6c 65 6e 76 73 60 5f 20 74 68 61 74 20 74 61 72 67 65 74 20 73 70 65 63 69 66 69 63 0a 76 ualenvs`_.that.target.specific.v
26160 65 72 73 69 6f 6e 73 20 6f 66 20 50 79 74 68 6f 6e 20 28 32 2e 36 2c 20 32 2e 37 2c 20 33 2e 33 ersions.of.Python.(2.6,.2.7,.3.3
26180 2c 20 65 74 63 29 2e 0a 0a 54 65 73 74 72 20 68 61 6e 64 6c 65 73 20 74 68 65 20 70 61 72 61 6c ,.etc)...Testr.handles.the.paral
261a0 6c 65 6c 20 65 78 65 63 75 74 69 6f 6e 20 6f 66 20 73 65 72 69 65 73 20 6f 66 20 74 65 73 74 20 lel.execution.of.series.of.test.
261c0 63 61 73 65 73 20 61 73 20 77 65 6c 6c 20 61 73 0a 74 68 65 20 74 72 61 63 6b 69 6e 67 20 6f 66 cases.as.well.as.the.tracking.of
261e0 20 6c 6f 6e 67 2d 72 75 6e 6e 69 6e 67 20 74 65 73 74 73 20 61 6e 64 20 6f 74 68 65 72 20 74 68 .long-running.tests.and.other.th
26200 69 6e 67 73 2e 0a 0a 52 75 6e 6e 69 6e 67 20 75 6e 69 74 20 74 65 73 74 73 20 69 73 20 61 73 20 ings...Running.unit.tests.is.as.
26220 65 61 73 79 20 61 73 20 65 78 65 63 75 74 69 6e 67 20 74 68 69 73 20 69 6e 20 74 68 65 20 72 6f easy.as.executing.this.in.the.ro
26240 6f 74 20 64 69 72 65 63 74 6f 72 79 20 6f 66 20 74 68 65 0a 4e 65 75 74 72 6f 6e 20 73 6f 75 72 ot.directory.of.the.Neutron.sour
26260 63 65 20 63 6f 64 65 3a 3a 0a 0a 20 20 20 20 74 6f 78 0a 0a 46 6f 72 20 6d 6f 72 65 20 69 6e 66 ce.code::......tox..For.more.inf
26280 6f 72 6d 61 74 69 6f 6e 20 6f 6e 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 54 6f 78 2d 62 61 73 ormation.on.the.standard.Tox-bas
262a0 65 64 20 74 65 73 74 20 69 6e 66 72 61 73 74 72 75 63 74 75 72 65 20 75 73 65 64 20 62 79 0a 4f ed.test.infrastructure.used.by.O
262c0 70 65 6e 53 74 61 63 6b 20 61 6e 64 20 68 6f 77 20 74 6f 20 64 6f 20 73 6f 6d 65 20 63 6f 6d 6d penStack.and.how.to.do.some.comm
262e0 6f 6e 20 74 65 73 74 2f 64 65 62 75 67 67 69 6e 67 20 70 72 6f 63 65 64 75 72 65 73 20 77 69 74 on.test/debugging.procedures.wit
26300 68 20 54 65 73 74 72 2c 0a 73 65 65 20 74 68 69 73 20 77 69 6b 69 20 70 61 67 65 3a 0a 0a 20 20 h.Testr,.see.this.wiki.page:....
26320 68 74 74 70 73 3a 2f 2f 77 69 6b 69 2e 6f 70 65 6e 73 74 61 63 6b 2e 6f 72 67 2f 77 69 6b 69 2f https://wiki.openstack.org/wiki/
26340 54 65 73 74 72 0a 0a 2e 2e 20 5f 54 65 73 74 72 3a 20 68 74 74 70 73 3a 2f 2f 77 69 6b 69 2e 6f Testr....._Testr:.https://wiki.o
26360 70 65 6e 73 74 61 63 6b 2e 6f 72 67 2f 77 69 6b 69 2f 54 65 73 74 72 0a 2e 2e 20 5f 74 6f 78 3a penstack.org/wiki/Testr...._tox:
26380 20 68 74 74 70 3a 2f 2f 74 6f 78 2e 72 65 61 64 74 68 65 64 6f 63 73 2e 6f 72 67 2f 65 6e 2f 6c .http://tox.readthedocs.org/en/l
263a0 61 74 65 73 74 2f 0a 2e 2e 20 5f 76 69 72 74 75 61 6c 65 6e 76 73 3a 20 68 74 74 70 73 3a 2f 2f atest/...._virtualenvs:.https://
263c0 70 79 70 69 2e 70 79 74 68 6f 6e 2e 6f 72 67 2f 70 79 70 69 2f 76 69 72 74 75 61 6c 65 6e 76 0a pypi.python.org/pypi/virtualenv.
263e0 0a 0a 52 75 6e 6e 69 6e 67 20 69 6e 64 69 76 69 64 75 61 6c 20 74 65 73 74 73 0a 7e 7e 7e 7e 7e ..Running.individual.tests.~~~~~
26400 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a 46 6f 72 20 72 75 6e 6e 69 6e 67 ~~~~~~~~~~~~~~~~~~~..For.running
26420 20 69 6e 64 69 76 69 64 75 61 6c 20 74 65 73 74 20 6d 6f 64 75 6c 65 73 20 6f 72 20 63 61 73 65 .individual.test.modules.or.case
26440 73 2c 20 79 6f 75 20 6a 75 73 74 20 6e 65 65 64 20 74 6f 20 70 61 73 73 0a 74 68 65 20 64 6f 74 s,.you.just.need.to.pass.the.dot
26460 2d 73 65 70 61 72 61 74 65 64 20 70 61 74 68 20 74 6f 20 74 68 65 20 6d 6f 64 75 6c 65 20 79 6f -separated.path.to.the.module.yo
26480 75 20 77 61 6e 74 20 61 73 20 61 6e 20 61 72 67 75 6d 65 6e 74 20 74 6f 20 69 74 2e 0a 0a 46 6f u.want.as.an.argument.to.it...Fo
264a0 72 20 65 78 65 63 75 74 69 6e 67 20 61 20 73 70 65 63 69 66 69 63 20 74 65 73 74 20 63 61 73 65 r.executing.a.specific.test.case
264c0 2c 20 73 70 65 63 69 66 79 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 74 65 73 74 20 63 ,.specify.the.name.of.the.test.c
264e0 61 73 65 0a 63 6c 61 73 73 20 73 65 70 61 72 61 74 69 6e 67 20 69 74 20 66 72 6f 6d 20 74 68 65 ase.class.separating.it.from.the
26500 20 6d 6f 64 75 6c 65 20 70 61 74 68 20 77 69 74 68 20 61 20 63 6f 6c 6f 6e 2e 0a 0a 46 6f 72 20 .module.path.with.a.colon...For.
26520 65 78 61 6d 70 6c 65 2c 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 77 6f 75 6c 64 20 72 75 6e example,.the.following.would.run
26540 20 6f 6e 6c 79 20 74 68 65 20 4a 53 4f 4e 56 32 54 65 73 74 43 61 73 65 20 74 65 73 74 73 20 66 .only.the.JSONV2TestCase.tests.f
26560 72 6f 6d 0a 6e 65 75 74 72 6f 6e 2f 74 65 73 74 73 2f 75 6e 69 74 2f 74 65 73 74 5f 61 70 69 5f rom.neutron/tests/unit/test_api_
26580 76 32 2e 70 79 3a 3a 0a 0a 20 20 20 20 20 20 24 20 74 6f 78 20 2d 65 20 70 79 32 37 20 6e 65 75 v2.py::........$.tox.-e.py27.neu
265a0 74 72 6f 6e 2e 74 65 73 74 73 2e 75 6e 69 74 2e 74 65 73 74 5f 61 70 69 5f 76 32 2e 4a 53 4f 4e tron.tests.unit.test_api_v2.JSON
265c0 56 32 54 65 73 74 43 61 73 65 0a 0a 41 64 64 69 6e 67 20 6d 6f 72 65 20 74 65 73 74 73 0a 7e 7e V2TestCase..Adding.more.tests.~~
265e0 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 0a 4e 65 75 74 72 6f 6e 20 68 61 73 20 61 20 66 ~~~~~~~~~~~~~~~..Neutron.has.a.f
26600 61 73 74 20 67 72 6f 77 69 6e 67 20 63 6f 64 65 20 62 61 73 65 20 61 6e 64 20 74 68 65 72 65 20 ast.growing.code.base.and.there.
26620 69 73 20 70 6c 65 6e 74 79 20 6f 66 20 61 72 65 61 73 20 74 68 61 74 0a 6e 65 65 64 20 74 6f 20 is.plenty.of.areas.that.need.to.
26640 62 65 20 63 6f 76 65 72 65 64 20 62 79 20 75 6e 69 74 20 61 6e 64 20 66 75 6e 63 74 69 6f 6e 61 be.covered.by.unit.and.functiona
26660 6c 20 74 65 73 74 73 2e 0a 0a 54 6f 20 67 65 74 20 61 20 67 72 61 73 70 20 6f 66 20 74 68 65 20 l.tests...To.get.a.grasp.of.the.
26680 61 72 65 61 73 20 77 68 65 72 65 20 74 65 73 74 73 20 61 72 65 20 6e 65 65 64 65 64 2c 20 79 6f areas.where.tests.are.needed,.yo
266a0 75 20 63 61 6e 20 63 68 65 63 6b 0a 63 75 72 72 65 6e 74 20 63 6f 76 65 72 61 67 65 20 62 79 20 u.can.check.current.coverage.by.
266c0 72 75 6e 6e 69 6e 67 3a 3a 0a 0a 20 20 20 20 24 20 74 6f 78 20 2d 65 63 6f 76 65 72 0a 0a 44 65 running::......$.tox.-ecover..De
266e0 62 75 67 67 69 6e 67 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 49 74 27 73 20 70 6f 73 73 69 62 6c 65 bugging.---------..It's.possible
26700 20 74 6f 20 64 65 62 75 67 20 74 65 73 74 73 20 69 6e 20 61 20 74 6f 78 20 65 6e 76 69 72 6f 6e .to.debug.tests.in.a.tox.environ
26720 6d 65 6e 74 3a 3a 0a 0a 20 20 20 20 24 20 74 6f 78 20 2d 65 20 76 65 6e 76 20 2d 2d 20 70 79 74 ment::......$.tox.-e.venv.--.pyt
26740 68 6f 6e 20 2d 6d 20 74 65 73 74 74 6f 6f 6c 73 2e 72 75 6e 20 5b 74 65 73 74 20 6d 6f 64 75 6c hon.-m.testtools.run.[test.modul
26760 65 20 70 61 74 68 5d 0a 0a 54 6f 78 2d 63 72 65 61 74 65 64 20 76 69 72 74 75 61 6c 20 65 6e 76 e.path]..Tox-created.virtual.env
26780 69 72 6f 6e 6d 65 6e 74 73 20 28 76 65 6e 76 27 73 29 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 61 ironments.(venv's).can.also.be.a
267a0 63 74 69 76 61 74 65 64 0a 61 66 74 65 72 20 61 20 74 6f 78 20 72 75 6e 20 61 6e 64 20 72 65 75 ctivated.after.a.tox.run.and.reu
267c0 73 65 64 20 66 6f 72 20 64 65 62 75 67 67 69 6e 67 3a 3a 0a 0a 20 20 20 20 24 20 74 6f 78 20 2d sed.for.debugging::......$.tox.-
267e0 65 20 76 65 6e 76 0a 20 20 20 20 24 20 2e 20 2e 74 6f 78 2f 76 65 6e 76 2f 62 69 6e 2f 61 63 74 e.venv.....$....tox/venv/bin/act
26800 69 76 61 74 65 0a 20 20 20 20 24 20 70 79 74 68 6f 6e 20 2d 6d 20 74 65 73 74 74 6f 6f 6c 73 2e ivate.....$.python.-m.testtools.
26820 72 75 6e 20 5b 74 65 73 74 20 6d 6f 64 75 6c 65 20 70 61 74 68 5d 0a 0a 54 6f 78 20 70 61 63 6b run.[test.module.path]..Tox.pack
26840 61 67 65 73 20 61 6e 64 20 69 6e 73 74 61 6c 6c 73 20 74 68 65 20 6e 65 75 74 72 6f 6e 20 73 6f ages.and.installs.the.neutron.so
26860 75 72 63 65 20 74 72 65 65 20 69 6e 20 61 20 67 69 76 65 6e 20 76 65 6e 76 0a 6f 6e 20 65 76 65 urce.tree.in.a.given.venv.on.eve
26880 72 79 20 69 6e 76 6f 63 61 74 69 6f 6e 2c 20 62 75 74 20 69 66 20 6d 6f 64 69 66 69 63 61 74 69 ry.invocation,.but.if.modificati
268a0 6f 6e 73 20 6e 65 65 64 20 74 6f 20 62 65 20 6d 61 64 65 20 62 65 74 77 65 65 6e 0a 69 6e 76 6f ons.need.to.be.made.between.invo
268c0 63 61 74 69 6f 6e 20 28 65 2e 67 2e 20 61 64 64 69 6e 67 20 6d 6f 72 65 20 70 64 62 20 73 74 61 cation.(e.g..adding.more.pdb.sta
268e0 74 65 6d 65 6e 74 73 29 2c 20 69 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 0a 74 68 61 74 tements),.it.is.recommended.that
26900 20 74 68 65 20 73 6f 75 72 63 65 20 74 72 65 65 20 62 65 20 69 6e 73 74 61 6c 6c 65 64 20 69 6e .the.source.tree.be.installed.in
26920 20 74 68 65 20 76 65 6e 76 20 69 6e 20 65 64 69 74 61 62 6c 65 20 6d 6f 64 65 3a 3a 0a 0a 20 20 .the.venv.in.editable.mode::....
26940 20 20 23 20 72 75 6e 20 74 68 69 73 20 6f 6e 6c 79 20 61 66 74 65 72 20 61 63 74 69 76 61 74 69 ..#.run.this.only.after.activati
26960 6e 67 20 74 68 65 20 76 65 6e 76 0a 20 20 20 20 24 20 70 69 70 20 69 6e 73 74 61 6c 6c 20 2d 2d ng.the.venv.....$.pip.install.--
26980 65 64 69 74 61 62 6c 65 20 2e 0a 0a 45 64 69 74 61 62 6c 65 20 6d 6f 64 65 20 65 6e 73 75 72 65 editable....Editable.mode.ensure
269a0 73 20 74 68 61 74 20 63 68 61 6e 67 65 73 20 6d 61 64 65 20 74 6f 20 74 68 65 20 73 6f 75 72 63 s.that.changes.made.to.the.sourc
269c0 65 20 74 72 65 65 20 61 72 65 0a 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 72 65 66 6c 65 63 74 e.tree.are.automatically.reflect
269e0 65 64 20 69 6e 20 74 68 65 20 76 65 6e 76 2c 20 61 6e 64 20 74 68 61 74 20 73 75 63 68 20 63 68 ed.in.the.venv,.and.that.such.ch
26a00 61 6e 67 65 73 20 61 72 65 20 6e 6f 74 0a 6f 76 65 72 77 72 69 74 74 65 6e 20 64 75 72 69 6e 67 anges.are.not.overwritten.during
26a20 20 74 68 65 20 6e 65 78 74 20 74 6f 78 20 72 75 6e 2e 0a 0a 52 65 66 65 72 65 6e 63 65 73 0a 3d .the.next.tox.run...References.=
26a40 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 2e 2e 20 5b 23 70 75 64 62 5d 20 50 55 44 42 20 64 65 62 75 67 =========.....[#pudb].PUDB.debug
26a60 67 65 72 3a 0a 20 20 20 68 74 74 70 73 3a 2f 2f 70 79 70 69 2e 70 79 74 68 6f 6e 2e 6f 72 67 2f ger:....https://pypi.python.org/
26a80 70 79 70 69 2f 70 75 64 62 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 pypi/pudb.......................
26aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26b00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26b20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26c00 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 2f 52 45 41 44 4d 45 2e 72 73 74 00 00 00 00 00 00 networking-onos/README.rst......
26c20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26c60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 31 37 35 30 00 30 30 30 31 37 35 30 00 30 30 30 30 ....0000644.0001750.0001750.0000
26c80 30 30 30 31 36 37 35 00 31 32 36 32 37 35 31 33 34 34 32 00 30 31 34 34 34 35 00 20 30 00 00 00 0001675.12627513442.014445..0...
26ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26d00 00 75 73 74 61 72 20 20 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...onos...................
26d20 00 00 00 00 00 00 00 00 00 6f 6e 6f 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........onos...................
26d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
26e00 57 6f 72 64 20 61 62 6f 75 74 20 4f 4e 4f 53 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a Word.about.ONOS.===============.
26e20 0a 4f 70 65 6e 20 4e 65 74 77 6f 72 6b 69 6e 67 20 4f 70 65 72 61 74 69 6e 67 20 53 79 73 74 65 .Open.Networking.Operating.Syste
26e40 6d 20 28 4f 4e 4f 53 29 20 69 73 20 61 20 6e 65 77 20 63 61 72 72 69 65 72 2d 67 72 61 64 65 20 m.(ONOS).is.a.new.carrier-grade.
26e60 53 44 4e 20 6e 65 74 77 6f 72 6b 0a 6f 70 65 72 61 74 69 6e 67 20 73 79 73 74 65 6d 20 64 65 73 SDN.network.operating.system.des
26e80 69 67 6e 65 64 20 66 6f 72 20 68 69 67 68 20 61 76 61 69 6c 61 62 69 6c 69 74 79 2c 20 70 65 72 igned.for.high.availability,.per
26ea0 66 6f 72 6d 61 6e 63 65 20 61 6e 64 20 73 63 61 6c 65 2d 6f 75 74 20 77 69 74 68 0a 61 20 6d 69 formance.and.scale-out.with.a.mi
26ec0 73 73 69 6f 6e 20 22 74 6f 20 70 72 6f 64 75 63 65 20 74 68 65 20 4f 70 65 6e 20 53 6f 75 72 63 ssion."to.produce.the.Open.Sourc
26ee0 65 20 4e 65 74 77 6f 72 6b 20 4f 70 65 72 61 74 69 6e 67 20 53 79 73 74 65 6d 20 74 68 61 74 20 e.Network.Operating.System.that.
26f00 77 69 6c 6c 20 65 6e 61 62 6c 65 0a 73 65 72 76 69 63 65 20 70 72 6f 76 69 64 65 72 73 20 74 6f will.enable.service.providers.to
26f20 20 62 75 69 6c 64 20 72 65 61 6c 20 53 6f 66 74 77 61 72 65 20 44 65 66 69 6e 65 64 20 4e 65 74 .build.real.Software.Defined.Net
26f40 77 6f 72 6b 22 2e 0a 0a 57 6f 72 64 20 61 62 6f 75 74 20 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e work"...Word.about.networking-on
26f60 6f 73 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 54 68 os.==========================.Th
26f80 65 20 22 6e 65 74 77 6f 72 6b 69 6e 67 2d 6f 6e 6f 73 22 20 72 65 70 6f 73 69 74 6f 72 79 20 63 e."networking-onos".repository.c
26fa0 6f 6e 74 61 69 6e 73 20 63 6f 64 65 20 77 68 69 63 68 20 6d 61 6b 65 73 20 74 68 65 20 69 6e 74 ontains.code.which.makes.the.int
26fc0 65 72 61 63 74 69 6f 6e 0a 62 65 74 77 65 65 6e 20 4f 4e 4f 53 20 61 6e 64 20 4f 70 65 6e 53 74 eraction.between.ONOS.and.OpenSt
26fe0 61 63 6b 20 4e 65 75 74 72 6f 6e 20 70 6f 73 73 69 62 6c 65 2e 20 46 6f 72 20 6d 6f 72 65 20 69 ack.Neutron.possible..For.more.i
27000 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 20 4f 4e 4f 53 0a 79 6f 75 20 63 61 6e 20 76 69 nformation.about.ONOS.you.can.vi
27020 73 69 74 20 20 22 68 74 74 70 3a 2f 2f 6f 6e 6f 73 70 72 6f 6a 65 63 74 2e 6f 72 67 2f 22 20 61 sit.."http://onosproject.org/".a
27040 6e 64 0a 22 68 74 74 70 73 3a 2f 2f 6c 61 75 6e 63 68 70 61 64 2e 6e 65 74 2f 6e 65 75 74 72 6f nd."https://launchpad.net/neutro
27060 6e 22 20 66 6f 72 20 4f 70 65 6e 53 74 61 63 6b 20 4e 65 75 74 72 6f 6e 2e 0a 0a 49 6d 70 6f 72 n".for.OpenStack.Neutron...Impor
27080 74 61 6e 74 20 50 6f 69 6e 74 65 72 73 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d tant.Pointers.==================
270a0 0a 2a 20 59 6f 75 20 63 61 6e 20 76 69 73 69 74 20 74 68 65 20 6c 61 75 6e 63 68 70 61 64 20 70 .*.You.can.visit.the.launchpad.p
270c0 61 67 65 20 22 68 74 74 70 73 3a 2f 2f 6c 61 75 6e 63 68 70 61 64 2e 6e 65 74 2f 6e 65 74 77 6f age."https://launchpad.net/netwo
270e0 72 6b 69 6e 67 2d 6f 6e 6f 73 22 20 74 6f 20 67 65 74 20 6c 61 74 65 73 74 20 70 72 6f 6a 65 63 rking-onos".to.get.latest.projec
27100 74 20 73 74 61 74 75 73 2e 0a 2a 20 46 6f 72 20 61 6e 79 20 69 73 73 75 65 73 20 6f 72 20 6e 65 t.status..*.For.any.issues.or.ne
27120 77 20 72 65 71 75 69 72 65 6d 65 6e 74 20 72 61 69 73 65 20 61 20 62 75 67 20 61 74 20 e2 80 9c w.requirement.raise.a.bug.at....
27140 68 74 74 70 73 3a 2f 2f 62 75 67 73 2e 6c 61 75 6e 63 68 70 61 64 2e 6e 65 74 2f 6e 65 74 77 6f https://bugs.launchpad.net/netwo
27160 72 6b 69 6e 67 2d 6f 6e 6f 73 e2 80 9d 2e 20 57 65 20 77 69 6c 6c 20 67 65 74 20 62 61 63 6b 2e rking-onos.....We.will.get.back.
27180 0a 2a 20 41 6e 79 20 63 6f 6e 74 72 69 62 75 74 69 6f 6e 20 69 73 20 61 70 70 72 65 63 69 61 74 .*.Any.contribution.is.appreciat
271a0 65 64 2e 20 4c 65 74 27 73 20 73 74 61 72 74 20 63 6f 6e 74 72 69 62 75 74 69 6e 67 2e 00 00 00 ed..Let's.start.contributing....
271c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
271e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
272a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
272c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
272e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
273a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
273c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
273e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
274a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
274c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
274e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
275a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
275c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
275e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
276a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
276c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
276e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
277a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
277c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
277e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
278a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
278c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
278e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
279a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
279c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
279e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27a00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27a20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27a60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27a80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27b00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27b20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27c00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27c20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27c60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27c80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27e00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27e20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27e60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27e80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27f00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27f20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................