)]}'
{
  "log": [
    {
      "commit": "857fb606e3173b528f518740e7f2ac073e5789a0",
      "tree": "2ab1f00068db2f6f9c120dc7489219a937d967ae",
      "parents": [
        "f1bc654b2035c0fcad0aa36df28458ffff3837f2"
      ],
      "author": {
        "name": "Shudong Zhou",
        "email": "shudongzhou@gmail.com",
        "time": "Wed Feb 06 00:11:38 2013 -0800"
      },
      "committer": {
        "name": "Shudong Zhou",
        "email": "shudongzhou@gmail.com",
        "time": "Wed Feb 06 00:11:38 2013 -0800"
      },
      "message": "Remove duplicate code in FuncUtils.py\n"
    },
    {
      "commit": "75ea24d26d0d4011671b52a50f414d23e55bd474",
      "tree": "e0659c6743b77596a7b7d92f986979d8e06bd973",
      "parents": [
        "3c26683d57deed514e64d945c881221486d6cde5"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Wed Jan 30 15:27:19 2013 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Wed Jan 30 15:27:19 2013 -0800"
      },
      "message": "nicira_dec_ttl: also test with a flow\n\nSuggested by Gregor. The flow_match_test function doesn\u0027t support checking for\ndrops so I\u0027ve kept the packet-out portion of the test too.\n"
    },
    {
      "commit": "dacbe738d5bb92d0e8e3d5733edc2c96cf7edd59",
      "tree": "cc3c62aa9a707e566f7a292c049ac47589a3fb67",
      "parents": [
        "9cc93345f9948ebb54e28e7333f406d82b1cf3b5"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Tue Jan 29 17:32:11 2013 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Tue Jan 29 17:32:11 2013 -0800"
      },
      "message": "add test for the nx_dec_ttl vendor action\n\nBased on a test by Gregor Maier.\n"
    },
    {
      "commit": "4f5080587ed3c31d8883abf1639cd41d3ce79644",
      "tree": "dbd1e212ec0c3abfcb4cd996dcfdc08ba5f45653",
      "parents": [
        "c9f059074bcf35f9fcf38c4cf1352a91ed35fff9"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Jan 28 10:49:46 2013 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Jan 28 10:49:46 2013 -0800"
      },
      "message": "caps: add time import\n\nThis was previously visible through the testutils import.\n"
    },
    {
      "commit": "a9e12ab3edc95d7e872a43ce28fe30cb4b2a6626",
      "tree": "f75c7e63d859f3c7af6d39866512da24680d709b",
      "parents": [
        "3c7cf7f01aea0a4b07d2ab059fc10c34fb159062"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Wed Jan 16 07:35:25 2013 -0800"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Wed Jan 16 07:35:25 2013 -0800"
      },
      "message": "Keep polling in Packet{In,Out}Load until the switch quiesces,\notherwise a continuing flood of packet-in messages or data interferes\nwith subsequent tests\n"
    },
    {
      "commit": "3c7cf7f01aea0a4b07d2ab059fc10c34fb159062",
      "tree": "282d733b5e98dac13c1599e7a47de0825206f4af",
      "parents": [
        "7744e11daf890cbb0b815e51ce4781de78624c51"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Jan 11 18:04:56 2013 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Jan 11 18:04:56 2013 -0800"
      },
      "message": "fix test imports\n\nThese modules were previously visible through the testutils import.\n"
    },
    {
      "commit": "5a9a192ab77c53024bfd2f9864488906c093a7d3",
      "tree": "0a47fbdd7bc1caf4152b8bf6b6d7ad7e1fa3ee5c",
      "parents": [
        "5d63b9c8bded2cfeb4b07c46e648c671cb683b1c"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Jan 11 14:29:30 2013 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Jan 11 14:29:30 2013 -0800"
      },
      "message": "add version decorator\n\nAlso adds the TableModConfig test to the main basic test module, using the new\ndecorator.\n"
    },
    {
      "commit": "aecd7163f3c230f788a8df53d91d997450566ec4",
      "tree": "c8d4cbd6b9832b8fb951735f9806cb61a4492f79",
      "parents": [
        "63393495124c77d79b2319d96550a8bc3ab6e35b"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Jan 11 11:33:00 2013 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Jan 11 11:33:00 2013 -0800"
      },
      "message": "of10: simplify importing\n"
    },
    {
      "commit": "c2f18764091fcdd2f4b80c9fe031d0ee40931592",
      "tree": "ad9e078a06ee74564be19bc808bd43b9a6bfeae0",
      "parents": [
        "8fc315b504be28bed34ca176b2b17b9366dccdf0"
      ],
      "author": {
        "name": "Shudong Zhou",
        "email": "shudongzhou@gmail.com",
        "time": "Fri Jan 11 00:12:44 2013 -0800"
      },
      "committer": {
        "name": "Shudong Zhou",
        "email": "shudongzhou@gmail.com",
        "time": "Fri Jan 11 00:12:44 2013 -0800"
      },
      "message": "Add test cases for udp src_port/dst_port and ICMP type/code match\n"
    },
    {
      "commit": "8fc315b504be28bed34ca176b2b17b9366dccdf0",
      "tree": "e66693cbfe3616f8d9e0a1dee386596ca40c25a1",
      "parents": [
        "626ce1d19e6bc0a06e083243df230e9a303b99a2",
        "277875ae16740eaff98024d2030d0b50f72c31d0"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "lanerl@gmail.com",
        "time": "Thu Jan 10 11:02:29 2013 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "lanerl@gmail.com",
        "time": "Thu Jan 10 11:02:29 2013 -0800"
      },
      "message": "Merge pull request #32 from eswierk/master\n\nAdd test for BSN shell command extension, etc."
    },
    {
      "commit": "626ce1d19e6bc0a06e083243df230e9a303b99a2",
      "tree": "2c299e0c74c242fccd0bb542b8c9b61c42d2d9ce",
      "parents": [
        "ed1fa2d131e46967c2be6a811cefd00f69775e5a"
      ],
      "author": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Wed Jan 09 11:58:50 2013 -0800"
      },
      "committer": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Wed Jan 09 11:58:50 2013 -0800"
      },
      "message": "For DeletedFlowStats, add settling time and error messages.\n"
    },
    {
      "commit": "277875ae16740eaff98024d2030d0b50f72c31d0",
      "tree": "ec328ed94605950435bfa8aef4df8b191b2270ae",
      "parents": [
        "a05b1fa02eb12d1c0aed06e76d4384ff3c9caf25"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Tue Jan 08 15:13:46 2013 -0800"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Tue Jan 08 15:13:46 2013 -0800"
      },
      "message": "Add test for BSN shell command extension\n"
    },
    {
      "commit": "ed1fa2d131e46967c2be6a811cefd00f69775e5a",
      "tree": "818a44fc1370b58ac52e9469fafd59500044e95f",
      "parents": [
        "93bed98736e86cc11e2769bc6dd345d8ae2872c7"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Tue Jan 08 13:23:37 2013 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Tue Jan 08 13:23:37 2013 -0800"
      },
      "message": "parse: remove uses of from module import *\n\nSince there is now both an action class named \"vendor\" and a message class\nnamed \"vendor\" they clash when imported into the same namespace.\n"
    },
    {
      "commit": "cd97d3d7a4bef1346f8a57d1216b075e97ce019f",
      "tree": "dc776d3bb42cf071e9f8b7532d8540b29255960d",
      "parents": [
        "b2b401ef00e2dc2315e16f1299d2855103f581ac"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Jan 07 18:50:06 2013 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Tue Jan 08 10:09:49 2013 -0800"
      },
      "message": "minimize use of \"from module import *\"\n\nThis statement was causing strange bugs because of namespace pollution. The\norder of imports mattered because later \"from module import *\" statements would\noverwrite modules imported earlier. Transitive imports also made it difficult\nto figure out where an identifier was being imported.\n\nThis statement is still allowed in test code since nothing else should be\nimporting it.\n"
    },
    {
      "commit": "cfdcbd34e4428108dd1e9cd04306fc2416ee8361",
      "tree": "97c54725879cdb7c2d64c9b6f98f0d946341c3d3",
      "parents": [
        "8d84ce08af73ae7f514bfdeccc04f23f7d3ea672"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Wed Jan 02 18:44:52 2013 -0800"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Mon Jan 07 15:31:58 2013 -0800"
      },
      "message": "Store the controllers list in an instance variable\nsince class variables tend to stick around and mess up later tests\n"
    },
    {
      "commit": "6242d9f6474fa78b2d1c5db116831dc15ce00b6e",
      "tree": "e7ed7d1549020dea63fda35c63b832bb39b4c554",
      "parents": [
        "ea5060dff597e6e722ce49ec6f0116b6b7d5776d"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Sun Jan 06 17:35:39 2013 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Sun Jan 06 17:35:39 2013 -0800"
      },
      "message": "move and check in OpenFlow protocol modules\n\nMove all the protocol code out of the oftest package and into a of10 package to\nprepare for supporting more OpenFlow versions.\n\nThe generated code is now checked-in to make it simpler to use OFTest.\n\nBackwards compatibility with out of tree tests is maintained by aliasing the\nold module names. The basic test module has been changed to use the new API.\n"
    },
    {
      "commit": "1568b65686666e28e4e216856096e3b69b901d9f",
      "tree": "b482e1fb341d34ee69c21d11b990dd6aad15a5f2",
      "parents": [
        "1a08d236008a4a24777bfba93a789122745933d9"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Jan 04 16:53:13 2013 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Jan 04 16:53:13 2013 -0800"
      },
      "message": "basic: reenable tests and move out PacketInDefaultDrop\n"
    },
    {
      "commit": "adf64b10a5f5f74c159c99c3d4eac1c5c9d89a37",
      "tree": "2605dc0c91ad8336575880ccda1f6fbee7c60c5a",
      "parents": [
        "9527101cbf353f23f6fc616077ca1fae4746992d",
        "37f4211a4e12181744f0236f65e9050967eee782"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Jan 04 15:32:01 2013 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Jan 04 15:32:01 2013 -0800"
      },
      "message": "Merge branch \u0027annotations\u0027\n\nConflicts:\n\toft\n"
    },
    {
      "commit": "9527101cbf353f23f6fc616077ca1fae4746992d",
      "tree": "24ae78e84bb1cce3bed71de9e548f2bcda100123",
      "parents": [
        "0f0adc9a58f39ad0e6c0101755af69b453ee2d52"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Jan 04 15:24:51 2013 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Jan 04 15:24:51 2013 -0800"
      },
      "message": "action: remove redundant action_ prefix from classes\n\nThe original names are kept as aliases. The basic module has been changed to\nuse the new API.\n"
    },
    {
      "commit": "0f0adc9a58f39ad0e6c0101755af69b453ee2d52",
      "tree": "6783159dfef8de55f848c1deda4a448133d44b68",
      "parents": [
        "72a0cfed2fe38ed1c1e20805598fb893673b8b5b"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Jan 04 15:13:02 2013 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Jan 04 15:13:02 2013 -0800"
      },
      "message": "message: convert lists passed as keyword arguments to action_lists\n\nThe basic module has been changed to use the new API.\n"
    },
    {
      "commit": "c52a1c46dac37c3d1d4ad6672e33abe635982bd1",
      "tree": "b469b451f28b4d45760285e78591d5948fa0733d",
      "parents": [
        "c3c2ae1775b22de5a7fa4b3bd3934e5359863a86"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Jan 04 10:29:00 2013 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Jan 04 10:29:00 2013 -0800"
      },
      "message": "action: support assigning fields with keyword arguments to the constructor\n\nThe basic module has been changed to use the new API.\n"
    },
    {
      "commit": "c3c2ae1775b22de5a7fa4b3bd3934e5359863a86",
      "tree": "520162a809d6008a25f1b32ef5e5f4622b193d4d",
      "parents": [
        "c9e41840a710f26eb3a61355c2cbc0a86adbfc91"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Jan 04 10:13:17 2013 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Jan 04 10:13:17 2013 -0800"
      },
      "message": "message: support setting fields with keyword arguments to the constructor\n\nThis enables creation of messages in a tree-like fashion.\n\nThe basic test module has been converted to the new API.\n"
    },
    {
      "commit": "c9e41840a710f26eb3a61355c2cbc0a86adbfc91",
      "tree": "b415eecbf81b021a2855316daac53ee3143bfb37",
      "parents": [
        "3e777794aab1b27ff2c25900232f6bce626cc804"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jan 03 21:31:42 2013 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jan 03 21:31:42 2013 -0800"
      },
      "message": "FuncUtils.verify_flowstats: similar fixes as with verify_tablestats\n"
    },
    {
      "commit": "3e777794aab1b27ff2c25900232f6bce626cc804",
      "tree": "fc9794e8b46cdaafd6d7f57398d481f6ab5b3e4e",
      "parents": [
        "175f9563bca41b3ac434dc0ef291be489ba1a260"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jan 03 21:30:30 2013 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jan 03 21:30:30 2013 -0800"
      },
      "message": "FuncUtils.verify_tablestats: assert on total counters\n"
    },
    {
      "commit": "175f9563bca41b3ac434dc0ef291be489ba1a260",
      "tree": "371bc385c3e8b88192e481972bc3a2be276017ae",
      "parents": [
        "afcd0dd9951c74ca1685a2064df259af9274b0c8"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jan 03 20:58:40 2013 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jan 03 21:27:31 2013 -0800"
      },
      "message": "FuncUtils.verify_tablestats: break out of loop if counter exceeded expected value\n"
    },
    {
      "commit": "afcd0dd9951c74ca1685a2064df259af9274b0c8",
      "tree": "2c87ca2638989fe0edbe16c79bd84a8de6aeb769",
      "parents": [
        "308d976197427f3ccc2e0b3c2500d4f92b1010fc"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jan 03 20:54:56 2013 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jan 03 20:54:56 2013 -0800"
      },
      "message": "FuncUtils.verify_tablestats: log table stats after processing all tables\n"
    },
    {
      "commit": "3a261d5f415f91a06afe06437b66ed84ff266571",
      "tree": "adedcf0c7e809f7d3f69e56ef966e4704e1b65bd",
      "parents": [
        "32bf948a5f640a07c89926fb10ebe4b0d9cb01da"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jan 03 17:45:08 2013 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jan 03 18:03:45 2013 -0800"
      },
      "message": "raise an AssertionError if do_barrier fails\n\nThis removes a lot of boilerplate code.\n"
    },
    {
      "commit": "32bf948a5f640a07c89926fb10ebe4b0d9cb01da",
      "tree": "2d0253fbc801f82658c8a34cbb2961fecb314947",
      "parents": [
        "5c3151c308aec2178ec516ae074f07a4fb18a619"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jan 03 17:26:30 2013 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jan 03 18:03:45 2013 -0800"
      },
      "message": "remove assertions on the return value of delete_all_flows\n\nThis function can no longer fail.\n"
    },
    {
      "commit": "5c3151c308aec2178ec516ae074f07a4fb18a619",
      "tree": "d5236bb64ae0a77f1954779467683a0ecbd5198c",
      "parents": [
        "e30455b947669e3dd9adc9f2e591a0c5f3b97d7f"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jan 03 17:15:41 2013 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jan 03 18:03:45 2013 -0800"
      },
      "message": "throw AssertionError if controller.message_send fails\n\nUnlike other types of exception an AssertionError will cause the test to \"fail\"\ninstead of \"error\". Using an exception instead of checking return values\nremoves a lot of boilerplate code that wasn\u0027t always present (or correct). It\nmay also help disabuse test writers of the dangerous notion that succeeding in\nwriting a message to the TCP socket means anything.\n"
    },
    {
      "commit": "e30455b947669e3dd9adc9f2e591a0c5f3b97d7f",
      "tree": "e1b5155c05c4e978c78b8b51297e00ba8429b478",
      "parents": [
        "80efd65292c3d4f4fb81fb0c4c0bc5b8724b86e7"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jan 03 16:24:44 2013 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jan 03 18:03:45 2013 -0800"
      },
      "message": "action_list: throw exception if value is not an action\n\nThis is a programmer error, not a switch issue.\n"
    },
    {
      "commit": "97e9965c918bcf05f563d9977b6cf9f28e6044d3",
      "tree": "b8d27b2b87f940a9f1b9997607222d826d8a66e8",
      "parents": [
        "c76b09a91b9085fc905b44d4b72a119a06febb7f"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Wed Jan 02 17:23:20 2013 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Wed Jan 02 17:23:20 2013 -0800"
      },
      "message": "add group decorator and smoke test group\n\nThe smoke group is intended to be very fast while covering most important\nfeatures.\n"
    },
    {
      "commit": "0a4f6377b4bbd222e442f17a8429064bccecea01",
      "tree": "9cb96f0c71ef4806f7ffb4e119486257840bf35e",
      "parents": [
        "0f5b9c7830726eab86adb4f977dcf3610e0a44c3"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Wed Jan 02 14:40:22 2013 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Wed Jan 02 14:40:22 2013 -0800"
      },
      "message": "use class decorators to mark tests that shouldn\u0027t be run by default\n"
    },
    {
      "commit": "ed130657116d17d08623f7cabaac2e2ca1146554",
      "tree": "516acc2b2903fe939f7c1e0f901ee15143943241",
      "parents": [
        "b8c845ae62169dfe9ecf792c7bc8f27465cb3769"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Dec 31 17:35:33 2012 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Dec 31 17:35:33 2012 -0800"
      },
      "message": "flow_matches.ExactMatchPrio: look for packet on exact match flow output port, not wildcard flow output port\n"
    },
    {
      "commit": "b8c845ae62169dfe9ecf792c7bc8f27465cb3769",
      "tree": "5bdf38198e54f4a21cada8eb436934dbee6d8f54",
      "parents": [
        "f18980d722058180d7a38adb7cd2579448c6fcfd"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Dec 31 17:23:51 2012 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Dec 31 17:23:51 2012 -0800"
      },
      "message": "pktact.DirectPacketControllerQueue: skip test if the switch returns an error for the queue stats request on the controller port\n"
    },
    {
      "commit": "30ca70c643eefa1f287c96f7bca7b33285898ca3",
      "tree": "957d0ccc6476c91d91db441d9ee7f255d5967c98",
      "parents": [
        "0a78fbd90d6d159b37c5ec5a74f8f25c1b12957f"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Dec 31 16:53:55 2012 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Dec 31 16:53:55 2012 -0800"
      },
      "message": "load.FlowModLoad: cap the number of flow-mods for switches that report huge flowtables\n"
    },
    {
      "commit": "0a78fbd90d6d159b37c5ec5a74f8f25c1b12957f",
      "tree": "77f0219b74ba5805680b130ab711d15917a398c5",
      "parents": [
        "376bb40e04193564a7e4e326be16ab6c09051f2f"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Dec 31 16:25:04 2012 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Dec 31 16:25:04 2012 -0800"
      },
      "message": "pktact: remove exact match flows from wildcard priority tests\n\nThe OF 1.0 spec states that \"An entry that specifies an exact match (i.e., it\nhas no wildcards) is always the highest priority.\" The WildcardPriority tests\nwere incorrect because they expected exact-match flows to be overridden by\nwildcard flows with higher priority.\n\nRather than rework the tests to treat exact-match flows as having the highest\npriority I\u0027ve chosen to replace the exact-match flows with wildcard flows. The\nreason is that later versions of OpenFlow do not specify this behavior. Once\nthe test-groups functionality has been added to OFTest we can add a 1.0-only\ntest that checks the exact-match priority.\n\nReported-by: Ben Pfaff \u003cblp@nicira.com\u003e\n"
    },
    {
      "commit": "d9ef7c3357e6d746053d19f6d381a7a9933f552c",
      "tree": "3a311134041694176502733a0201a3b562766aa8",
      "parents": [
        "82c35e882bc45d12ac2dbc314dce3966fb23014a"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Dec 31 11:00:30 2012 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Dec 31 11:00:30 2012 -0800"
      },
      "message": "load.FlowModLoad: shuffle flow-mods before sending them to the switch\n\nThis should cover more code paths than the previous pattern.\n"
    },
    {
      "commit": "82c35e882bc45d12ac2dbc314dce3966fb23014a",
      "tree": "9a7872039fe4c3f1080d19eff5c5d7377a7fc136",
      "parents": [
        "0b04b6c987802d7ec606306f033b4c1a4b761938"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Dec 31 10:59:36 2012 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Dec 31 10:59:36 2012 -0800"
      },
      "message": "speed up load.FlowModLoad\n\nThis test was responsible for about half the runtime of a full OFTest run.\nReduce the number of iterations to shorten it.\n"
    },
    {
      "commit": "0b04b6c987802d7ec606306f033b4c1a4b761938",
      "tree": "ec7eb570a36b86605fd8ea3b9c1185db2092079f",
      "parents": [
        "90b3d7317874a2222b5e80686065c9567e3f8e79"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Dec 31 10:12:23 2012 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Dec 31 10:12:23 2012 -0800"
      },
      "message": "speed up counters.DurationPerFlow\n"
    },
    {
      "commit": "90b3d7317874a2222b5e80686065c9567e3f8e79",
      "tree": "1fc017c603423ab434d7cdc07db5c978410c9395",
      "parents": [
        "2c7812ce1e1d869eb3dfa0e59bf96b386d95c0f1"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Dec 31 10:03:50 2012 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Dec 31 10:03:50 2012 -0800"
      },
      "message": "speed up FuncUtils.verify_*stats\n\nMade the sleep shorter and moved it after the check for the loop condition.\n"
    },
    {
      "commit": "a718c669273689d1d44ca42dcbb4464cfa2c45e8",
      "tree": "00ba05833d8248db3b86dcce7a43a3b21240e0f9",
      "parents": [
        "5d0e13ca68329148b693536bbadd87b8261f391a"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Dec 24 17:08:47 2012 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Dec 24 17:08:47 2012 -0800"
      },
      "message": "Revert \"pktact: disable no-op test DirectBadPacketBase\"\n\nThis reverts commit 5d0e13ca68329148b693536bbadd87b8261f391a.\n\nThe priority was inherited by the subclasses, which wasn\u0027t the intention.\n"
    },
    {
      "commit": "5d0e13ca68329148b693536bbadd87b8261f391a",
      "tree": "5fb01fea16ff6ffe67f36ae55205657ffa5233c8",
      "parents": [
        "d7d3292a587e7450855adbd714f98bf8f5e02d96"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Dec 24 15:05:07 2012 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Dec 24 15:05:07 2012 -0800"
      },
      "message": "pktact: disable no-op test DirectBadPacketBase\n"
    },
    {
      "commit": "74be472440365351820efd3786f92f207f74e949",
      "tree": "487a00a10f3ca22b488e380f4d492952f258032e",
      "parents": [
        "9c93e670e07836d4e0e38eb4f47eafa6c55ec63e"
      ],
      "author": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Fri Dec 21 13:07:03 2012 -0800"
      },
      "committer": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Fri Dec 21 13:07:03 2012 -0800"
      },
      "message": "controller.py: clear pending packets on disconnect.\n\ncxn.py: store switch addr to detect when switch has disconnected and\nreconnected.\n"
    },
    {
      "commit": "9c93e670e07836d4e0e38eb4f47eafa6c55ec63e",
      "tree": "de14be171e3715f31ae89f9b2e4c8f9e476c1cce",
      "parents": [
        "43ee54c1bccc3ec44a520d25995074ba08ccee96"
      ],
      "author": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Tue Dec 18 12:00:14 2012 -0800"
      },
      "committer": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Tue Dec 18 12:00:14 2012 -0800"
      },
      "message": "Remove serial failover tests, which only maintain one controller at any point\nin time.\nInstead, cxn.py-based failover tests can maintain multiple controllers at the\nsame time.\n"
    },
    {
      "commit": "b603b197837d1797f6668180d5fd5d4a3e2d15f5",
      "tree": "4141f83a412b31d89a80c8a6940df7ffbd876870",
      "parents": [
        "5fb8edff89864728e0612aeed60604502934ddd8"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Wed Dec 12 15:38:49 2012 -0800"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Wed Dec 12 15:39:23 2012 -0800"
      },
      "message": "Test only supported match fields in pktact.MatchEach\n"
    },
    {
      "commit": "7040a8d36485d867da83be28a1f0b7650b826fec",
      "tree": "69bcde6de4f56a1d7661bbbf3263069440b87a51",
      "parents": [
        "018892d0517ee623240e5fbbcc6429f7d304419b"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Tue Dec 11 16:30:13 2012 -0800"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Tue Dec 11 16:30:13 2012 -0800"
      },
      "message": "Use VLAN-tagged packet to avoid ill-defined semantics of VLAN ID 0\n"
    },
    {
      "commit": "e6fca642a6e7e066ec2edf7e33969148d2e9a0f1",
      "tree": "a925905bd29c3780d12f0db3ce69207984546df2",
      "parents": [
        "47f608d55640a2bd2d633ec0111f5be37fb752b8"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Fri Nov 30 12:00:54 2012 -0800"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Tue Dec 11 16:29:05 2012 -0800"
      },
      "message": "Add a test that fills up the flow table repeatedly\n"
    },
    {
      "commit": "47f608d55640a2bd2d633ec0111f5be37fb752b8",
      "tree": "01758591fc9ea49bc978cd7d5e317cbd76c2b464",
      "parents": [
        "47fe471addfd055828b73341f87c3cc89e81ae9c"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Mon Nov 12 15:36:32 2012 -0800"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Tue Dec 11 16:29:05 2012 -0800"
      },
      "message": "Add test for BSN mirror action and config extensions\n"
    },
    {
      "commit": "47fe471addfd055828b73341f87c3cc89e81ae9c",
      "tree": "5fa1de974cc1eec1c3534570ee1da92ab597147e",
      "parents": [
        "ba9eee87b344e49741b9faa7c6ffa4ff1ba0cecb",
        "75bcf4d2e0d7446a2a337e445ba0708bef1bafd3"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "lanerl@gmail.com",
        "time": "Sun Dec 09 23:24:38 2012 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "lanerl@gmail.com",
        "time": "Sun Dec 09 23:24:38 2012 -0800"
      },
      "message": "Merge pull request #27 from InCNTRE/master\n\nmessage_types "
    },
    {
      "commit": "75bcf4d2e0d7446a2a337e445ba0708bef1bafd3",
      "tree": "bfdb6b02ca1cb644c7956b425cba76181fd31de4",
      "parents": [
        "c277fddefd1667008dcc99889b017985ba9f0566"
      ],
      "author": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Sun Dec 09 22:17:36 2012 -0500"
      },
      "committer": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Sun Dec 09 22:17:36 2012 -0500"
      },
      "message": "edited\n"
    },
    {
      "commit": "ba9eee87b344e49741b9faa7c6ffa4ff1ba0cecb",
      "tree": "9c193cb3003521fd08e8ed9ca18de7e8642bb115",
      "parents": [
        "4ecc1f4c44e13367ce755d4857581f8124d4f90a"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Dec 07 22:44:24 2012 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Dec 07 22:44:24 2012 -0800"
      },
      "message": "dl_vlan_pcp is only a 3 bit field, 10 does not fit\n"
    },
    {
      "commit": "c277fddefd1667008dcc99889b017985ba9f0566",
      "tree": "0ba05ed16ebfeff2449976ca7b99bcd38a572963",
      "parents": [
        "5fb6d0507eefbf9064e29616c09e1e173857af9e"
      ],
      "author": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Fri Dec 07 14:35:20 2012 -0500"
      },
      "committer": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Fri Dec 07 14:35:20 2012 -0500"
      },
      "message": "edited\n"
    },
    {
      "commit": "4ecc1f4c44e13367ce755d4857581f8124d4f90a",
      "tree": "ab38725e19f46d28632a0a8141dc96426e03e98b",
      "parents": [
        "4b9e38cbcf42e323fd5c57f5ee8336c7c393b575"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Dec 06 16:35:24 2012 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Dec 06 17:02:48 2012 -0800"
      },
      "message": "pktact.FloodMinusPort: check behavior after clearing NO_FLOOD bit\n"
    },
    {
      "commit": "4b9e38cbcf42e323fd5c57f5ee8336c7c393b575",
      "tree": "c262c4bda9903663a056a310022bd7c471835f5e",
      "parents": [
        "9176567db0278481ff43bf0eeee7a8f8b99f6453"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Dec 06 16:33:20 2012 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Dec 06 17:02:48 2012 -0800"
      },
      "message": "pktact.FloodMinusPort: clear NO_FLOOD bits before testing\n\nPrevious interrupted runs may have left these bits set.\n"
    },
    {
      "commit": "b5c7379adf9f909d2f50c2481f523e5d39cf3617",
      "tree": "36876beac3af5e5c3461619fa65c395ceb4d605b",
      "parents": [
        "89725bb41c7da04c685a8c31fee0a0bdb1b5bd00"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Dec 03 17:12:32 2012 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Dec 03 17:55:45 2012 -0800"
      },
      "message": "flow_matches.IpTos: fix DSCP values\n\nThe lower 2 bits of the TOS byte are for ECN.\n"
    },
    {
      "commit": "5fb6d0507eefbf9064e29616c09e1e173857af9e",
      "tree": "891f20c55e7678edab0c42d26976959541332188",
      "parents": [
        "1febc72932d5428c093029bd38a55d27e9b293eb"
      ],
      "author": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Mon Dec 03 00:52:20 2012 -0500"
      },
      "committer": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Mon Dec 03 00:52:20 2012 -0500"
      },
      "message": "made PortStatusMessage priority -1\n"
    },
    {
      "commit": "1febc72932d5428c093029bd38a55d27e9b293eb",
      "tree": "82cb72d6d969119f16865a771526bb2fe777b3cb",
      "parents": [
        "5e0a6e374200833af692315b6117b21b2b560068"
      ],
      "author": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Sun Dec 02 18:37:36 2012 -0500"
      },
      "committer": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Sun Dec 02 18:37:36 2012 -0500"
      },
      "message": "edited\n"
    },
    {
      "commit": "8a0406e29aea1747c65bb67c62235f3149628c21",
      "tree": "89eef015f3c6396f0abf7617a5e08dfb1ef197e1",
      "parents": [
        "15896766f6b3ddcab4127932b09a51ff54ae5b23"
      ],
      "author": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Sun Dec 02 18:32:05 2012 -0500"
      },
      "committer": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Sun Dec 02 18:32:05 2012 -0500"
      },
      "message": "removed debugging print statements\n"
    },
    {
      "commit": "15896766f6b3ddcab4127932b09a51ff54ae5b23",
      "tree": "c7e5c8325f7e7accc9160888d3b92330fc24133e",
      "parents": [
        "cd8e1cf846ad071c530a677406d8c02c0df429bf"
      ],
      "author": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Sun Dec 02 18:30:41 2012 -0500"
      },
      "committer": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Sun Dec 02 18:30:41 2012 -0500"
      },
      "message": "made the specfied changes\n"
    },
    {
      "commit": "055102a3cf0cc183ce418c7b17999775837f7384",
      "tree": "695dc1415fc3fefe3315f6044e1bc5436d9d6bae",
      "parents": [
        "efdff316317028e3426ca2d4f57439017e6e2d22"
      ],
      "author": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Wed Nov 28 11:43:45 2012 -0500"
      },
      "committer": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Wed Nov 28 11:43:45 2012 -0500"
      },
      "message": "added message_types test-cases\n"
    },
    {
      "commit": "95e6a45ae51b4f5f768260d78d498c4dd5430157",
      "tree": "ca4c7789f3984e44a97e70b741785477c30fcf96",
      "parents": [
        "b10ebd61faa5db8a9d5bb7013e46e3939501f700",
        "efdff316317028e3426ca2d4f57439017e6e2d22"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "lanerl@gmail.com",
        "time": "Tue Nov 27 13:45:55 2012 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "lanerl@gmail.com",
        "time": "Tue Nov 27 13:45:55 2012 -0800"
      },
      "message": "Merge pull request #26 from InCNTRE/master\n\nflow_matches"
    },
    {
      "commit": "b839208b993df814717899c5a6366fdd9c764df7",
      "tree": "5e3624465780238a51113c0788d6d4f94e547b26",
      "parents": [
        "d10e8e0e1946e7b88b29dee3791c0c4474c7ab75"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Wed Nov 21 15:52:54 2012 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Wed Nov 21 15:53:13 2012 -0800"
      },
      "message": "pktact.WildcardPriority: add a lower priority flow at the end to ensure it doesnt override the higher priority flows\n"
    },
    {
      "commit": "d10e8e0e1946e7b88b29dee3791c0c4474c7ab75",
      "tree": "2826a3012c75e45070b884d685754442610fd884",
      "parents": [
        "b7f12466ae1b55525d260591cba1e762e63de433"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Wed Nov 21 15:48:36 2012 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Wed Nov 21 15:53:13 2012 -0800"
      },
      "message": "add flow_stats.DeletedFlowStats\n"
    },
    {
      "commit": "efdff316317028e3426ca2d4f57439017e6e2d22",
      "tree": "4764162fd001eb7b96e29dddf3e07a04ea1aa183",
      "parents": [
        "6fbff2592b243d2150837e0cc66585130e022371"
      ],
      "author": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Wed Nov 21 13:35:34 2012 -0500"
      },
      "committer": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Wed Nov 21 13:35:34 2012 -0500"
      },
      "message": "edited\n"
    },
    {
      "commit": "b7f12466ae1b55525d260591cba1e762e63de433",
      "tree": "feb53e4b819e7297510665cf936c33de2d839349",
      "parents": [
        "d71c4a7fd4a9eeaa8fcd7611ef2988db797f0c48"
      ],
      "author": {
        "name": "Shudong Zhou",
        "email": "shudongzhou@gmail.com",
        "time": "Tue Nov 20 13:01:12 2012 -0800"
      },
      "committer": {
        "name": "Shudong Zhou",
        "email": "shudongzhou@gmail.com",
        "time": "Tue Nov 20 13:01:12 2012 -0800"
      },
      "message": "Allow longer barrier timeout in caps test\n"
    },
    {
      "commit": "d71c4a7fd4a9eeaa8fcd7611ef2988db797f0c48",
      "tree": "1714683beebf9c185bca053b059cd96c7406f21f",
      "parents": [
        "69ca4d6f9345e031b701d0ea62e5bcfed66139d6"
      ],
      "author": {
        "name": "Shudong Zhou",
        "email": "shudongzhou@gmail.com",
        "time": "Sun Nov 18 14:37:43 2012 -0800"
      },
      "committer": {
        "name": "Shudong Zhou",
        "email": "shudongzhou@gmail.com",
        "time": "Sun Nov 18 14:37:43 2012 -0800"
      },
      "message": "Add time delay at the end of caps test for clearing flows\n"
    },
    {
      "commit": "afcf467ee2c362c8e7445d84a61467e191bf5ceb",
      "tree": "779828ac9ff6f6aa9ee1e8aacc291631aa0b7110",
      "parents": [
        "22e74c141fd7892bb31f9e99cd556df5b94e025a"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Wed Nov 14 13:19:27 2012 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Wed Nov 14 13:19:27 2012 -0800"
      },
      "message": "set in_port on packet_out messages\n"
    },
    {
      "commit": "6fbff2592b243d2150837e0cc66585130e022371",
      "tree": "8f64a210391af399edcc2134f5b99dab0f8fb6b8",
      "parents": [
        "8793204773876e7eef455ab94ce2aea2cd90c70b"
      ],
      "author": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Tue Nov 13 16:56:48 2012 -0500"
      },
      "committer": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Tue Nov 13 16:56:48 2012 -0500"
      },
      "message": "edited\n"
    },
    {
      "commit": "22e74c141fd7892bb31f9e99cd556df5b94e025a",
      "tree": "9a7f948fb10a603792febfc7a4f510eaede09ed0",
      "parents": [
        "4dac839098b87d8e5af0182e44b10abd7af90768"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Nov 12 15:06:06 2012 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Nov 12 15:06:19 2012 -0800"
      },
      "message": "add pktact.ModifyAll\n\nThis test installs a flow that modifies all supported fields in the packet, in\nrandom order.\n"
    },
    {
      "commit": "4dac839098b87d8e5af0182e44b10abd7af90768",
      "tree": "ad12a805e53d0a7408527c7f41215112b22cd6e0",
      "parents": [
        "7717399c71be9ef6d9f396c17e8191811baa1a28",
        "8793204773876e7eef455ab94ce2aea2cd90c70b"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "lanerl@gmail.com",
        "time": "Mon Nov 05 17:42:32 2012 -0800"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "lanerl@gmail.com",
        "time": "Mon Nov 05 17:42:32 2012 -0800"
      },
      "message": "Merge pull request #25 from InCNTRE/master\n\nCounters.py \u0026 detailed testing methodology"
    },
    {
      "commit": "8793204773876e7eef455ab94ce2aea2cd90c70b",
      "tree": "d4e1c8bbdf63a52f63b01a090737ba75c6bca2ff",
      "parents": [
        "a6dfbfcb336703bbff7f57cd9e6c0ce0887ef0b1"
      ],
      "author": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Mon Nov 05 18:48:39 2012 -0500"
      },
      "committer": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Mon Nov 05 18:48:39 2012 -0500"
      },
      "message": "fixed typo\n"
    },
    {
      "commit": "a6dfbfcb336703bbff7f57cd9e6c0ce0887ef0b1",
      "tree": "1d0e1e282fd01f7d4fb8b0312451b0047c40fdb9",
      "parents": [
        "ed20996dd8334d7fca89ce81b8427a14d19386af"
      ],
      "author": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Mon Nov 05 17:45:22 2012 -0500"
      },
      "committer": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Mon Nov 05 17:45:22 2012 -0500"
      },
      "message": "fixed sleep position and verify_queuestats\n"
    },
    {
      "commit": "ed20996dd8334d7fca89ce81b8427a14d19386af",
      "tree": "b96190205d8d83d9c157568bd4a0e012b838b090",
      "parents": [
        "e41ea7cea4e3cacd7ebe7ba61144d0560aaeead6"
      ],
      "author": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Sun Nov 04 02:16:48 2012 -0500"
      },
      "committer": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Sun Nov 04 02:16:48 2012 -0500"
      },
      "message": "edited\n"
    },
    {
      "commit": "e807dfb9e2c12f941d98aeabd55596d9cf013c27",
      "tree": "8f7c627fb49b91e96109311b5af53c8bb9262a9b",
      "parents": [
        "4ebbac3ec8a05261a26859a9ee818718513c2945"
      ],
      "author": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Fri Nov 02 19:01:19 2012 -0400"
      },
      "committer": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Fri Nov 02 19:01:19 2012 -0400"
      },
      "message": "Changed the names of tests\n"
    },
    {
      "commit": "4ebbac3ec8a05261a26859a9ee818718513c2945",
      "tree": "3bc8e5ab77d62983cebb7813466e7c2c432a4067",
      "parents": [
        "8dab46620c76641e820a1ef404329217c84c1fde"
      ],
      "author": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Fri Nov 02 13:40:44 2012 -0400"
      },
      "committer": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Fri Nov 02 13:40:44 2012 -0400"
      },
      "message": "refactored verify_stats func\n"
    },
    {
      "commit": "8dab46620c76641e820a1ef404329217c84c1fde",
      "tree": "6bb668b40066f7bdc04ecc1e4dd3431565b000df",
      "parents": [
        "e6fd6a265c51245c230abbc0a1d48217dfc639ec"
      ],
      "author": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Fri Nov 02 13:40:14 2012 -0400"
      },
      "committer": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Fri Nov 02 13:40:14 2012 -0400"
      },
      "message": "styling changes\n"
    },
    {
      "commit": "7717399c71be9ef6d9f396c17e8191811baa1a28",
      "tree": "e9d64d753d9370bf224a937052e6843b78380ada",
      "parents": [
        "e53897c14357d7ad562ebfc75ff209f53306ff17"
      ],
      "author": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Tue Oct 30 15:44:39 2012 -0700"
      },
      "committer": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Tue Oct 30 15:44:39 2012 -0700"
      },
      "message": "Rework HandshakeAndKeepalive test to handle more than one controller.\nAllow controller.poll() to poll for OFPT_HELLO.\n"
    },
    {
      "commit": "e53897c14357d7ad562ebfc75ff209f53306ff17",
      "tree": "4b1ff4cb277eaeaead063d8ccfb9f90c773d1403",
      "parents": [
        "5d7e89a2aca40438bcdb041217c78f07dedf6c30"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Tue Oct 30 09:40:13 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Tue Oct 30 09:40:13 2012 -0700"
      },
      "message": "port_stats.AllPortStats: use unittest assert function\n"
    },
    {
      "commit": "5d7e89a2aca40438bcdb041217c78f07dedf6c30",
      "tree": "52d75669b2ec3bd97f2be2c3073cae1f39d55f27",
      "parents": [
        "01c2b86587d029af198e26f6aeb7fce1e16943a8"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Oct 26 16:43:13 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Tue Oct 30 08:54:47 2012 -0700"
      },
      "message": "testutils: add inspect_packet() and use it when receive_pkt_verify() fails\n"
    },
    {
      "commit": "01c2b86587d029af198e26f6aeb7fce1e16943a8",
      "tree": "c5da7f9e66871943a7d56b5cdfe540de6c0708de",
      "parents": [
        "110e0e3ace5d7dfa534e6c9fe3f3c8cbbbae8c6e"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Oct 26 16:26:25 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Tue Oct 30 08:54:47 2012 -0700"
      },
      "message": "pktact: add ModifyL4SrcUdp and ModifyL4DstUdp\n"
    },
    {
      "commit": "1a5b0822fd098adac5ac46ba0531bcb833ee3d39",
      "tree": "6e06f44a961b6926bc057ad61be3a49d8c70d1e2",
      "parents": [
        "17215b30fdb888a4ab96ab1172904b6d200acb70"
      ],
      "author": {
        "name": "Shudong Zhou",
        "email": "shudongzhou@gmail.com",
        "time": "Mon Oct 29 22:03:34 2012 -0700"
      },
      "committer": {
        "name": "Shudong Zhou",
        "email": "shudongzhou@gmail.com",
        "time": "Mon Oct 29 22:03:34 2012 -0700"
      },
      "message": "Add port_stats.AllPortStats to test port stats request with OFPP_NONE\n"
    },
    {
      "commit": "e6fd6a265c51245c230abbc0a1d48217dfc639ec",
      "tree": "8f3690f134a10c197fcd2f68b461bb49bdc0e868",
      "parents": [
        "d917c37bfaea7f285e5efda3d2a363462816a49f"
      ],
      "author": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Fri Oct 26 22:14:17 2012 -0400"
      },
      "committer": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Fri Oct 26 22:14:17 2012 -0400"
      },
      "message": "Removed flow_matches.py\n"
    },
    {
      "commit": "d917c37bfaea7f285e5efda3d2a363462816a49f",
      "tree": "ffed45f89ee8996977a8e57cd61e4b39815b9460",
      "parents": [
        "da75f756f85f49a4836efd80c828841d8cf39ab5",
        "47d0ec0fea245f78152f987bde513197be456483"
      ],
      "author": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Fri Oct 26 21:46:29 2012 -0400"
      },
      "committer": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Fri Oct 26 21:46:29 2012 -0400"
      },
      "message": "Merge remote-tracking branch \u0027main/counters\u0027\n"
    },
    {
      "commit": "47d0ec0fea245f78152f987bde513197be456483",
      "tree": "b7303f871642d2f9f3c39c8e0174da9ac79d6c92",
      "parents": [
        "a563e40fbe61c9d0b12c4e47114a127f41ea85b0"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Oct 26 14:28:19 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Oct 26 14:28:19 2012 -0700"
      },
      "message": "counters: sleep after sending packets\n"
    },
    {
      "commit": "a563e40fbe61c9d0b12c4e47114a127f41ea85b0",
      "tree": "953bd9be0fa3076c1be236a174d2dcbbc0e4fac8",
      "parents": [
        "05937a522884c268eab0073d55b06c3834a8cfa3"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Oct 26 14:25:30 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Oct 26 14:25:30 2012 -0700"
      },
      "message": "counters: check tx counters on the egress port\n"
    },
    {
      "commit": "05937a522884c268eab0073d55b06c3834a8cfa3",
      "tree": "6f15e3ff642854e7d93ac00f40f5d41b7f1c87da",
      "parents": [
        "3f3b249cd69a4e3ad0fb6de78da05407486ef2ba"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Oct 26 14:23:53 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Oct 26 14:23:53 2012 -0700"
      },
      "message": "counters.TableCounter2: fix assertion\n"
    },
    {
      "commit": "3f3b249cd69a4e3ad0fb6de78da05407486ef2ba",
      "tree": "4ad5db1163ff1c0afa5e6c3ee37781c57be7035a",
      "parents": [
        "66de26fb1bdeb2792e862121416d0367b8e3ad37"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Oct 26 14:22:49 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Oct 26 14:22:49 2012 -0700"
      },
      "message": "FuncUtils.Verify_TableStats1: fix assertion\n"
    },
    {
      "commit": "da75f756f85f49a4836efd80c828841d8cf39ab5",
      "tree": "cbcd8d01be13cc20f4be0b457a8c74098cb76a63",
      "parents": [
        "66de26fb1bdeb2792e862121416d0367b8e3ad37"
      ],
      "author": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Fri Oct 26 16:26:35 2012 -0400"
      },
      "committer": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Fri Oct 26 16:26:35 2012 -0400"
      },
      "message": "added flow_matches \u0026 documentation\n"
    },
    {
      "commit": "66de26fb1bdeb2792e862121416d0367b8e3ad37",
      "tree": "a48addb9a08713170deed705533753c603cad5f3",
      "parents": [
        "ce53f4adde5050cb6a8496740bbac7bcdc567dc9"
      ],
      "author": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Fri Oct 26 14:44:24 2012 -0400"
      },
      "committer": {
        "name": "ShreyaPandita",
        "email": "sdnadmin@SDNLABCOMPUTER.ads.iu.edu",
        "time": "Fri Oct 26 14:44:24 2012 -0400"
      },
      "message": "added counters and documentation\n"
    },
    {
      "commit": "b371430baebd8c3b130e418e0c6f5a5a2144ece2",
      "tree": "05a3259bd8c41a933b332450abc5b3da4a0af8a4",
      "parents": [
        "b42a31c55479f89417469265f34eb4c50b00aa6b",
        "265fc49f484ce85340ca480dfad22a4edba18c96"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Wed Oct 24 15:09:47 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Wed Oct 24 15:09:47 2012 -0700"
      },
      "message": "Merge branch \u0027kenc\u0027\n"
    },
    {
      "commit": "387fcd7e22c5df376937e3533e57ecb021017b2a",
      "tree": "786f66290810953082130dce7fbc6b9571036e6a",
      "parents": [
        "dc276aef0c76107d266d2e0b326e5b4f1cdd7ed0"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Tue Oct 16 14:43:52 2012 -0700"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Tue Oct 16 14:43:52 2012 -0700"
      },
      "message": "Don\u0027t set max_len to 65535 in output actions,\nsince this test never sets port to OFPP_CONTROLLER anyway\n"
    },
    {
      "commit": "dc276aef0c76107d266d2e0b326e5b4f1cdd7ed0",
      "tree": "71e5ec2925f8d5e2c14d6406109c2be148385b81",
      "parents": [
        "44cf12dc303a14a4a54e65f4d49cc63b1ae491ff"
      ],
      "author": {
        "name": "Shudong Zhou",
        "email": "shudongzhou@gmail.com",
        "time": "Mon Oct 15 16:02:56 2012 -0700"
      },
      "committer": {
        "name": "Shudong Zhou",
        "email": "shudongzhou@gmail.com",
        "time": "Mon Oct 15 16:02:56 2012 -0700"
      },
      "message": "Add Nicira role request test\n"
    },
    {
      "commit": "44cf12dc303a14a4a54e65f4d49cc63b1ae491ff",
      "tree": "1cb0019c5d61db03b9a237c8060b93a6aa92365d",
      "parents": [
        "6508ea05f07f28f542fc8164da83d4bf6e50f300"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Oct 15 11:10:45 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Oct 15 11:19:13 2012 -0700"
      },
      "message": "speed up DirectBadPacketBase tests\n\nThese tests send many packets that are not expected to match, which is slow\nbecause each non-matching packet is waited on for the full default timeout.\nThis change speeds up these tests in two ways:\n\n1. Packets expected to not match have a shorter timeout.\n\n2. A low priority \"catch-all\" flow is installed. Packets not dropped by the\nswitch should match this flow and be returned by dataplane.poll on the wrong\nport.\n\nDirectBadIpTcpPackets now runs in 10s instead of 140s.\n"
    },
    {
      "commit": "6508ea05f07f28f542fc8164da83d4bf6e50f300",
      "tree": "3f81fa37c1276ba92fde01b31a259896a40de677",
      "parents": [
        "bbd4cf94b02b2392fda3cc3e537a5efb92552db5"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Oct 12 15:27:11 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Oct 12 15:27:11 2012 -0700"
      },
      "message": "fix LLC control field in pktact tests\n\nThe 0x12 value that was being used meant there needed to be an extra 1 byte\ninformation field. A strict LLC parser could drop a packet that was too short\nto include that field.\n"
    },
    {
      "commit": "bbd4cf94b02b2392fda3cc3e537a5efb92552db5",
      "tree": "8492f2a7afce3205ccb6471879a5e2e379155ec8",
      "parents": [
        "c42dbad69bb9296cecbf1557a916ca029d93bef3"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Oct 11 23:44:42 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Oct 11 23:44:42 2012 -0700"
      },
      "message": "add necessary barriers to basic.PortConfigMod\n"
    },
    {
      "commit": "c42dbad69bb9296cecbf1557a916ca029d93bef3",
      "tree": "05307478adfa6b59b177dbd01a7ff77dba82e899",
      "parents": [
        "f062b3da033fdc0ad05bae531408f651741b8c35"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Oct 11 10:57:44 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Oct 11 10:57:44 2012 -0700"
      },
      "message": "verify stats reply fields in flow_stats.SingleFlowStats\n"
    },
    {
      "commit": "f062b3da033fdc0ad05bae531408f651741b8c35",
      "tree": "0bce90c6b24a95b14fc17a725d0cf58f62771894",
      "parents": [
        "97a5f50a083bfd63fa4d35e6a7347e1805042cc6"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Oct 11 09:53:19 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Oct 11 09:53:19 2012 -0700"
      },
      "message": "add flow_stats.EmptyFlowStats\n"
    },
    {
      "commit": "97a5f50a083bfd63fa4d35e6a7347e1805042cc6",
      "tree": "90bf370c82c1aa8d7aa3adb3649c126529f4b8b7",
      "parents": [
        "d083285051c23b9693caf53d506657b7f134478f"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Oct 11 09:28:11 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Oct 11 09:28:11 2012 -0700"
      },
      "message": "add flow_stats.EmptyAggregateStats\n"
    },
    {
      "commit": "d083285051c23b9693caf53d506657b7f134478f",
      "tree": "5158e90b6b0e052b1ca9de3e316c83794f0cf18f",
      "parents": [
        "de89fbb88fdf5d10f28d993e4f5ff54bc19624dd"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Wed Oct 10 09:49:53 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Wed Oct 10 09:49:53 2012 -0700"
      },
      "message": "Added packet-in/out load tests\n"
    },
    {
      "commit": "265fc49f484ce85340ca480dfad22a4edba18c96",
      "tree": "120957d349ef5fc0d01a186c10349abf1e4714e3",
      "parents": [
        "34d6a852f4d496cf3ac5a1f114afb68c9d063b78"
      ],
      "author": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Tue Oct 09 16:16:18 2012 -0700"
      },
      "committer": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Tue Oct 09 16:16:18 2012 -0700"
      },
      "message": "In HandshakeAndKeepalive test, make the timeout after the handshake\nhas completed configurable.\n"
    }
  ],
  "next": "e875baf604d374ef04a9a8388a8b7f2f556ef469"
}
