)]}'
{
  "log": [
    {
      "commit": "dc6fca3d311dfa132f3c6c46ff22a0f719e3e85d",
      "tree": "50e24c183b0e9de26787c01fff7471d219832d16",
      "parents": [
        "2baf8b5b073dc593ac052befa7cb94fcab9b351c"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Fri Mar 30 10:05:49 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Fri Mar 30 10:05:49 2012 -0700"
      },
      "message": "Do debug output before assertion\n"
    },
    {
      "commit": "2baf8b5b073dc593ac052befa7cb94fcab9b351c",
      "tree": "8c27acc6b93d91aff3f6eb46fe7feb583ac8c950",
      "parents": [
        "50c82465cf6993765c70eee824221b79d901aab9"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Fri Mar 30 09:55:42 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Fri Mar 30 09:55:42 2012 -0700"
      },
      "message": "Better packet dump routine\n"
    },
    {
      "commit": "50c82465cf6993765c70eee824221b79d901aab9",
      "tree": "8844c2c665c85792fa2bba0ac493cee7883de782",
      "parents": [
        "f3eae9c2612b066a397a5406d4fab4c4401b9ce4"
      ],
      "author": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Wed Mar 28 18:26:14 2012 -0700"
      },
      "committer": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Wed Mar 28 18:26:14 2012 -0700"
      },
      "message": "- Fixed clear-table and initialization semantics based on other recent checkins\n- Added InsertModifyDelete() test\n"
    },
    {
      "commit": "f3eae9c2612b066a397a5406d4fab4c4401b9ce4",
      "tree": "21711ba7f9b138aa1961205baf48943a1a688048",
      "parents": [
        "2334d64a59189e1e816aa4574b236915043796fd"
      ],
      "author": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Wed Mar 28 18:23:21 2012 -0700"
      },
      "committer": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Wed Mar 28 18:23:21 2012 -0700"
      },
      "message": "- Added option to override recent change to flow_msg_install() which\n  default to True for the new clear table parameter retrieve from the\n  test config. Still need the option to make a clear-table optional\n  on a per-testcase basis.\n\n  It didn\u0027t look like this was easy to do without affecting the test-params\n  inherited later, so I just added the override option back in.\n"
    },
    {
      "commit": "2334d64a59189e1e816aa4574b236915043796fd",
      "tree": "801b03e55d13195c8ea41b8f3099b13f9690db0c",
      "parents": [
        "2a300e474a867198f99f664aafa8d5b774526be3",
        "143c74521eb61567a6106fb8f3e283ee2d9b55c1"
      ],
      "author": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Wed Mar 28 17:26:10 2012 -0700"
      },
      "committer": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Wed Mar 28 17:26:10 2012 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of github.com:/floodlight/oftest\n"
    },
    {
      "commit": "2a300e474a867198f99f664aafa8d5b774526be3",
      "tree": "90c30a2f25f7abb642f066558317d0d712e2c378",
      "parents": [
        "58106f8b92dd6d8a741d6237522ba053b7168cb1"
      ],
      "author": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Wed Mar 28 17:24:02 2012 -0700"
      },
      "committer": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Wed Mar 28 17:24:02 2012 -0700"
      },
      "message": "- Added SingleWildcardMatchPriority() to test proper prioritization of\n  flow matches\n"
    },
    {
      "commit": "143c74521eb61567a6106fb8f3e283ee2d9b55c1",
      "tree": "3cce788d0f3ab7ef6bbbfeecdf5f0cf0c6e9ee13",
      "parents": [
        "fb593e7129ab7638f5a34ca35e5ed21c0ab28f76",
        "8a64e3390ce23c1903de09d73fd0a7de52c45604"
      ],
      "author": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Wed Mar 28 17:22:39 2012 -0700"
      },
      "committer": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Wed Mar 28 17:22:39 2012 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of github.com:/floodlight/oftest\n"
    },
    {
      "commit": "fb593e7129ab7638f5a34ca35e5ed21c0ab28f76",
      "tree": "3b288675f4d6c5c73f2e0446553a3a55b7d934a4",
      "parents": [
        "677cc11523489d5814cf2c9d26e27bc6a049fd71"
      ],
      "author": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Wed Mar 28 17:19:13 2012 -0700"
      },
      "committer": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Wed Mar 28 17:19:13 2012 -0700"
      },
      "message": "Update port_map, logger, and config prefix to \"fs_\".\nUse controller.transact instead of controller.message_send/poll.\n"
    },
    {
      "commit": "8a64e3390ce23c1903de09d73fd0a7de52c45604",
      "tree": "f712cb763ff5ecf240c6a74c4a72a6b82f6a4ee4",
      "parents": [
        "677cc11523489d5814cf2c9d26e27bc6a049fd71"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Wed Mar 28 14:53:20 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Wed Mar 28 14:53:20 2012 -0700"
      },
      "message": "Added iterate-test-case test\n\nThe list of tests in the array iter_classes are iterated over.\nThe number of iterations is 10 by default and can be overridden\nby the iter_count test parameter.\n"
    },
    {
      "commit": "677cc11523489d5814cf2c9d26e27bc6a049fd71",
      "tree": "a4a105d7658e711ba10fe42d4ccdef8bdf1907a2",
      "parents": [
        "58106f8b92dd6d8a741d6237522ba053b7168cb1"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Tue Mar 27 10:28:58 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Tue Mar 27 10:29:10 2012 -0700"
      },
      "message": "Added inheritSetup method\n\n        This allows running at test from within another test.  Do the\n        following:\n\n        sub_test \u003d SomeTestClass()  # Create an instance of the test class\n        sub_test.inheritSetup(self) # Inherit setup of parent\n        sub_test.runTest()          # Run the test\n\n        Normally, only the parent\u0027s setUp and tearDown are called and\n        the state after the sub_test is run must be taken into account\n        by subsequent operations.\n"
    },
    {
      "commit": "aff26c8f3332d0607e1da4f16dc51e6a68184d45",
      "tree": "205c294ebd75f2c092fd74ef91af17275fe2de41",
      "parents": [
        "fb4c9caec37edeb3d5848048e41e2ffe8239e1e5",
        "620bdcc3b1ffe5a30a803c47f2ff4d969eff7990"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Sun Mar 25 15:06:26 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Sun Mar 25 15:06:26 2012 -0700"
      },
      "message": "Merged from Ken Cs flow_stats dev branch\n"
    },
    {
      "commit": "fb4c9caec37edeb3d5848048e41e2ffe8239e1e5",
      "tree": "d59e7e43a4783169d6fcf51e561118aaaf5bd3b9",
      "parents": [
        "78cb7ccaa6b1582908796fe61f6c2a4015a62e74",
        "0aeff8ca94ee95ed72ba79fe04005bfbe1da940a"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Sun Mar 25 14:42:18 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Sun Mar 25 14:42:18 2012 -0700"
      },
      "message": "Merged from Ed Swierk test-day pkt-in/out\n"
    },
    {
      "commit": "0aeff8ca94ee95ed72ba79fe04005bfbe1da940a",
      "tree": "ae25a5cedae126317212cb30057963f8085479fb",
      "parents": [
        "0caeb1eb51b6550193e3dd7b9b1a2497bad78e6c"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Fri Mar 23 20:27:18 2012 -0700"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Fri Mar 23 20:27:18 2012 -0700"
      },
      "message": "Test packet in and packet out with a few different kinds of packets:\nTCP, raw Ethernet with LLDP type, and a packet that\u0027s smaller than\nthe Ethernet minimum (60 bytes) to make sure the switch pads it\nrather than dropping it!\n"
    },
    {
      "commit": "620bdcc3b1ffe5a30a803c47f2ff4d969eff7990",
      "tree": "250be691f202a33040df394b97940db62118c1cb",
      "parents": [
        "f6e76c0368357f2854208744aa66dae8d77d72e8"
      ],
      "author": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Fri Mar 23 12:52:07 2012 -0700"
      },
      "committer": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Fri Mar 23 12:52:07 2012 -0700"
      },
      "message": "Change the existing flow stats test into three separate ones:\n- Add a single flow and query\n- Add two flows and query per-flow stats\n- Add two flows and query aggregate stats\n"
    },
    {
      "commit": "d8ae758b18be0b9f0ebddce0fef5bb0eae447103",
      "tree": "15bfda8338239b0c6e6b5a38c1b607ae35915f4e",
      "parents": [
        "c948d0bf6d2d789da1f0c2098e90497e33c5a90a"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Fri Mar 23 12:24:56 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Fri Mar 23 12:24:56 2012 -0700"
      },
      "message": "Added Modify L2, send to ingress and MC (or UC)\n\negress count defaults to 2 + ingress port\nUse egr_count parameter to set to 1 for single other port.\n"
    },
    {
      "commit": "c948d0bf6d2d789da1f0c2098e90497e33c5a90a",
      "tree": "7fdf9ab1bf86861f9fb2dc74fd2379281a14aeee",
      "parents": [
        "cfa172f4af6efbd3a76be423a9f300b8a773ad40"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Fri Mar 23 12:17:54 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Fri Mar 23 12:17:54 2012 -0700"
      },
      "message": "Added L2 dest addr and send to ingress port\n\nSome small infra changes to support this\n"
    },
    {
      "commit": "cfa172f4af6efbd3a76be423a9f300b8a773ad40",
      "tree": "20b5801f15b878a536131713bbb1045b92079c05",
      "parents": [
        "f6e76c0368357f2854208744aa66dae8d77d72e8"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Fri Mar 23 12:03:00 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Fri Mar 23 12:03:00 2012 -0700"
      },
      "message": "Added L2 dest modify + VLAN modify test\n\nMoved egr_count calculation down into flow_test_match; defaults to 1\nfor existing calls.\n"
    },
    {
      "commit": "f6e76c0368357f2854208744aa66dae8d77d72e8",
      "tree": "81f69a2019eb2764de5d8298b40195afbd6cdb03",
      "parents": [
        "3bb8b1b1d10dd5c9f5dda2713d31de64f50b96d5"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Fri Mar 23 10:56:12 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Fri Mar 23 10:56:12 2012 -0700"
      },
      "message": "Added L2 modify + MC tests and support\n\nAdded support to flow_match_test (and flow_match_test_port_pair)\nto send generate flows/packets for multiple output port actions.\n\nAdded test cases for L2SrcModMC, L2DstModMC, L2SrcDstModMC which\nmodify and send to multiple output ports\n\nUse egr_count to modify the number of output ports via test params.\n\nAdded warning to comments that test params need to be proper\nPython identifiers.\n"
    },
    {
      "commit": "4431d54e9a7852ab0c1e1b2d0b5b33c2c0c75b4c",
      "tree": "666a7ef89e17f55cd7bb69030a57de0d62bcd315",
      "parents": [
        "6a0bf71e4ce73cfdc5210bad9273214226c18969"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Wed Mar 21 16:42:16 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Wed Mar 21 16:42:16 2012 -0700"
      },
      "message": "When VID is wildcarded, do not set it to 0xffff\n"
    },
    {
      "commit": "6a0bf71e4ce73cfdc5210bad9273214226c18969",
      "tree": "293c71f72c0c512d4db00f9db5721e42e403da5e",
      "parents": [
        "0caeb1eb51b6550193e3dd7b9b1a2497bad78e6c"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Wed Mar 21 16:38:03 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Wed Mar 21 16:38:03 2012 -0700"
      },
      "message": "Set in_band to off by default\n"
    },
    {
      "commit": "0caeb1eb51b6550193e3dd7b9b1a2497bad78e6c",
      "tree": "071cf6978135d3ee3d2da27b7a6d731baed30ed1",
      "parents": [
        "0214da2d5b72a833e31266b8667b080bd48b6125"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Mon Mar 19 15:01:56 2012 -0700"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Tue Mar 20 11:13:45 2012 -0700"
      },
      "message": "Wait for all flows to be deleted before attempting to trigger a packet-in\n"
    },
    {
      "commit": "6ccbb07fbe7af377bcb746487d9c9be3f3f0d7a9",
      "tree": "86d0763f63adf82b2caf1796cfc0f7f258e08dc6",
      "parents": [
        "4306d3e58d6534ab85410df68fd87eb9c5462169"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Mon Mar 19 14:48:40 2012 -0700"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Tue Mar 20 11:13:44 2012 -0700"
      },
      "message": "Call basic setup function since other test modules call into the\nbasic module and use things like the logger\n"
    },
    {
      "commit": "677c0b76152c167ff95bb8f23db571d45116478b",
      "tree": "8df212a4e38293d25d91b236e430988ecf63ad51",
      "parents": [
        "3788a3d7ca2a14b9ba723f596a30da281c9baaf5"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Tue Aug 23 22:53:38 2011 -0700"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Tue Mar 20 11:13:44 2012 -0700"
      },
      "message": "In band changes\n\nAdd flow_mod_gen to simplify several calls\nCheck if switch connects in simple protocol and exit if not.\nDo not run FlowStatsGet by default\nAdd in_band parameter to indicate flows should not drop all pkts\n"
    },
    {
      "commit": "3788a3d7ca2a14b9ba723f596a30da281c9baaf5",
      "tree": "6a8398de0d9b4e21b4505d0e3ab299dbae28f1ea",
      "parents": [
        "830b44153279f760fded6870c3f9d2c75587af97"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Tue Aug 23 22:50:07 2011 -0700"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Tue Mar 20 11:13:44 2012 -0700"
      },
      "message": "Do not run FillTableWC by default\n"
    },
    {
      "commit": "830b44153279f760fded6870c3f9d2c75587af97",
      "tree": "0156e14368fdb96d2d28439384975246f5618b16",
      "parents": [
        "cf26b7a4bd60f6b47709aa34f33aac48e7ab0b61"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Tue Aug 23 22:49:21 2011 -0700"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Tue Mar 20 11:13:44 2012 -0700"
      },
      "message": "Do not add non-default tests when module specified\n"
    },
    {
      "commit": "cf26b7a4bd60f6b47709aa34f33aac48e7ab0b61",
      "tree": "444688861823fe6ff85e4f5ff2f60239e95020e0",
      "parents": [
        "836e5bd85531c1bf7ba7e7a73c7358ad732b7d1c"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Fri Aug 05 10:15:35 2011 -0700"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Tue Mar 20 11:13:44 2012 -0700"
      },
      "message": "Added relax option to oftest\n\nThis option relaxes restrictions around receiving unexpected packets.\nIt\u0027s main use case is in evironments where in-band control is enabled and\nas a consequence packets are forwarded to dataplane ports.\n"
    },
    {
      "commit": "9130bcde34c639be168f7fa5ba637628d3675193",
      "tree": "85bde8fbf4e18aa5cc34b067822b1ff845366b19",
      "parents": [
        "e3e452a3e5b2d6d288a6efeac52911f54175c6fa"
      ],
      "author": {
        "name": "Rob Sherwood",
        "email": "rob.sherwood@bigswitch.com",
        "time": "Wed Mar 07 12:23:50 2012 -0800"
      },
      "committer": {
        "name": "Rob Sherwood",
        "email": "rob.sherwood@bigswitch.com",
        "time": "Wed Mar 07 12:25:27 2012 -0800"
      },
      "message": "bugfix: flow_stats test needed to set buffer_id\n\nThanks to Thu Quoc \u003ctquoc@us.ibm.com\u003e for pointing this out.\n"
    },
    {
      "commit": "79184226dabaf883df7db233b53a73ac99e6a7f3",
      "tree": "6a699e70562f8c89f1c25d055b76c3361137d4f0",
      "parents": [
        "475023cbfb183822cd1267f498e4adfeee865ed7"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Mon Nov 01 12:24:29 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Mon Nov 01 12:24:29 2010 -0700"
      },
      "message": "Corrected comment (thanks Saurav)\n"
    },
    {
      "commit": "ba3745c94f562b2f89c6b7a6df7a9a7e945f4e4e",
      "tree": "10a769ec1d8586aa2d718ca36d92c637f6f23062",
      "parents": [
        "ba4fd4f4f94bd2d75146164cbdfc4dc1ffd51cf0"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Wed Jul 21 21:51:08 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Wed Jul 21 21:51:08 2010 -0700"
      },
      "message": "Added skip message support\n\nEmit message to stderr when skipping a test depending on verbosity\nlevel.  Report number of tests skipped at end of test run.\n"
    },
    {
      "commit": "ba4fd4f4f94bd2d75146164cbdfc4dc1ffd51cf0",
      "tree": "128982afd53a5bcf226feb8610353985a75d6353",
      "parents": [
        "6213e3cc709cfd33702c22420ba063bb8279873e"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Wed Jul 21 21:49:41 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Wed Jul 21 21:49:41 2010 -0700"
      },
      "message": "DataPlaneOnly message to log, not stdout\n"
    },
    {
      "commit": "7aa0b812d021528e789c362d3f389679692b31b6",
      "tree": "614fc8a6f414871a5cbe9739503f95e6794968fb",
      "parents": [
        "10275aa7caa78e1a77dff2a88e5f1c32be2212f8"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue Jul 20 14:51:41 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue Jul 20 14:51:41 2010 -0700"
      },
      "message": "Grammar correction\n"
    },
    {
      "commit": "4b2bee6367f022fe5e03c3d85e21b3382a7b27cb",
      "tree": "98587abe63b36b50ff72d5e0c33e24ac3e686448",
      "parents": [
        "ac25cf34a443faa1c5b21e8fa839d0ac56fb7109"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue Jul 20 14:10:05 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue Jul 20 14:10:05 2010 -0700"
      },
      "message": "Implementation of many modify tests\n\nUse --test-params option instead of old --param option.\nImplemented pkt_action_setup that does the core work of\ngenerating in/out pkts and action lists.  Use this for a bunch\nof modify test cases.\n"
    },
    {
      "commit": "ac25cf34a443faa1c5b21e8fa839d0ac56fb7109",
      "tree": "0dc800203ffbcb1f7103ffda3ffcabcfd8e00e89",
      "parents": [
        "8f91a5b6eeb2c3faf0ebcdef197c0c82d08990fa"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue Jul 20 14:08:28 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue Jul 20 14:08:28 2010 -0700"
      },
      "message": "Added --test-params command line option\nFilter # file names\nCheck if running as Main to allow easier imports\n"
    },
    {
      "commit": "8f91a5b6eeb2c3faf0ebcdef197c0c82d08990fa",
      "tree": "73784f3db16589a1be9afd9af4156739360c9650",
      "parents": [
        "285a838855d7d388ab717504e6980cdba01982e3"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue Jul 20 14:07:21 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue Jul 20 14:07:21 2010 -0700"
      },
      "message": "Added note for FillTableExact\n"
    },
    {
      "commit": "285a838855d7d388ab717504e6980cdba01982e3",
      "tree": "5bf698e6d256070254d90d162ca9ae5b41a83e73",
      "parents": [
        "98fada9866f4d3bd065cb8912ec172da68269dad"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue Jul 20 14:06:55 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue Jul 20 14:06:55 2010 -0700"
      },
      "message": "Record config object in test instance\n"
    },
    {
      "commit": "98fada9866f4d3bd065cb8912ec172da68269dad",
      "tree": "aba51cecc81c93a67f5ee6d3214e2f3a7b65ce5e",
      "parents": [
        "2138156b234f94d2b99f090355fb54a9a840da1f"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Sat Jul 17 00:36:21 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Sat Jul 17 00:36:21 2010 -0700"
      },
      "message": "Fixed reference to wildcards in flow_match_test call\n"
    },
    {
      "commit": "2138156b234f94d2b99f090355fb54a9a840da1f",
      "tree": "de4824c2a7581f030cd34e95ce65379b87bf180f",
      "parents": [
        "8dbc4d73059a623b4103c5f8c4354343ae221997"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Sat Jul 17 00:34:47 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Sat Jul 17 00:34:47 2010 -0700"
      },
      "message": "Support setting test VID with --param\nFixed reference to wildcards in parameters\nAvoid VLAN\u003d\u003d1 as tag\n"
    },
    {
      "commit": "551befadb763269637cb38372400a31ad1a2ee1f",
      "tree": "b75ed8840a4b9b85756eb3055154035a3b6408e1",
      "parents": [
        "f36f108e0710024135a0f2b7c4cc6ed69f1455ca"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Thu Jul 15 17:05:32 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Thu Jul 15 17:05:32 2010 -0700"
      },
      "message": "Some major restructuring\n\nUpdated README with some warnings.\nAdded data-plane-only class to allow controlling the dataplane\nports without needing a controller connection.\nSubclassed this to allow sending only a packet without doing\nany flow mods; both tagged or untagged.\nAdded the ability to pass a parameter to a test through th\nconfig structure.  Use --param\u003dN.\nUsed the above to set the VLAN id in a tagged pkt in the new test.\nBreak up description/name in --list when name is long\n\nRestructured pktact.py into different routines, moving a lot of\nthe base functionality into testutils.py.  This allows packet\nmodification tests to be done independently.\n\nIn the process, added support for using tagged and untagged\npackets in the tests.  Several tests remain to be implemented.\n"
    },
    {
      "commit": "f36f108e0710024135a0f2b7c4cc6ed69f1455ca",
      "tree": "81a9c2f1d5bda5b27969caf7d3a243fff48b9203",
      "parents": [
        "80b54ede306458b3ff861e677369ab4080a5eebc"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue Jul 13 13:57:17 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue Jul 13 13:57:17 2010 -0700"
      },
      "message": "Check if any mod actions supported; debug output\n"
    },
    {
      "commit": "80b54ede306458b3ff861e677369ab4080a5eebc",
      "tree": "16f2d7fe23bc0249438c4a7196adcf3e26e09990",
      "parents": [
        "0d581220f1b93ef42bc9aacf68a402a4b25411e7"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue Jul 13 09:48:35 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue Jul 13 09:48:35 2010 -0700"
      },
      "message": "Simplified description tagline\n"
    },
    {
      "commit": "39bf691b2a0427ccefeac3d2b964898e71f67536",
      "tree": "8f0a25a652adf883f0371ba5dcd2a8092f45d2e8",
      "parents": [
        "95b4706da15aca398290a2417b0bf5b7c9e97a4b"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Thu Jul 08 14:17:52 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Thu Jul 08 14:17:52 2010 -0700"
      },
      "message": "Fixed port sequence assumption\n\nThe code assumed ports being tested started at 0 and were\nsequential\n"
    },
    {
      "commit": "95b4706da15aca398290a2417b0bf5b7c9e97a4b",
      "tree": "4f331db01a02b03ddb341c23aed92902522e2172",
      "parents": [
        "c24aaaeb82c71c000e6c21b1dd63e62e7b004716",
        "9c31e22302d39eb7ae5361fa3dec5e8763bc5553"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Thu Jul 08 14:16:43 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Thu Jul 08 14:16:43 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of yuba:/usr/local/git/openflow-projects/oftest\n"
    },
    {
      "commit": "c24aaaeb82c71c000e6c21b1dd63e62e7b004716",
      "tree": "615d5316e657ca2e359db40168100934f7f396d6",
      "parents": [
        "8b886b16b434476a9c1c0063e35c6bcc9c30392e"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Thu Jul 08 14:05:24 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Thu Jul 08 14:05:24 2010 -0700"
      },
      "message": "Added per-test priority support\n\nIn each module, a variable test_prio[] may be added which\nis indexed by the test name.\n\nCurrently the only application of this is to exclude tests\nfrom the \"default\" set of tests that are run:  If a test\nhas a negative priority, then it is not run by default.  This\naddresses the issue with \"fill exact match table\" taking almost\nan hour to run.\n"
    },
    {
      "commit": "9c31e22302d39eb7ae5361fa3dec5e8763bc5553",
      "tree": "c63466d34c0124f4385d5417cb24c10cd482ad8f",
      "parents": [
        "8b886b16b434476a9c1c0063e35c6bcc9c30392e",
        "b8fb3c382fa1564bc276277c54f9c4156055727f"
      ],
      "author": {
        "name": "Tatsuya Yabe",
        "email": "tyabe@stanford.edu",
        "time": "Wed Jun 16 13:48:02 2010 -0700"
      },
      "committer": {
        "name": "Tatsuya Yabe",
        "email": "tyabe@stanford.edu",
        "time": "Wed Jun 16 13:48:02 2010 -0700"
      },
      "message": "Merge branch \u0027tyabe\u0027\n\nConflicts:\n\ttests/pktact.py\n"
    },
    {
      "commit": "b8fb3c382fa1564bc276277c54f9c4156055727f",
      "tree": "61efcafe033ac2c9f1bccd54dec1eaa15ea7a31e",
      "parents": [
        "f5ffb97b92a933ed7781a0a2e36b101b3f62c5e3"
      ],
      "author": {
        "name": "Tatsuya Yabe",
        "email": "tyabe@stanford.edu",
        "time": "Mon Jun 14 15:48:36 2010 -0700"
      },
      "committer": {
        "name": "Tatsuya Yabe",
        "email": "tyabe@stanford.edu",
        "time": "Mon Jun 14 15:48:36 2010 -0700"
      },
      "message": "Added: DirectPacket test with ICMP matching\n"
    },
    {
      "commit": "8b886b16b434476a9c1c0063e35c6bcc9c30392e",
      "tree": "e68bad508f11dc784cd87c2d95556c93c38233fd",
      "parents": [
        "79c6c4d6aeb2df04b86bb61b2278e562c73d4a69"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue Jun 08 14:02:35 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue Jun 08 14:02:35 2010 -0700"
      },
      "message": "Add caps_table_idx parameter\n"
    },
    {
      "commit": "79c6c4d6aeb2df04b86bb61b2278e562c73d4a69",
      "tree": "704f0577570301f495c8af9384dcdcb2b4012949",
      "parents": [
        "7f0d545e224883bf1be8397c3ed91822f73710c2"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue Jun 08 14:01:53 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue Jun 08 14:01:53 2010 -0700"
      },
      "message": "Added basic table stats get test\n"
    },
    {
      "commit": "89d5734045e35fe0998f5c372fb5116e4f763e20",
      "tree": "32dfa4b2fe391f297d116472e996640466269849",
      "parents": [
        "9f47f4d4dd1f73db0f2f45c53680f865f65116d6"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Mon Jun 07 16:24:59 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Mon Jun 07 16:24:59 2010 -0700"
      },
      "message": "Added flow expire/stats tests\n\nContributions from Google test engineers.  Basic tests for flow\nexpiration message generation and stats checking.  They also\nadded code for properly managing network prototype and wildcards\nfor TCP/UDP packets in parse.py.\n"
    },
    {
      "commit": "9f47f4d4dd1f73db0f2f45c53680f865f65116d6",
      "tree": "b8b2cb70f615f4eb4deb8ae4f110e4b6872baf18",
      "parents": [
        "92c991200462070e17f804fd2b1e50fe7b3932da"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Thu Jun 03 13:54:37 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Thu Jun 03 13:54:37 2010 -0700"
      },
      "message": "Added FloodMinusPort routine; use utility routines\n\nFloodMinusPort checks that the no-flood port configuration\nworks.  In addition, use sets of ports passed to receive_pkt_check\nin various places for positive and negative packet reception\nchecking.\n"
    },
    {
      "commit": "92c991200462070e17f804fd2b1e50fe7b3932da",
      "tree": "d2f72083f467b6c9a529404042ab01d16cc41d27",
      "parents": [
        "b3f43fee6cd38a82bdc9365a128b4c118e268897"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Thu Jun 03 13:53:18 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Thu Jun 03 13:53:18 2010 -0700"
      },
      "message": "Added port config set/get and rcv pkt check functions\n"
    },
    {
      "commit": "f5ffb97b92a933ed7781a0a2e36b101b3f62c5e3",
      "tree": "75d887e84e7801a3dab7e7af2619509e94bcfba5",
      "parents": [
        "17195a0efc1e67bf084242f0cd1fd85625a39127"
      ],
      "author": {
        "name": "Tatsuya Yabe",
        "email": "tyabe@stanford.edu",
        "time": "Wed May 26 15:36:33 2010 -0700"
      },
      "committer": {
        "name": "Tatsuya Yabe",
        "email": "tyabe@stanford.edu",
        "time": "Wed May 26 15:36:33 2010 -0700"
      },
      "message": "Check switch_features before executing modify_actions\n"
    },
    {
      "commit": "17195a0efc1e67bf084242f0cd1fd85625a39127",
      "tree": "9420244db78af6b1428e7361284e8095ab8744b6",
      "parents": [
        "e6cae8ba300da5d44361f55a44375837ffbb2fd9"
      ],
      "author": {
        "name": "Tatsuya Yabe",
        "email": "tyabe@stanford.edu",
        "time": "Wed May 26 15:29:55 2010 -0700"
      },
      "committer": {
        "name": "Tatsuya Yabe",
        "email": "tyabe@stanford.edu",
        "time": "Wed May 26 15:29:55 2010 -0700"
      },
      "message": "Correct condition for executing modify-actions\n"
    },
    {
      "commit": "e6cae8ba300da5d44361f55a44375837ffbb2fd9",
      "tree": "bc4eabfcf37e32fc771b0a29b37ff421fe827818",
      "parents": [
        "460321ebdd79742d648737ca17f17be83e1f2de4"
      ],
      "author": {
        "name": "Tatsuya Yabe",
        "email": "tyabe@stanford.edu",
        "time": "Tue May 25 18:20:04 2010 -0700"
      },
      "committer": {
        "name": "Tatsuya Yabe",
        "email": "tyabe@stanford.edu",
        "time": "Tue May 25 18:20:04 2010 -0700"
      },
      "message": "Added a test for exact match with modify action\n"
    },
    {
      "commit": "460321ebdd79742d648737ca17f17be83e1f2de4",
      "tree": "48cb0b8f56e5f232dd771cb3b31ddbf5737e70b8",
      "parents": [
        "cdf575eef8b7d0324251c65616b6be69cf01c538"
      ],
      "author": {
        "name": "Tatsuya Yabe",
        "email": "tyabe@stanford.edu",
        "time": "Tue May 25 17:50:49 2010 -0700"
      },
      "committer": {
        "name": "Tatsuya Yabe",
        "email": "tyabe@stanford.edu",
        "time": "Tue May 25 17:50:49 2010 -0700"
      },
      "message": "Expand parameters for simple_tcp_packet\n"
    },
    {
      "commit": "cdf575eef8b7d0324251c65616b6be69cf01c538",
      "tree": "3a222e24a726aa07b5af394df0a5cf4b7bcc52be",
      "parents": [
        "e30ebe2c1ef282a46f35fa47fd8b71c44ebf2e57"
      ],
      "author": {
        "name": "Tatsuya Yabe",
        "email": "tyabe@stanford.edu",
        "time": "Tue May 25 16:56:38 2010 -0700"
      },
      "committer": {
        "name": "Tatsuya Yabe",
        "email": "tyabe@stanford.edu",
        "time": "Tue May 25 16:56:38 2010 -0700"
      },
      "message": "Fixed incomplete ofp_flow_mod in simple_exact_match\n"
    },
    {
      "commit": "e30ebe2c1ef282a46f35fa47fd8b71c44ebf2e57",
      "tree": "d7dd4007ad47338cc41c3a274a4240e248ce12a8",
      "parents": [
        "4fad7e38bf4bf658cca7b56814ce66b06538c3cd"
      ],
      "author": {
        "name": "Tatsuya Yabe",
        "email": "tyabe@stanford.edu",
        "time": "Tue May 25 09:30:49 2010 -0700"
      },
      "committer": {
        "name": "Tatsuya Yabe",
        "email": "tyabe@stanford.edu",
        "time": "Tue May 25 09:30:49 2010 -0700"
      },
      "message": "Added: Wildcard-all test\n"
    },
    {
      "commit": "4fad7e38bf4bf658cca7b56814ce66b06538c3cd",
      "tree": "0fb71df037716ac289ba47418b4a64f609119657",
      "parents": [
        "0718ad3f9d76a5fb28e5870d00c297a47f3f4d42"
      ],
      "author": {
        "name": "Tatsuya Yabe",
        "email": "tyabe@stanford.edu",
        "time": "Mon May 24 15:24:50 2010 -0700"
      },
      "committer": {
        "name": "Tatsuya Yabe",
        "email": "tyabe@stanford.edu",
        "time": "Mon May 24 15:24:50 2010 -0700"
      },
      "message": "Added: All-except-one wildcard test\n"
    },
    {
      "commit": "0718ad3f9d76a5fb28e5870d00c297a47f3f4d42",
      "tree": "c659db9bc10fcced8ffa2c61c81ab4e2b4aae03b",
      "parents": [
        "6a6f38ad44b32747c5d8cc755cddcc3db0335a4e"
      ],
      "author": {
        "name": "Tatsuya Yabe",
        "email": "tyabe@stanford.edu",
        "time": "Mon May 24 15:22:10 2010 -0700"
      },
      "committer": {
        "name": "Tatsuya Yabe",
        "email": "tyabe@stanford.edu",
        "time": "Mon May 24 15:22:10 2010 -0700"
      },
      "message": "Exact/Wildcard tests: disable flow_removed msg checking by default\n"
    },
    {
      "commit": "6a6f38ad44b32747c5d8cc755cddcc3db0335a4e",
      "tree": "7b6608cdb5a2c2893a3d7c2570fd99e89f9a150b",
      "parents": [
        "b3f43fee6cd38a82bdc9365a128b4c118e268897"
      ],
      "author": {
        "name": "Tatsuya Yabe",
        "email": "tyabe@stanford.edu",
        "time": "Sat May 22 23:48:04 2010 -0700"
      },
      "committer": {
        "name": "Tatsuya Yabe",
        "email": "tyabe@stanford.edu",
        "time": "Sat May 22 23:48:04 2010 -0700"
      },
      "message": "Added simple exact match and wildcard match tests\n"
    },
    {
      "commit": "b3f43fee6cd38a82bdc9365a128b4c118e268897",
      "tree": "f39b4cb7f48c4d6ba63a509656892e9f8cf9951b",
      "parents": [
        "ff60649b3ee20296bca3a1468e730995744338be"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Thu May 13 14:24:20 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Thu May 13 14:24:20 2010 -0700"
      },
      "message": "Added PortConfigMod\n\nTest gets the switch config (via features request), then changes\na bit in a port config and does a port_mod.  Then reads the config\nback to verify changed.\n"
    },
    {
      "commit": "4aa1312087a5285f71f791b4c555a0fc62b31912",
      "tree": "83840adf8b5eb29b6e3b6abddd5ceab081279487",
      "parents": [
        "3be5b06705e08f399d35e651b46be45d8a45e703"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Wed May 12 15:54:44 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Wed May 12 15:54:44 2010 -0700"
      },
      "message": "Added All and AllPlusIngress\n\nAll tests OFPP_ALL packet output action\nAllPlusIngress tests OFPP_ALL plus OFPP_IN_PORT output actions together\n"
    },
    {
      "commit": "3be5b06705e08f399d35e651b46be45d8a45e703",
      "tree": "fd00c9076f4661a0ba6e7a20806a81601be5929b",
      "parents": [
        "2e77a84abe2668032818d835f11e849b6d52215c"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Wed May 12 15:46:21 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Wed May 12 15:46:21 2010 -0700"
      },
      "message": "Added FloodPlusIngress\n\nAdded test case to flood packet and to send out ingress port\n"
    },
    {
      "commit": "2e77a84abe2668032818d835f11e849b6d52215c",
      "tree": "1af11ae4244655450447ced44dc0fa262ee23e53",
      "parents": [
        "32fa65417aff853d5fdf1dd6944be06351c20355"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Wed May 12 15:39:46 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Wed May 12 15:39:46 2010 -0700"
      },
      "message": "Added Flood test case; clear flows more often\n\nAdded flood test case.  This assumes all ports are set to flood.\n\nAlso moved the \"clear flow table\" call to inside the loop across\ningress ports for various tests.\n"
    },
    {
      "commit": "32fa65417aff853d5fdf1dd6944be06351c20355",
      "tree": "58eab46f7882a7ebcbb1106339ac6f0a46b1ce0d",
      "parents": [
        "b0b0fdbe3cb18587902d79e98ba0ab6df03941f6"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue May 11 15:54:08 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue May 11 15:54:08 2010 -0700"
      },
      "message": "Added DirectMC test case\n\nSend to all ports including ingress port\n"
    },
    {
      "commit": "b0b0fdbe3cb18587902d79e98ba0ab6df03941f6",
      "tree": "b3e809fadbcc65ab540374aae19afb2acf730cfa",
      "parents": [
        "2d0d49a41f319d8430015541813e75a69d6f7a58"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue May 11 15:44:56 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue May 11 15:44:56 2010 -0700"
      },
      "message": "Added DirectMCNonIngress test case\n\nTests multicast to all non-ingress ports\n"
    },
    {
      "commit": "2d0d49a41f319d8430015541813e75a69d6f7a58",
      "tree": "16fc9c09cc74df956ab347dd5dcf37300ec92500",
      "parents": [
        "3afcf72f4d904dcfeb2cc3d6b2b965d7d67552fa"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue May 11 15:29:08 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue May 11 15:29:08 2010 -0700"
      },
      "message": "Added DirectTwoPorts\n\nAdded a test to egress a packet out two ports from a specified\ningress port.\n\nPasses on SW and LB6B\n"
    },
    {
      "commit": "ef701f4cf33eb44522c5d0e891940f360fd70de9",
      "tree": "bb3254e62466251e8e121c720b00d5f184cc5263",
      "parents": [
        "c87abbaa55015a0b287ca3804ef382213d7d5202"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Fri May 07 09:22:35 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Fri May 07 09:22:35 2010 -0700"
      },
      "message": "Debug changes; change sig handler signature\n"
    },
    {
      "commit": "d344c90510ad5eea85eaced29c252ecdd7e7c9f0",
      "tree": "55d9719fc54fbcade1901fb0df1ea069e6b0ca69",
      "parents": [
        "a85e566a841ed810cacadb1ee43b77dcf5094bbc"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@figment-tres.Stanford.EDU",
        "time": "Tue May 04 13:02:11 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@figment-tres.Stanford.EDU",
        "time": "Tue May 04 13:02:11 2010 -0700"
      },
      "message": "Add sleep before starting with option not to wait\n"
    },
    {
      "commit": "cc047ac546c808bbb011d5f3376ee8294ce9b246",
      "tree": "e22c0297a4269dcc31ddb9a8be9141f65abe449e",
      "parents": [
        "02eca0bcaec4f28d914dd0fb63d7ab34f38c5679"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Fri Apr 16 09:13:08 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Fri Apr 16 09:13:08 2010 -0700"
      },
      "message": "Script to run OF daemons on local host\n"
    },
    {
      "commit": "02eca0bcaec4f28d914dd0fb63d7ab34f38c5679",
      "tree": "754a36e01d9b51600401869fca93c9edb6fa3288",
      "parents": [
        "f8e80dd88f1ead8f403097180f9c83fad1d561e0"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Thu Apr 15 16:09:43 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Thu Apr 15 16:09:43 2010 -0700"
      },
      "message": "Merge resolution and scapy check\n"
    },
    {
      "commit": "f8e80dd88f1ead8f403097180f9c83fad1d561e0",
      "tree": "8774404668ef4c85493856d7632d217b914a5552",
      "parents": [
        "7dd6cd6035742b47c89212b19a001f2b4663173d",
        "446c143accbc42632cdd2d5ce0e58dad09540399"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Thu Apr 15 14:06:21 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Thu Apr 15 14:06:21 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of yuba:/usr/local/git/openflow-projects/oftest\n"
    },
    {
      "commit": "446c143accbc42632cdd2d5ce0e58dad09540399",
      "tree": "84db00e3fc3068037659ba16bbbe91f2ee4f328a",
      "parents": [
        "88f709d85ba4950bc22d1edd84933a2512c235a2"
      ],
      "author": {
        "name": "Brandon Heller",
        "email": "brandonh@stanford.edu",
        "time": "Thu Apr 01 12:43:27 2010 -0700"
      },
      "committer": {
        "name": "Brandon Heller",
        "email": "brandonh@stanford.edu",
        "time": "Thu Apr 01 12:43:27 2010 -0700"
      },
      "message": "Exit and print help if not started with root privileges\n"
    },
    {
      "commit": "88f709d85ba4950bc22d1edd84933a2512c235a2",
      "tree": "74ca167a9d04f99500f37eb156771aadfabe09f8",
      "parents": [
        "824504ec6276e02e039be5096518d8bd1913e0df"
      ],
      "author": {
        "name": "Brandon Heller",
        "email": "brandonh@stanford.edu",
        "time": "Thu Apr 01 12:29:56 2010 -0700"
      },
      "committer": {
        "name": "Brandon Heller",
        "email": "brandonh@stanford.edu",
        "time": "Thu Apr 01 12:29:56 2010 -0700"
      },
      "message": "Fix typo\n"
    },
    {
      "commit": "824504ec6276e02e039be5096518d8bd1913e0df",
      "tree": "a11c2bb9f2472a72965d519f0a5a49af0d5b1c07",
      "parents": [
        "8dbfea5cf229ade6af18ebe01e2408a8ce0227f4"
      ],
      "author": {
        "name": "Brandon Heller",
        "email": "brandonh@stanford.edu",
        "time": "Thu Apr 01 12:21:37 2010 -0700"
      },
      "committer": {
        "name": "Brandon Heller",
        "email": "brandonh@stanford.edu",
        "time": "Thu Apr 01 12:21:37 2010 -0700"
      },
      "message": "Fix --list help text\n"
    },
    {
      "commit": "7dd6cd6035742b47c89212b19a001f2b4663173d",
      "tree": "1e93f97dab070178ad9880f2ac619a350d1357b6",
      "parents": [
        "8dbfea5cf229ade6af18ebe01e2408a8ce0227f4"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue Mar 16 15:02:35 2010 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue Mar 16 15:02:35 2010 -0700"
      },
      "message": "Make sure to qualify on ingress port\n"
    },
    {
      "commit": "f8f414044a9b30bd697b2d2fc89998b75e1dcbaa",
      "tree": "08eedd617fd019ff09b1203c910eb69f9c148054",
      "parents": [
        "958f3b9e93b6110735fab508e5868526e40e61fb"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@snowcrash.dbd.mogulmouse.net",
        "time": "Fri Mar 12 22:17:39 2010 -0800"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@snowcrash.dbd.mogulmouse.net",
        "time": "Fri Mar 12 22:17:39 2010 -0800"
      },
      "message": "Join with controller thread on clean shutdown\n"
    },
    {
      "commit": "79f3608496bd5c1f10b5414e787407d00bc23a50",
      "tree": "c78c70781ad2ccd8de3bc809be441f38ad0e891a",
      "parents": [
        "b21c7222b747558f9cf6eca587019df3561735fe"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Thu Mar 11 16:53:53 2010 -0800"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Thu Mar 11 16:53:53 2010 -0800"
      },
      "message": "Updated README; added test descriptions to --list\n"
    },
    {
      "commit": "d2ca1031708f717da7e8db5b05a87972a0a429a9",
      "tree": "6be35dcf9ae05fd5cbde36552cb86cf6a266a21a",
      "parents": [
        "0db53eb3dd0c33696698798244ca2f397b8b2ba8"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Wed Mar 10 14:40:26 2010 -0800"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Wed Mar 10 14:40:26 2010 -0800"
      },
      "message": "As much as possible, remove dependence on python 2.5\n"
    },
    {
      "commit": "5eba844727d48f669c643238ccf4ed2cb6204c1c",
      "tree": "2d2540cc4c864ea9c56bc3acf8d7246b1c080bd6",
      "parents": [
        "41eae8b0cd00fa1f39f1d9fa3851714bba3ce8ad"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Wed Mar 10 13:58:43 2010 -0800"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Wed Mar 10 13:58:43 2010 -0800"
      },
      "message": "Initial addition of packet action test module\n"
    },
    {
      "commit": "41eae8b0cd00fa1f39f1d9fa3851714bba3ce8ad",
      "tree": "e36858b835d84ec3aa683b3967751033ca4a80f1",
      "parents": [
        "de2a639e0b2ccec1b367604d7eed9711183abc35"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Wed Mar 10 13:57:06 2010 -0800"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Wed Mar 10 13:57:06 2010 -0800"
      },
      "message": "Added simple packet creator in test utils\nVarious fixes for basic tests, delete all flows, etc\n"
    },
    {
      "commit": "de2a639e0b2ccec1b367604d7eed9711183abc35",
      "tree": "8e085e0795ff92c864fa6270549ed30063f99c05",
      "parents": [
        "11e598b47c15de2aef5be45b9acabee0dee53b55"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Wed Mar 10 13:56:51 2010 -0800"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Wed Mar 10 13:56:51 2010 -0800"
      },
      "message": "Ignore tmp files\n"
    },
    {
      "commit": "1a88c12344b8e76a1a7a620809bcc61abafb3db6",
      "tree": "61b60733044348a214e4cdcf83acf10f1a207e48",
      "parents": [
        "6ce963aef617e2cfd52c966d374f78cf466c9337"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Sun Mar 07 22:00:20 2010 -0800"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Sun Mar 07 22:00:20 2010 -0800"
      },
      "message": "Comment changes\n"
    },
    {
      "commit": "6ce963aef617e2cfd52c966d374f78cf466c9337",
      "tree": "3ba902f4685d60ca49c75a8e281da548f6a8024e",
      "parents": [
        "1ddefbf6f066017dedea31978f145080d97a4362"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Sun Mar 07 21:58:13 2010 -0800"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Sun Mar 07 21:58:13 2010 -0800"
      },
      "message": "Various updates to basic test set\n\nSimplified names by removing TestCase from them\nAdded back FlowStats test case\nAdded FlowMod test case\n"
    },
    {
      "commit": "c901f4d5185672a023b66a83a6f597a6b5ca54fe",
      "tree": "10e78ab51f64e6d5337451fb7c978a55a4cb887a",
      "parents": [
        "88fc880c14f6f11f53277c9978627f05f1b232e1"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Sun Mar 07 21:55:45 2010 -0800"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Sun Mar 07 21:55:45 2010 -0800"
      },
      "message": "Added test utilities file with delete_all_flows\n"
    },
    {
      "commit": "88fc880c14f6f11f53277c9978627f05f1b232e1",
      "tree": "307ffde4aadb756186c8887222da36d7a23b9b1a",
      "parents": [
        "2f820be0471d1e249a71b6f27432b589de1854fb"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Sun Mar 07 11:37:52 2010 -0800"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Sun Mar 07 11:37:52 2010 -0800"
      },
      "message": "Support logging to console\n"
    },
    {
      "commit": "673e085388eaab2f11936cefcc1a06c77c963bf4",
      "tree": "5e1ccc182edbe0a22757cd627e78a86d2e3a3506",
      "parents": [
        "2c0dba3b10266936d137c8756ef5dbc41a48a67f"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Sat Mar 06 23:09:23 2010 -0800"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Sat Mar 06 23:09:23 2010 -0800"
      },
      "message": "Added install to Makefile\nUpdated README\nUpdated doc for test_spec\n"
    },
    {
      "commit": "2c0dba3b10266936d137c8756ef5dbc41a48a67f",
      "tree": "924417aa0c787ab2312751904e0c22eca92fe0c1",
      "parents": [
        "52f6444dcad3650d6eb0844ac140d69295335b5d"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Sat Mar 06 22:47:06 2010 -0800"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Sat Mar 06 22:47:06 2010 -0800"
      },
      "message": "Setup and test spec implementation\n\nSetup now installs code as normal conventions:\ncd oftest/src/python\npython setup.py install\n\nSee basic.py for recommended import conventions\n\nCommand line parsing significantly updated; allow --test-spec\nto indicate a module or specific tests to include.\n"
    },
    {
      "commit": "52f6444dcad3650d6eb0844ac140d69295335b5d",
      "tree": "fbbc02177b2b083b346b3ca92a3f1cb51019440f",
      "parents": [
        "60a8d7a25ab60d68466ee5cedea5f085c66b81d4"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Wed Mar 03 15:32:41 2010 -0800"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Wed Mar 03 15:32:41 2010 -0800"
      },
      "message": "Added comments about running locally\n"
    },
    {
      "commit": "4837010d858480e186a9aeb7b28dc2555db307d3",
      "tree": "57c9b4cb88846f288949fa0b53b66619f5b0352e",
      "parents": [
        "ea8ad807a0eef55315a251e055405ecdcc4fec41"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Wed Mar 03 15:17:33 2010 -0800"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Wed Mar 03 15:17:33 2010 -0800"
      },
      "message": "Major overhaul of oftest command interface\n\nAdded tests/oft as top level executable\n\nSupport command line options for many config params\n\nUse logging module for output\n\nGot rid of oft_config.py; consolidate configuration in\noft (top level script) and pass around as a dictionary\n\nAdd oft_assert.py (the one useful piece of oft_config that\nremained).\n"
    },
    {
      "commit": "e226eb1a8a8257d43dd8bf7d5a619f8bb12c18a6",
      "tree": "fa099163d1eb7bff8b79e58c0fb73f2f7e8f75cf",
      "parents": [
        "4557d783e2a5983c17c857d185fc102ed58c313b"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Thu Feb 18 23:06:30 2010 -0800"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Thu Feb 18 23:06:30 2010 -0800"
      },
      "message": "Mostly polling and timeout support\n\nSupport poll timeouts for controller messages\nSupport poll and timeouts for dataplane messages\nChanged name of dataplane pkt get to \u0027poll\u0027\nSix basic test cases now passing on LB4G\nAdded test-framework assertion\nAdded additional files to lint checking\n"
    },
    {
      "commit": "710438c723e18e9e0e2d2ef070f158ef7d24950a",
      "tree": "bc605e46253f8163a8c22613ce3b781bd0789c69",
      "parents": [
        "a92e75bcf162b6e998daa2ca7ffce2069dce9736"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Thu Feb 18 15:16:07 2010 -0800"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Thu Feb 18 15:16:07 2010 -0800"
      },
      "message": "Mostly changes to socket deployment\n\nUse select for handling sockets; hopefully better cleanup approach\n\nAdded connection semaphore for controller\nSupport message objects as arguments to controller.message_send\nSupport initial hello from controller when connected to switch\n"
    },
    {
      "commit": "a92e75bcf162b6e998daa2ca7ffce2069dce9736",
      "tree": "89c126a9d6ed770f6d840302f40c16396e666c0b",
      "parents": [
        "de8df18bc7e7f35ca2e50281f03221a7a0f9a5b4"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue Feb 16 20:53:56 2010 -0800"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Tue Feb 16 20:53:56 2010 -0800"
      },
      "message": "Typo in assert message\n"
    },
    {
      "commit": "dba244e62b83525246e9b3a88e801a34c6bdda7a",
      "tree": "ceedcdeae032960460a8f004ac31fc1f2a635b2b",
      "parents": [
        "5c99b3212cb6dadaadad2fce95f9aa2e5c3c0ef9"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Mon Feb 15 14:08:53 2010 -0800"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dtalayco@stanford.edu",
        "time": "Mon Feb 15 14:08:53 2010 -0800"
      },
      "message": "Basic test file\n"
    }
  ]
}
