)]}'
{
  "log": [
    {
      "commit": "6192e51d479a87cc525cebe0d1df4656f9a886e0",
      "tree": "2ff5e466310fc69c0c9c685c6f50155617a511bb",
      "parents": [
        "9e55e282acfe725a663fca03771bcb496f0d401e"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Wed Aug 22 11:41:40 2012 -0700"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Wed Aug 22 11:41:40 2012 -0700"
      },
      "message": "Fix a couple of bugs\n"
    },
    {
      "commit": "9e55e282acfe725a663fca03771bcb496f0d401e",
      "tree": "fdfd1394d64ac3cf6620de2adeb87267583d9ff1",
      "parents": [
        "c7193a2c126a18d0c3821675fd3e6a921fd36fb8"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Wed Aug 22 06:57:28 2012 -0700"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Wed Aug 22 07:46:42 2012 -0700"
      },
      "message": "Change controller.message_send to use exceptions for exceptional conditions\ninstead of converting them to return codes and losing useful information in the\nprocess; fix a minor bug in controller.poll\n"
    },
    {
      "commit": "c7193a2c126a18d0c3821675fd3e6a921fd36fb8",
      "tree": "a49ab598640113c73a2ad1c90bd42bc8011c105e",
      "parents": [
        "3ae7f71b04f9cab83bacdb78a723e9e7a05c75d9"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Wed Aug 22 06:51:02 2012 -0700"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Wed Aug 22 07:46:42 2012 -0700"
      },
      "message": "Always do a handshake (send features request, wait for features reply) since\nthe switch might not send packet-ins until it\u0027s done\n"
    },
    {
      "commit": "3ae7f71b04f9cab83bacdb78a723e9e7a05c75d9",
      "tree": "fc7d7b60aa8689db7ad03ec8b1230a3ff18dd400",
      "parents": [
        "99a74de7d93a1205a15254945cd514060b97e4bb"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Wed Aug 22 06:45:25 2012 -0700"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Wed Aug 22 07:46:42 2012 -0700"
      },
      "message": "Implement a variant of basic.PacketIn for switches that drop packets\nnot matching any flow table entry rather than sending them to the\ncontroller\n"
    },
    {
      "commit": "99a74de7d93a1205a15254945cd514060b97e4bb",
      "tree": "06e3762787aca45da85553559477330b0d4daf8f",
      "parents": [
        "17d9889d252245df184e1c42b078bcadc14ecd26"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Wed Aug 22 06:40:54 2012 -0700"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Wed Aug 22 07:46:36 2012 -0700"
      },
      "message": "Implement a required_wildcards setting to allow testing switches that\ndon\u0027t support certain match fields; implement l3-l4 for forcing\nwildcarding of all L3 and L4 fields; clean up flow_query test a bit\n"
    },
    {
      "commit": "17d9889d252245df184e1c42b078bcadc14ecd26",
      "tree": "84df35d25529e2dc2b79bbf53569d9bda12ee744",
      "parents": [
        "022d02e8197a19fd505b793f02962bcd5319dc62"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Wed Aug 22 06:34:32 2012 -0700"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Wed Aug 22 06:34:32 2012 -0700"
      },
      "message": "Remove garbage that was turning pktact.SingleWildcardMatchPriority into a no-op\n"
    },
    {
      "commit": "022d02e8197a19fd505b793f02962bcd5319dc62",
      "tree": "733ecb476234d0faa01609a074b56b7cf48f7d62",
      "parents": [
        "6a3698d7296433b26ec5146370a1915b6e7e63ae"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Wed Aug 22 06:26:36 2012 -0700"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Wed Aug 22 06:26:36 2012 -0700"
      },
      "message": "Ignore errors from attempting to install a SIGINT handler from a thread\nother than the main thread, e.g. if you use another harness (not oft)\nto launch the test case\n"
    },
    {
      "commit": "6a3698d7296433b26ec5146370a1915b6e7e63ae",
      "tree": "5514ac3ec17b92a0dc57c96525551c57d201a92f",
      "parents": [
        "b10a47a3b60fcc98c0fb137fe5c140de0648e6ed"
      ],
      "author": {
        "name": "Howard Persh",
        "email": "howard.persh@bigswitch.com",
        "time": "Tue Aug 21 14:26:39 2012 -0700"
      },
      "committer": {
        "name": "Howard Persh",
        "email": "howard.persh@bigswitch.com",
        "time": "Tue Aug 21 14:26:39 2012 -0700"
      },
      "message": "For conservative ordered actions, set vlan id/pcp and strip vlan are mutually exclusive.\n"
    },
    {
      "commit": "b10a47a3b60fcc98c0fb137fe5c140de0648e6ed",
      "tree": "3e0e56a31062bcdea5f5a5f174f01abad4c19e95",
      "parents": [
        "5cb7ed32e786dca734c86a8115c1430dba44eccb"
      ],
      "author": {
        "name": "Howard Persh",
        "email": "howard.persh@bigswitch.com",
        "time": "Tue Aug 21 13:54:47 2012 -0700"
      },
      "committer": {
        "name": "Howard Persh",
        "email": "howard.persh@bigswitch.com",
        "time": "Tue Aug 21 13:54:47 2012 -0700"
      },
      "message": "Added ability to specify VLAN ids to be used in test.\n"
    },
    {
      "commit": "5cb7ed32e786dca734c86a8115c1430dba44eccb",
      "tree": "66eef78e075f1733917c4931a9b1c4df5c3447b9",
      "parents": [
        "6614f9767beea888f9298dcacfcd76b97782816c"
      ],
      "author": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Fri Aug 17 18:11:01 2012 +0000"
      },
      "committer": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Fri Aug 17 18:11:01 2012 +0000"
      },
      "message": "Added option \"--minsize\"\n\n  The \u0027minsize\u0027 parameter specifies the minimum allowable packet size on the dataplane.\n  All test packet sizes use this as the floor.\n  The default is 0.\n"
    },
    {
      "commit": "6614f9767beea888f9298dcacfcd76b97782816c",
      "tree": "fb17060258d60875ccb8221cddc0ed8b9f5c786d",
      "parents": [
        "50051c7e9cd9e208f4a081674f5e557791c51fdd"
      ],
      "author": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Thu Aug 16 13:27:18 2012 -0700"
      },
      "committer": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Thu Aug 16 13:27:18 2012 -0700"
      },
      "message": "- Added \"--list-test-names\" option.\n\n  This option prints only the list of tests, without documentation.\n"
    },
    {
      "commit": "50051c7e9cd9e208f4a081674f5e557791c51fdd",
      "tree": "b8d34e16aa9b2b2b5da245c1650c4430ddb0fdea",
      "parents": [
        "1d4239278e76c679430e4ecb51411b0b3778cfc9"
      ],
      "author": {
        "name": "Shudong Zhou",
        "email": "shudongzhou@gmail.com",
        "time": "Mon Aug 06 16:53:46 2012 -0700"
      },
      "committer": {
        "name": "Shudong Zhou",
        "email": "shudongzhou@gmail.com",
        "time": "Mon Aug 06 16:53:46 2012 -0700"
      },
      "message": "Use differential packet count in port_stats + cleanup\n"
    },
    {
      "commit": "1d4239278e76c679430e4ecb51411b0b3778cfc9",
      "tree": "09990cd984467d051a560d6ff438604e012bc536",
      "parents": [
        "e3582a53e893629ad9352f80f838f2ebd97097a3"
      ],
      "author": {
        "name": "Shudong Zhou",
        "email": "shudongzhou@gmail.com",
        "time": "Sat Aug 04 16:45:02 2012 -0700"
      },
      "committer": {
        "name": "Shudong Zhou",
        "email": "shudongzhou@gmail.com",
        "time": "Sat Aug 04 16:45:02 2012 -0700"
      },
      "message": "Add port_stats.MultiFlowStats\n"
    },
    {
      "commit": "e3582a53e893629ad9352f80f838f2ebd97097a3",
      "tree": "80112d5ed5d30e914f2961633753b0a90648204b",
      "parents": [
        "df510a8e66a9f9ac0b43cd6545cc0b70e5197d3d"
      ],
      "author": {
        "name": "Shudong Zhou",
        "email": "shudongzhou@gmail.com",
        "time": "Fri Aug 03 20:46:50 2012 -0700"
      },
      "committer": {
        "name": "Shudong Zhou",
        "email": "shudongzhou@gmail.com",
        "time": "Fri Aug 03 20:46:50 2012 -0700"
      },
      "message": "Unclean teardown in basic.DataPlaneOnly causes problems for subsequent tests\n"
    },
    {
      "commit": "df510a8e66a9f9ac0b43cd6545cc0b70e5197d3d",
      "tree": "147693a98d057d13ddad028d9f170683e447c75b",
      "parents": [
        "d895fcb24c236c8b4737220e6f15c3c0f84e2205"
      ],
      "author": {
        "name": "Shudong Zhou",
        "email": "shudongzhou@gmail.com",
        "time": "Fri Aug 03 18:08:40 2012 -0700"
      },
      "committer": {
        "name": "Shudong Zhou",
        "email": "shudongzhou@gmail.com",
        "time": "Fri Aug 03 18:08:40 2012 -0700"
      },
      "message": "Add port stats test\n"
    },
    {
      "commit": "d895fcb24c236c8b4737220e6f15c3c0f84e2205",
      "tree": "abf14ccc1c552e94a61109dd720599434b100501",
      "parents": [
        "941d1dd39104433aafb4b2942871daec59bb2c79"
      ],
      "author": {
        "name": "Shudong Zhou",
        "email": "shudongzhou@gmail.com",
        "time": "Wed Aug 01 19:09:55 2012 -0700"
      },
      "committer": {
        "name": "Shudong Zhou",
        "email": "shudongzhou@gmail.com",
        "time": "Wed Aug 01 19:10:24 2012 -0700"
      },
      "message": "oft frequently hangs on error exit\n"
    },
    {
      "commit": "941d1dd39104433aafb4b2942871daec59bb2c79",
      "tree": "f38db48ce399e50fad64ee631768f28a2241e16b",
      "parents": [
        "1aeccc4649697803a7aefe4624e5d106653ec640"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Jul 30 14:27:53 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Jul 30 14:29:54 2012 -0700"
      },
      "message": "add platform_args to config dictionary and add a short option alias\n"
    },
    {
      "commit": "1aeccc4649697803a7aefe4624e5d106653ec640",
      "tree": "c9b223da3b334485b8916129ce6bdfa31477c66a",
      "parents": [
        "51c23b377a9e6c4f8de0653056f787fd825ecbee"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Sun Jul 29 17:58:10 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Sun Jul 29 17:58:10 2012 -0700"
      },
      "message": "default to listening on INADDR_ANY\n"
    },
    {
      "commit": "51c23b377a9e6c4f8de0653056f787fd825ecbee",
      "tree": "093788287bbade6924c138e53145504509e936a5",
      "parents": [
        "e55abf725e212af6708e7cbed639fbf451537662"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Jul 27 16:37:25 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Jul 27 16:37:25 2012 -0700"
      },
      "message": "add test pktact.DirectPacketController\n"
    },
    {
      "commit": "e55abf725e212af6708e7cbed639fbf451537662",
      "tree": "28ad8c71352d9ea8d5474faae661c0b71aca90f1",
      "parents": [
        "c8aaa3e5376205cee5094d8c0d6dcb23cba8ea40"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jul 26 20:11:42 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jul 26 20:11:42 2012 -0700"
      },
      "message": "add --default-timeout option\n"
    },
    {
      "commit": "c8aaa3e5376205cee5094d8c0d6dcb23cba8ea40",
      "tree": "45affb6a2979770637e84e82e7865a853f80391a",
      "parents": [
        "8806bc4712c5bee1eb48a6cb1d94380150c86935"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jul 26 19:28:02 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jul 26 20:11:11 2012 -0700"
      },
      "message": "use default timeout in most cases\n"
    },
    {
      "commit": "8806bc4712c5bee1eb48a6cb1d94380150c86935",
      "tree": "d7ce3e7185941cfb6b527bf1241f785b19c68b59",
      "parents": [
        "db9d866ddc23f7520f25485b98ab18dd40ac8bc1"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jul 26 19:18:37 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jul 26 19:18:37 2012 -0700"
      },
      "message": "standardize on -1 for default timeouts\n"
    },
    {
      "commit": "db9d866ddc23f7520f25485b98ab18dd40ac8bc1",
      "tree": "b9ef8480c62cf2f7f7e4f698bf68c7e8ef2d6bf2",
      "parents": [
        "e1da7eaf40daddec475b57becd8c367a0b51a992"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jul 26 18:04:24 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jul 26 18:04:24 2012 -0700"
      },
      "message": "fix usage of condition variables in dataplane\n"
    },
    {
      "commit": "e1da7eaf40daddec475b57becd8c367a0b51a992",
      "tree": "89c607bf9582f5354f0fd1da609211b18b5e3420",
      "parents": [
        "b64ce3dc57d2adb8fe5df16683b1aadca5c29534"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jul 26 15:58:45 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jul 26 15:58:45 2012 -0700"
      },
      "message": "convert controller.py to use timed_wait\n"
    },
    {
      "commit": "b64ce3dc57d2adb8fe5df16683b1aadca5c29534",
      "tree": "4357840a680fa6f51c17d2f293e9c2bb4e7eca36",
      "parents": [
        "17cdb12b642280be8525186fb12d8fc7641a5fd9"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jul 26 15:37:57 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jul 26 15:37:57 2012 -0700"
      },
      "message": "factor out ofutils.timed_wait and simplify Controller.poll\n"
    },
    {
      "commit": "17cdb12b642280be8525186fb12d8fc7641a5fd9",
      "tree": "399ff35ca8727104ebe5810c6a5d631bd59ee226",
      "parents": [
        "f261a10c57ade1a05a7466cc4bf50238e9c2b6c8",
        "ef2fc7e6550f7728d3ce60b630e085306069bddd"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Wed Jul 25 13:41:53 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Wed Jul 25 13:41:53 2012 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of github.com:floodlight/oftest\n"
    },
    {
      "commit": "f261a10c57ade1a05a7466cc4bf50238e9c2b6c8",
      "tree": "5d55068bf5cb8c6ea1c828f58586564d11150ff9",
      "parents": [
        "031373ca0dd8c4b8ecb821b7dd18a48340b61d29"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Wed Jul 25 13:41:38 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Wed Jul 25 13:41:38 2012 -0700"
      },
      "message": "add -T alias for --test-spec\n"
    },
    {
      "commit": "ef2fc7e6550f7728d3ce60b630e085306069bddd",
      "tree": "83f3cd04667de1cc0ad294679030d0d633cc7429",
      "parents": [
        "f7c413134a02a807d50880196a9e2b3e73a382ca"
      ],
      "author": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Mon Jul 23 15:16:47 2012 -0700"
      },
      "committer": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Mon Jul 23 15:16:47 2012 -0700"
      },
      "message": "Added command line option \"--platform-args\".\nThis allows arguments to be passed to the platform config file for additional\nprocessing.\n"
    },
    {
      "commit": "f7c413134a02a807d50880196a9e2b3e73a382ca",
      "tree": "1f944aea589d89e67550bf3ed965bf08685b467b",
      "parents": [
        "031373ca0dd8c4b8ecb821b7dd18a48340b61d29"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Mon Jul 23 12:53:19 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Mon Jul 23 12:53:19 2012 -0700"
      },
      "message": "Add comment to FlowToggle and set command\n"
    },
    {
      "commit": "031373ca0dd8c4b8ecb821b7dd18a48340b61d29",
      "tree": "58900facbfe73250f4104d61c79c0796c3fb5f76",
      "parents": [
        "9a84a4f2197ad5ca6ea53823724de4b8c214e529"
      ],
      "author": {
        "name": "Shudong Zhou",
        "email": "shudongzhou@gmail.com",
        "time": "Thu Jul 19 17:37:42 2012 -0700"
      },
      "committer": {
        "name": "Shudong Zhou",
        "email": "shudongzhou@gmail.com",
        "time": "Thu Jul 19 17:40:11 2012 -0700"
      },
      "message": "pktact.FlowToggle: of_port index out of range\n"
    },
    {
      "commit": "9a84a4f2197ad5ca6ea53823724de4b8c214e529",
      "tree": "34a85d8949cc4d093272190bb0608f5d3f6389f2",
      "parents": [
        "50d42eb224fe4159c6cc5652f2f6c387f498b031"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Tue Jul 17 12:27:42 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Tue Jul 17 12:27:42 2012 -0700"
      },
      "message": "add --fail-skipped option\n"
    },
    {
      "commit": "50d42eb224fe4159c6cc5652f2f6c387f498b031",
      "tree": "1eacf7e76062c3e0b00f1c9b88192efba17a8b3a",
      "parents": [
        "28dd03d6c5d04808f2b4642d91147703500a3302"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Jul 16 11:57:03 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Jul 16 11:57:03 2012 -0700"
      },
      "message": "return error status on test errors as well as failures\n"
    },
    {
      "commit": "28dd03d6c5d04808f2b4642d91147703500a3302",
      "tree": "e395ce1af8824227711f48a9dafb1003f9873384",
      "parents": [
        "ee57ad0d1ea11442a51dbe314fe872c48e664ee9"
      ],
      "author": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Mon Jul 16 11:53:11 2012 -0700"
      },
      "committer": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Mon Jul 16 11:53:11 2012 -0700"
      },
      "message": "- Added \"--dpid\" option to set the bridge dpid. Default is random.\n- Added shortcut cli command \u0027flowtable\u0027, which executes \u0027ofctl dump-flows ofbr0\u0027\n"
    },
    {
      "commit": "ee57ad0d1ea11442a51dbe314fe872c48e664ee9",
      "tree": "242d9879200749ea50a41192d673fed34144688d",
      "parents": [
        "9aca199e38890652679287dc5b2ff93cfa2ac6a0"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Jul 13 15:40:36 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Fri Jul 13 15:40:36 2012 -0700"
      },
      "message": "add an option to allow running as non-root\n"
    },
    {
      "commit": "9aca199e38890652679287dc5b2ff93cfa2ac6a0",
      "tree": "fe7f1e6bda53e514f9743ef0e312dc018a3e94ab",
      "parents": [
        "ee3586c6de57b92debf64ca0726383cf1d93554b"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Wed Jul 11 17:26:31 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jul 12 11:56:46 2012 -0700"
      },
      "message": "fix multithreading issues with xid_response\n"
    },
    {
      "commit": "ee3586c6de57b92debf64ca0726383cf1d93554b",
      "tree": "5a9bcb8c5e8f010dd2baa88b546a8a35a362bc83",
      "parents": [
        "c4f071b6570c3305007a0f83bf827709dc88ceb8"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Wed Jul 11 17:26:02 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jul 12 11:47:01 2012 -0700"
      },
      "message": "Use the \"with\" statement to acquire a few locks\n\nThis ensures that the locks are released if an exception occurs.\n"
    },
    {
      "commit": "c4f071b6570c3305007a0f83bf827709dc88ceb8",
      "tree": "0f619d0cb7402213b7fff82afc5d60a2670690db",
      "parents": [
        "58cf05fd00d425329cb251267f668546535de397"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Wed Jul 11 17:25:57 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jul 12 11:44:26 2012 -0700"
      },
      "message": "fix multithreading issues with packet queue\n\nThis change probably breaks some of the semantics of handling incoming openflow\nmessages.\n"
    },
    {
      "commit": "58cf05fd00d425329cb251267f668546535de397",
      "tree": "a04492453054feb81939f6f7e3bedf0a354813e3",
      "parents": [
        "76cce9136e865a1ba25daeb92c2b6ab97519d41a"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Wed Jul 11 16:41:47 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Thu Jul 12 01:56:04 2012 -0700"
      },
      "message": "improve error handling in tests/basic.py\n"
    },
    {
      "commit": "76cce9136e865a1ba25daeb92c2b6ab97519d41a",
      "tree": "5bc8d7e0bb912e94a147361070c7b27a99512f9c",
      "parents": [
        "8c3af7f5d0325e550b02367f83de186b662870e8"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Wed Jul 11 18:59:34 2012 -0700"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Wed Jul 11 18:59:34 2012 -0700"
      },
      "message": "Test BSN vendor extension for configuring IP source/dest match mask\n"
    },
    {
      "commit": "8c3af7f5d0325e550b02367f83de186b662870e8",
      "tree": "4888b76e8798ffcd6db831d53d6282bcda5fa04f",
      "parents": [
        "0e8b0924791643ce114c68fac2e4aaefd3b3863d"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Tue Apr 24 14:19:17 2012 -0700"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Wed Jul 11 18:10:03 2012 -0700"
      },
      "message": "Fix checking of set_vlan_pcp action capability\n"
    },
    {
      "commit": "0e8b0924791643ce114c68fac2e4aaefd3b3863d",
      "tree": "331f4f40327e6422804550d8877b56559ddc7adf",
      "parents": [
        "4d5ca926e657cb15cbac8c61f6e35590ec99615a"
      ],
      "author": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Wed Jul 11 11:37:46 2012 -0700"
      },
      "committer": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Wed Jul 11 11:37:46 2012 -0700"
      },
      "message": "- The DataPlane class now accepts the global configuration when created.\n- The DataPlane class now allows the platform/configuration to override\n  the class used for port traffic. The default class remains DataPlanePort.\n"
    },
    {
      "commit": "4d5ca926e657cb15cbac8c61f6e35590ec99615a",
      "tree": "e8b20fa91c922d916b4bca206f9f9af85c6197c4",
      "parents": [
        "8ed984711821afb39f73990a88cc37edfdb07ff2"
      ],
      "author": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Wed Jul 11 11:37:35 2012 -0700"
      },
      "committer": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Wed Jul 11 11:37:35 2012 -0700"
      },
      "message": "DataPlane() now accepts the configuration.\n"
    },
    {
      "commit": "8ed984711821afb39f73990a88cc37edfdb07ff2",
      "tree": "10e9ef85e31f64aa13ad36ae3e9b0cf09a8dceaf",
      "parents": [
        "20a3da53bc0971be388361d3eaff01ea5e55091e"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Wed Jul 11 10:34:52 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Wed Jul 11 10:34:52 2012 -0700"
      },
      "message": "add gitignores\n"
    },
    {
      "commit": "20a3da53bc0971be388361d3eaff01ea5e55091e",
      "tree": "f1d765dda4e0af00f4561f1cf4bb4ed4b07791c5",
      "parents": [
        "6a1ecb8edd10f2874cc1ceb991c9b46454b1ad0e"
      ],
      "author": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Wed Jul 11 09:13:57 2012 -0700"
      },
      "committer": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Wed Jul 11 09:13:57 2012 -0700"
      },
      "message": "Add serial failover tests.\n"
    },
    {
      "commit": "6a1ecb8edd10f2874cc1ceb991c9b46454b1ad0e",
      "tree": "751035c6fce7770d40f4e74a02c8d69695458d5f",
      "parents": [
        "9d7330a9a5253ceede764e0d812f404c1c4c1831"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Tue Jul 10 18:59:44 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Tue Jul 10 18:59:44 2012 -0700"
      },
      "message": "exit(1) if a test failed\n"
    },
    {
      "commit": "9d7330a9a5253ceede764e0d812f404c1c4c1831",
      "tree": "c900cdd07270277a03d06a6f8b34f4cc9998a5a8",
      "parents": [
        "6b452bccc97e2b21f2c5ee4529d181f22d5ef6f4"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Tue Jul 10 14:37:44 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Tue Jul 10 14:37:44 2012 -0700"
      },
      "message": "default test_dir to directory containing oft\n\nThis avoids long runs of find(1) when oft looks for test files.\n"
    },
    {
      "commit": "6b452bccc97e2b21f2c5ee4529d181f22d5ef6f4",
      "tree": "f4f8a6ab3e8a3937d0e0970c23f6f16c729422c8",
      "parents": [
        "520e415a8f4d16b5440e0cef20b3064cfe5983bf"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Jul 09 16:52:21 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Jul 09 16:52:21 2012 -0700"
      },
      "message": "support running oft from any working directory\n"
    },
    {
      "commit": "520e415a8f4d16b5440e0cef20b3064cfe5983bf",
      "tree": "06fed710f68154ea6583904e0dcbc8bc13f7e2a4",
      "parents": [
        "1fac154b8aeaa1039d3ed24ca989fad15c82e9bd"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Jul 09 16:18:16 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Jul 09 16:18:16 2012 -0700"
      },
      "message": "simplify searching for testcase classes\n"
    },
    {
      "commit": "1fac154b8aeaa1039d3ed24ca989fad15c82e9bd",
      "tree": "c5eea03e0f2162bffa49660d407cbab01b8a8ab2",
      "parents": [
        "ef403e5ee91fec738e3c884db0210121065a16de"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Jul 09 16:10:45 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Jul 09 16:11:29 2012 -0700"
      },
      "message": "clean up getting test module name\n"
    },
    {
      "commit": "ef403e5ee91fec738e3c884db0210121065a16de",
      "tree": "ee122c1aabaf410f6481746369526eed892aabbd",
      "parents": [
        "398780430d7f222b07ee9cf3e4c1e2a90dda84e7"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Jul 09 14:59:43 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Jul 09 14:59:43 2012 -0700"
      },
      "message": "ignore fewer exceptions\n"
    },
    {
      "commit": "398780430d7f222b07ee9cf3e4c1e2a90dda84e7",
      "tree": "ee2a2b59968a99858f23c0b1f04b9fe242338765",
      "parents": [
        "3978f24c0b64a8e4d51ef75beda47998c4583bb0"
      ],
      "author": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Jul 09 14:45:35 2012 -0700"
      },
      "committer": {
        "name": "Rich Lane",
        "email": "rich.lane@bigswitch.com",
        "time": "Mon Jul 09 14:45:35 2012 -0700"
      },
      "message": "supporting running from source tree\n"
    },
    {
      "commit": "3978f24c0b64a8e4d51ef75beda47998c4583bb0",
      "tree": "8a92a319dd6be67f3ca3293be0a6151a930076e5",
      "parents": [
        "899ff8e0325247413c979c7a6364b537e3b896c0"
      ],
      "author": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Wed Jun 13 14:14:09 2012 -0700"
      },
      "committer": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Wed Jun 13 14:14:09 2012 -0700"
      },
      "message": "Fix typo.\nRename pktact.WildcardPriority2 to pktact.WildcardPriorityWithDelete.\n"
    },
    {
      "commit": "899ff8e0325247413c979c7a6364b537e3b896c0",
      "tree": "80e118e35098717c46bd1fae8d24e530986932e5",
      "parents": [
        "38d7a15a551c7280376298026e83912af9902d8b"
      ],
      "author": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Wed May 23 18:26:12 2012 -0700"
      },
      "committer": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Wed May 23 18:26:12 2012 -0700"
      },
      "message": "Add DirectPacketControllerQueue test case.\n"
    },
    {
      "commit": "38d7a15a551c7280376298026e83912af9902d8b",
      "tree": "624fddc74704105456889583d91824b6de6b2182",
      "parents": [
        "1f648cbc82ca59a53155c90134de34b0758864be"
      ],
      "author": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Thu May 24 15:33:50 2012 -0700"
      },
      "committer": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Thu May 24 15:38:58 2012 -0700"
      },
      "message": "In WildcardPriority: sandwich the exact match flow with wildcarded flows.\nAdd WildcardPriority2, which sandwiches a wildcarded flow with exact match\nflows, and also deletes flows.\n"
    },
    {
      "commit": "1f648cbc82ca59a53155c90134de34b0758864be",
      "tree": "8e90c18b28af4956e08e65b732240f717cd27f9a",
      "parents": [
        "1729fdb9b9a1e41529e4b9ad035c919991ca780b"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Thu May 03 09:37:56 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Thu May 03 09:39:19 2012 -0700"
      },
      "message": "Added test PacketInBroadcastCheck\n\nThere was a complaint about a switch which appeared to leak\nbroadcast packets when no flows had been installed.  This test\nchecks that.  It is not run by default since we don\u0027t yet know\nwhat behavior to expect in the wild.\n"
    },
    {
      "commit": "1729fdb9b9a1e41529e4b9ad035c919991ca780b",
      "tree": "5e62ce8d54c56629f47352c465212bedf03b6690",
      "parents": [
        "2757e0a1d9d166fde09a50432dc05e768b5a9283"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Thu May 03 09:35:56 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Thu May 03 09:39:19 2012 -0700"
      },
      "message": "Support specifying expect pkt and not expect port\n\nPreviously, in dataplane poll, if you did not specify a port, then\nspecifying an expected packet would be ignored.\n"
    },
    {
      "commit": "2757e0a1d9d166fde09a50432dc05e768b5a9283",
      "tree": "016ef207acf9e85647e9b5e24fcaa4e4d04efbc9",
      "parents": [
        "412ea9454ea1621c02667121e99894eb4b2a1a3e"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Wed May 02 09:28:52 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Wed May 02 09:28:52 2012 -0700"
      },
      "message": "Fix syntax error and move barrier request\n\nThere was an old syntax error from when a utility function was\nmoved out from a class.\n\nMoved the barrier request to be run every N times (same as table\nstat check) rather then after every flow insert. Speeds up tests\nby a couple orders of magnitude in general.\n"
    },
    {
      "commit": "412ea9454ea1621c02667121e99894eb4b2a1a3e",
      "tree": "526bc0cc6f75ed968d7db2ee4c96567eae1bbccf",
      "parents": [
        "460dc86c50f7726ab56730419154341555b88405"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Mon Apr 23 15:06:50 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Mon Apr 23 15:08:44 2012 -0700"
      },
      "message": "Added flow query test plan\n"
    },
    {
      "commit": "460dc86c50f7726ab56730419154341555b88405",
      "tree": "b4f235b7434b3a0300d20ad1f4d7b5202ba5c657",
      "parents": [
        "4766d8e84bb8f368cfa0090b699e3c97efda4ec8",
        "b8a8651261c71837d0a6f5e5988041eb0ba1fbf9"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Fri Apr 20 17:37:46 2012 -0700"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Fri Apr 20 17:37:46 2012 -0700"
      },
      "message": "Merge pull request #7 from eswierk/master\n\nFixes to DirectPacketQueue test"
    },
    {
      "commit": "4766d8e84bb8f368cfa0090b699e3c97efda4ec8",
      "tree": "3a0d45bb27b628fc81d04a64dff5c1d2388cf3c1",
      "parents": [
        "8d21c1f269b27106cbfc03453d03ab436c5e62ad",
        "e9a211d869da8b66631d755c8bfac9c0ca765dbe"
      ],
      "author": {
        "name": "Howard Persh",
        "email": "howard.persh@bigswitch.com",
        "time": "Fri Apr 20 16:03:33 2012 -0700"
      },
      "committer": {
        "name": "Howard Persh",
        "email": "howard.persh@bigswitch.com",
        "time": "Fri Apr 20 16:03:33 2012 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of github.com:floodlight/oftest\n"
    },
    {
      "commit": "8d21c1f269b27106cbfc03453d03ab436c5e62ad",
      "tree": "68cb9425ac26c3a1544bf47cd8075062fd191fdb",
      "parents": [
        "5f3c83f1cd88d15d787db35f4e2c5716f142a1a9"
      ],
      "author": {
        "name": "Howard Persh",
        "email": "howard.persh@bigswitch.com",
        "time": "Fri Apr 20 15:57:29 2012 -0700"
      },
      "committer": {
        "name": "Howard Persh",
        "email": "howard.persh@bigswitch.com",
        "time": "Fri Apr 20 15:57:29 2012 -0700"
      },
      "message": "(1) Improved logic for generation of randomized ENQUEUE actions\n    - Fetch list of supported queues from switch\n    - Choose from supported list when generating actions\n    - Allow for command-line override of queues\n(2) Additional debug output\n(3) Added test case (Flow_Mod_3_1) for doing a no-op flow modify\n"
    },
    {
      "commit": "e9a211d869da8b66631d755c8bfac9c0ca765dbe",
      "tree": "08c7cc26a72615cb3e6ada62709d9603e59635be",
      "parents": [
        "5f3c83f1cd88d15d787db35f4e2c5716f142a1a9"
      ],
      "author": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Fri Apr 20 14:52:11 2012 -0700"
      },
      "committer": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Fri Apr 20 14:52:11 2012 -0700"
      },
      "message": "Add two test cases for:\n- \"set vlan ID\" action with VID and PCP wildcarded in match\n- \"strip vlan tag\" action with VID and PCP wildcarded in match\n"
    },
    {
      "commit": "b8a8651261c71837d0a6f5e5988041eb0ba1fbf9",
      "tree": "624c2ecb142f8e90ba971d714f80279195413a6d",
      "parents": [
        "22f59152d130968231acdf98c7761aff97cebcbe"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Wed Apr 18 18:45:58 2012 -0700"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Wed Apr 18 18:45:58 2012 -0700"
      },
      "message": "Sleep for a couple of seconds to allow queue counters to reflect\nthe packet just transmitted\n"
    },
    {
      "commit": "22f59152d130968231acdf98c7761aff97cebcbe",
      "tree": "fceb668dfccead49b5597f38b99a425ad62101a5",
      "parents": [
        "065a2db651216544db809e89dbf4029fb42c07c5"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Tue Apr 17 16:36:47 2012 -0700"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Tue Apr 17 16:36:47 2012 -0700"
      },
      "message": "Fix check of queue tx packet counters\n"
    },
    {
      "commit": "065a2db651216544db809e89dbf4029fb42c07c5",
      "tree": "80dd4435957c0c9dc7893219eb1ac3511811e5e7",
      "parents": [
        "5f3c83f1cd88d15d787db35f4e2c5716f142a1a9"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Tue Apr 17 16:35:52 2012 -0700"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Tue Apr 17 16:35:52 2012 -0700"
      },
      "message": "Don\u0027t stomp on pkt when requesting query stats\n"
    },
    {
      "commit": "5f3c83f1cd88d15d787db35f4e2c5716f142a1a9",
      "tree": "0b9808eb6b39bd127c5022ae14e8b26a282169be",
      "parents": [
        "4af4140afb2ab9f8207f6d5aad46b7a85de9fad6"
      ],
      "author": {
        "name": "Howard Persh",
        "email": "howard.persh@bigswitch.com",
        "time": "Fri Apr 13 09:57:10 2012 -0700"
      },
      "committer": {
        "name": "Howard Persh",
        "email": "howard.persh@bigswitch.com",
        "time": "Fri Apr 13 09:57:10 2012 -0700"
      },
      "message": "(1) Changed DEBUG messages to INFO level\n(2) Added more information for ERROR messages\n(3) Changed flow verification to take into account behaviour of flow modification\n"
    },
    {
      "commit": "4af4140afb2ab9f8207f6d5aad46b7a85de9fad6",
      "tree": "386289bdbd7d1729c6aef2598bd28bcc88ac844b",
      "parents": [
        "670b567e40be1537906cc4616b8a380749b13573",
        "f8de518772c7622fffef1dee0381db5ce388475a"
      ],
      "author": {
        "name": "Howard Persh",
        "email": "howard.persh@bigswitch.com",
        "time": "Fri Apr 13 09:09:41 2012 -0700"
      },
      "committer": {
        "name": "Howard Persh",
        "email": "howard.persh@bigswitch.com",
        "time": "Fri Apr 13 09:09:41 2012 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of github.com:floodlight/oftest\n"
    },
    {
      "commit": "670b567e40be1537906cc4616b8a380749b13573",
      "tree": "ad103cbda58bd80266f41986e44d2214aca8d8fe",
      "parents": [
        "c1199d5808c831561eb0fa6300ef3c2ffba31604"
      ],
      "author": {
        "name": "Howard Persh",
        "email": "howard.persh@bigswitch.com",
        "time": "Fri Apr 13 09:08:29 2012 -0700"
      },
      "committer": {
        "name": "Howard Persh",
        "email": "howard.persh@bigswitch.com",
        "time": "Fri Apr 13 09:08:29 2012 -0700"
      },
      "message": "Created DirectPacketQueue test, to exercise enqueue action.\n"
    },
    {
      "commit": "f8de518772c7622fffef1dee0381db5ce388475a",
      "tree": "93a8baf16b462ba75ca40fff2c0f129d30b36231",
      "parents": [
        "942f5302a764944e4f7a47cd794f45a2299aa6b8"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Thu Apr 12 22:38:41 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Thu Apr 12 22:38:41 2012 -0700"
      },
      "message": "Support for filtering pkt ins, cleanup\n\nReplaced barrier_to with transact_to.  Allow filtering of packet-in\nmessages which is disabled by default.  A threshold is set and,\nwhen enabled, if N packet ins are received without other messages\nintervening (and without packet-in being expected) subsequent\npacket ins are dropped.\n\nWith packet storms on OVS, this has detected some overrun errors\non buffering and framing gets messed up.\n\nCleaned up some termination code; _socket_ready_handle now\nreturns an error code rather than True/False.\n"
    },
    {
      "commit": "942f5302a764944e4f7a47cd794f45a2299aa6b8",
      "tree": "60765c81af21609b61b9ff643280544639a6aae4",
      "parents": [
        "7b08e40ba1cd2a4c67e357142fd788aa0754c9c7"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Thu Apr 12 22:32:34 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Thu Apr 12 22:32:34 2012 -0700"
      },
      "message": "Added barrier under load test, LoadBarrier\n\nThis test is still...in testing.  It assumes a loopback port is\nconfigured (which can be specified with lb_port, defaults to 1).\nA flow is inserted to create a storm of packet in messages from\nthe loopback.  Then a number of barrier messages are called.\nThe test passes if all barrier replies are received.  After the\nbarrier replies are received, the flow table is cleared.\n\nThe test is not run by default.\n"
    },
    {
      "commit": "7b08e40ba1cd2a4c67e357142fd788aa0754c9c7",
      "tree": "4c58eebf2abb6148d2d0fd2a05acdb0c3a228f47",
      "parents": [
        "c516fa09de8bb66254b21ba3ad3341a8ccccb8e9"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Thu Apr 12 22:30:16 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Thu Apr 12 22:30:16 2012 -0700"
      },
      "message": "Add loopback support for ovs\n\n-lb or --loopback option creates a veth pair and attaches both ends\nto the OVS instance.  The port numbers for this pair are just above\nthe port_count parameter (default to 5 and 6).\n"
    },
    {
      "commit": "c516fa09de8bb66254b21ba3ad3341a8ccccb8e9",
      "tree": "eff166d754365c09f98639b02b7ac847c91693e8",
      "parents": [
        "f6b9483805381703dff8281b500bf2dd8718af72"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Thu Apr 12 22:28:43 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Thu Apr 12 22:28:43 2012 -0700"
      },
      "message": "Start hexdump on newline\n"
    },
    {
      "commit": "f6b9483805381703dff8281b500bf2dd8718af72",
      "tree": "88b232707023480c1adaa6b3092a32811e0798b2",
      "parents": [
        "4f21966e01213f38622422bfb2c519fa00a2d164"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Thu Apr 12 21:50:57 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Thu Apr 12 21:51:16 2012 -0700"
      },
      "message": "Use default transaction timeout\n"
    },
    {
      "commit": "4f21966e01213f38622422bfb2c519fa00a2d164",
      "tree": "3fcd8dc45ce56614331aaa4cf4aae81323d9f67a",
      "parents": [
        "8364b16c1f5e97213c5125c78b6eb910b1c7f2dd",
        "7f8dba807072e183587fbc1a9d8f770708d15e5f"
      ],
      "author": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Thu Apr 12 13:47:09 2012 -0700"
      },
      "committer": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Thu Apr 12 13:47:09 2012 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of github.com:floodlight/oftest\n"
    },
    {
      "commit": "8364b16c1f5e97213c5125c78b6eb910b1c7f2dd",
      "tree": "83c637a2861693aa31579e00762eed34a64d51f2",
      "parents": [
        "3e28dea42ffd2d7fd88392f24705f9f5a8b2fee3"
      ],
      "author": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Thu Apr 12 13:45:40 2012 -0700"
      },
      "committer": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Thu Apr 12 13:45:40 2012 -0700"
      },
      "message": "- Added WildcardPriority test\n  - Tests whether a wildcarded flow can be prioritized above\n    a flow with no wildcards.\n\n    This test is expected to fail on OVS as this behavior is not\n    supported.\n"
    },
    {
      "commit": "7f8dba807072e183587fbc1a9d8f770708d15e5f",
      "tree": "71c08f682bd9cb026e9257e9d3ebcd65c8dfdf38",
      "parents": [
        "3e28dea42ffd2d7fd88392f24705f9f5a8b2fee3"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Thu Apr 12 12:58:52 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Thu Apr 12 12:58:52 2012 -0700"
      },
      "message": "Added report for number of tests to list\n"
    },
    {
      "commit": "3e28dea42ffd2d7fd88392f24705f9f5a8b2fee3",
      "tree": "ef59510acc644cd4f73c05759d553627e7835aac",
      "parents": [
        "3ed8fb72c4b4de9e3400a738a06a1e1a55126a04"
      ],
      "author": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Thu Apr 12 12:40:33 2012 -0700"
      },
      "committer": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Thu Apr 12 12:40:33 2012 -0700"
      },
      "message": "- Useful error message for unsupported CLI commands\n"
    },
    {
      "commit": "3ed8fb72c4b4de9e3400a738a06a1e1a55126a04",
      "tree": "f0d04667306c9de1a5b3a48d0f45d7087a390b33",
      "parents": [
        "c1199d5808c831561eb0fa6300ef3c2ffba31604"
      ],
      "author": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Thu Apr 12 12:30:59 2012 -0700"
      },
      "committer": {
        "name": "Jeffrey Townsend",
        "email": "jeffrey.townsend@bigswitch.com",
        "time": "Thu Apr 12 12:30:59 2012 -0700"
      },
      "message": "- Added a new \"CLI\" mode\n\n  If you specify the new \u0027--cli\u0027 option, ovs-ctl will drop into an\n  interactive shell after initializing OVS.\n\n  The purpose of the interactive shell is to allow easy execution of the\n  correct OVS binaries for the running configuration, especially if\n  non-standard DB file locations are used.\n\n  In CLI mode, you will receive the following prompt:\n     [config_name] ovs-ctl\u003e\n\n  Where [config_name] is the name of the running OVS configuration you\n  specified.\n\n  The following commands are available from the command line:\n\n        # Execute ovs-vsctl with arguments:\n        \u003e vsctl show\n\n        # Execute ovs-ofctl with arguments:\n        \u003e ofctl show ofbr0\n\n  Arguments are passed as-is directly to the correct binaries.\n\n  Additional commands:\n        # exit ovs-ctl\n        \u003e exit || quit\n\n        # exit ovs-ctl, and kill the currently running OVS instance\n        \u003e kill\n\n  If you specify \"ovs-ctl --cli --teardown\", then the OVS instance\n  will be killed after exit, even with the \"exit\" or \"quit\" commands.\n"
    },
    {
      "commit": "c1199d5808c831561eb0fa6300ef3c2ffba31604",
      "tree": "cfa70abc5143f0d6bab5d479b7ac4569cbe77029",
      "parents": [
        "f97840fb0eb2de1f998488cfb417a862c6f6bbc3"
      ],
      "author": {
        "name": "Howard Persh",
        "email": "howard.persh@bigswitch.com",
        "time": "Wed Apr 11 14:21:32 2012 -0700"
      },
      "committer": {
        "name": "Howard Persh",
        "email": "howard.persh@bigswitch.com",
        "time": "Wed Apr 11 14:21:32 2012 -0700"
      },
      "message": "Added some more test parameters, for:\n(1) overriding the list of valid ports returned by the switch,\n(2) forcing certain wildcards to be used, and\n(3) forcing certain actions to be used.\n"
    },
    {
      "commit": "f97840fb0eb2de1f998488cfb417a862c6f6bbc3",
      "tree": "fae5b66abbb529a637ff08a3b4a8b0d78002ad47",
      "parents": [
        "0fc08bddeee38f13c2f9125b78fab44dff803d0d"
      ],
      "author": {
        "name": "Howard Persh",
        "email": "howard.persh@bigswitch.com",
        "time": "Tue Apr 10 16:30:42 2012 -0700"
      },
      "committer": {
        "name": "Howard Persh",
        "email": "howard.persh@bigswitch.com",
        "time": "Tue Apr 10 16:30:42 2012 -0700"
      },
      "message": "Added test case pktact.DirectPacketQueue, to test \"enqueue\" action.\n"
    },
    {
      "commit": "0fc08bddeee38f13c2f9125b78fab44dff803d0d",
      "tree": "57b5beccbd6bff294cb87eed744a421194da2886",
      "parents": [
        "488fbc52b4986db4d69f881209391f2321393af2"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Mon Apr 09 16:56:18 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Mon Apr 09 16:56:18 2012 -0700"
      },
      "message": "Add default timeout for do_barrier\n\nAnd check the result do_barrier in all calls.\n"
    },
    {
      "commit": "488fbc52b4986db4d69f881209391f2321393af2",
      "tree": "0ddc9ef75d481da96ee61c9e43ffa8435189ad0d",
      "parents": [
        "a6fbd673bc693c86337ac21ddf3684364e1196a0"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Mon Apr 09 16:30:41 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Mon Apr 09 16:30:41 2012 -0700"
      },
      "message": "From eswierk 6927ce7fa40cc770749d6495828002971eee1a77\n\n    Fix SingleWildcard and AllExceptOneWildcard tests to exercise only valid\n    combinations of wildcard and exact match fields (e.g. if nw_proto is\n    wildcarded, also wildcard l4_src and l4_dst fields), to accommodate\n    switches that are picky about such things\n"
    },
    {
      "commit": "a6fbd673bc693c86337ac21ddf3684364e1196a0",
      "tree": "13c6195281f81c6467961f8bfef45efe617b04f2",
      "parents": [
        "c00c7473b53139fd6a459756ac0e9a58952c86b0",
        "50be767fe629a58c9a4886dc3d04d4c6633c2d81"
      ],
      "author": {
        "name": "Howard Persh",
        "email": "howard.persh@bigswitch.com",
        "time": "Mon Apr 09 15:51:19 2012 -0700"
      },
      "committer": {
        "name": "Howard Persh",
        "email": "howard.persh@bigswitch.com",
        "time": "Mon Apr 09 15:51:19 2012 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of github.com:floodlight/oftest\n"
    },
    {
      "commit": "c00c7473b53139fd6a459756ac0e9a58952c86b0",
      "tree": "968f259fe8432904878844a75eb24a7a46e0b58c",
      "parents": [
        "07d99e69d30bcbfe54bf8911c2efdf09cceb9848"
      ],
      "author": {
        "name": "Howard Persh",
        "email": "howard.persh@bigswitch.com",
        "time": "Mon Apr 09 15:49:07 2012 -0700"
      },
      "committer": {
        "name": "Howard Persh",
        "email": "howard.persh@bigswitch.com",
        "time": "Mon Apr 09 15:49:07 2012 -0700"
      },
      "message": "Copied over from master branch\n"
    },
    {
      "commit": "07d99e69d30bcbfe54bf8911c2efdf09cceb9848",
      "tree": "e5a0b22c6bd7f5535cc7a6a150938df000e5a7eb",
      "parents": [
        "910a828cb2708cf9e81f82a53c7d411acf1e4e12"
      ],
      "author": {
        "name": "Howard Persh",
        "email": "howard.persh@bigswitch.com",
        "time": "Mon Apr 09 15:26:57 2012 -0700"
      },
      "committer": {
        "name": "Howard Persh",
        "email": "howard.persh@bigswitch.com",
        "time": "Mon Apr 09 15:26:57 2012 -0700"
      },
      "message": "(1) Small bug fixes\n(2) Lengthened timeouts\n(3) Added documentation of test cases\n"
    },
    {
      "commit": "910a828cb2708cf9e81f82a53c7d411acf1e4e12",
      "tree": "2effc55652753afd23cfe5d715d3a1d656b9bd64",
      "parents": [
        "3340d4517c1ff7dd9f3efeaf60375e8ef024ce9d"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Sat Apr 07 00:05:20 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Sat Apr 07 00:05:20 2012 -0700"
      },
      "message": "Updated var names and test parameters\n\npa_ was for packet action; changed to fq_.  Use functional\ncriteria for test params.\n"
    },
    {
      "commit": "3340d4517c1ff7dd9f3efeaf60375e8ef024ce9d",
      "tree": "0161cae2e9de0275169defbdaded8dae3077e774",
      "parents": [
        "2843d2b26c03e27ef531be64e0ed0842014f17b1"
      ],
      "author": {
        "name": "Howard Persh",
        "email": "howard.persh@bigswitch.com",
        "time": "Fri Apr 06 16:45:21 2012 -0700"
      },
      "committer": {
        "name": "Howard Persh",
        "email": "howard.persh@bigswitch.com",
        "time": "Fri Apr 06 16:45:21 2012 -0700"
      },
      "message": "Updated with Argon-isms\n"
    },
    {
      "commit": "2843d2b26c03e27ef531be64e0ed0842014f17b1",
      "tree": "76fb7c2729187274b2da2eb13e08d025488fb62f",
      "parents": [
        "f6af1678f6ad603c4ec8f0c5d52ba65ff950822d"
      ],
      "author": {
        "name": "root",
        "email": "root@Ubuntu-vm-1.(none)",
        "time": "Fri Apr 06 10:27:46 2012 -0700"
      },
      "committer": {
        "name": "root",
        "email": "root@Ubuntu-vm-1.(none)",
        "time": "Fri Apr 06 10:27:46 2012 -0700"
      },
      "message": "Goofed last minute change about action comparison for modifies, modify does not change timeouts -- fixed\n"
    },
    {
      "commit": "f6af1678f6ad603c4ec8f0c5d52ba65ff950822d",
      "tree": "bf2dd7bc15a79ce4846a637f5662c856072a364a",
      "parents": [
        "b293646cae4463635fdb787285bb3b07bb0cdafe"
      ],
      "author": {
        "name": "root",
        "email": "root@Ubuntu-vm-1.(none)",
        "time": "Fri Apr 06 09:46:29 2012 -0700"
      },
      "committer": {
        "name": "root",
        "email": "root@Ubuntu-vm-1.(none)",
        "time": "Fri Apr 06 09:46:29 2012 -0700"
      },
      "message": "Greatly changed:\n- refactored, into many small tests, instead of 1 large on\n  (follows published draft test plan\n"
    },
    {
      "commit": "50be767fe629a58c9a4886dc3d04d4c6633c2d81",
      "tree": "5c372a895f044da11246f323b9c4f5440e319b3d",
      "parents": [
        "abbfdbbf5e9dda9771358c28aeab0b9120f81b80"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Thu Apr 05 11:38:08 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Thu Apr 05 11:38:08 2012 -0700"
      },
      "message": "Lowered defaults for flow toggle\n"
    },
    {
      "commit": "abbfdbbf5e9dda9771358c28aeab0b9120f81b80",
      "tree": "4e54d327110aabeb1ebab4b54de8e995969e8735",
      "parents": [
        "fa6454f0423875375096340d68676f253ab90951"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Thu Apr 05 10:29:26 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Thu Apr 05 10:29:26 2012 -0700"
      },
      "message": "Clean up var name, reporting\n"
    },
    {
      "commit": "fa6454f0423875375096340d68676f253ab90951",
      "tree": "52c7efd87f883e8f168b3bd6025ad198a64b8295",
      "parents": [
        "e4f2570147556c3e6bdb92754a119d9c39487499"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Thu Apr 05 10:04:13 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Thu Apr 05 10:04:13 2012 -0700"
      },
      "message": "Added FlowToggle test\n\nThis test generates ft_flow_count (test param) flows, puts\nthem in the table, and then does flow mods on each one just changing\nthe output port action.  It does this ft_iter_count (test param) times.\n"
    },
    {
      "commit": "e4f2570147556c3e6bdb92754a119d9c39487499",
      "tree": "6867218a3f4e8a769752e0593c8d3e3001e01eac",
      "parents": [
        "1bf0160898ae5d884254928af83d10ea238ddc21",
        "d15bed5cfd7a485dd1103a66368da0805fea46af"
      ],
      "author": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Wed Apr 04 10:50:17 2012 -0700"
      },
      "committer": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Wed Apr 04 10:50:17 2012 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of github.com:/floodlight/oftest\n"
    },
    {
      "commit": "1bf0160898ae5d884254928af83d10ea238ddc21",
      "tree": "4a7d0659f54132228e7801d348794bfb823af36b",
      "parents": [
        "d7c80d158949d528bad73d9dca8adface5bb8860"
      ],
      "author": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Wed Apr 04 10:48:23 2012 -0700"
      },
      "committer": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Wed Apr 04 10:48:23 2012 -0700"
      },
      "message": "Add PacketOutMC test, which sends PacketOut message to multiple output\nports.\n"
    },
    {
      "commit": "d15bed5cfd7a485dd1103a66368da0805fea46af",
      "tree": "0d2f0c278b03dc9f6a9cda97b21a7d30b5c6729d",
      "parents": [
        "9bc61c6c579e9e6d4cd886c08fb09e2e63c9c18d"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Wed Apr 04 10:39:52 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Wed Apr 04 10:39:52 2012 -0700"
      },
      "message": "Updated profile processing\n\nProfiles _must_ be placed in the profiles directory now.  They\nshould be referred to as --profile\u003dfoo where the file profiles/foo.py\nexists.\n\nAdded profiles/noing.py for the \"no IN_PORT output action supported\".\n\nAdded .gitignore.\n"
    },
    {
      "commit": "9bc61c6c579e9e6d4cd886c08fb09e2e63c9c18d",
      "tree": "9df7454d5ceebf6a7f27329a10f30a861b5abd9e",
      "parents": [
        "d7c80d158949d528bad73d9dca8adface5bb8860"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Wed Apr 04 10:12:35 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Wed Apr 04 10:12:35 2012 -0700"
      },
      "message": "Do barrier after each flow mod\n\nShould this be after each group of flow mods?\n"
    },
    {
      "commit": "d7c80d158949d528bad73d9dca8adface5bb8860",
      "tree": "65c907496a40795397baffe41206ac35da3a935e",
      "parents": [
        "07e8f5f7ba1cf7505a55c104bac4fe1d18e014b5"
      ],
      "author": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Tue Apr 03 15:20:57 2012 -0700"
      },
      "committer": {
        "name": "Dan Talayco",
        "email": "dan.talayco@bigswitch.com",
        "time": "Tue Apr 03 15:23:36 2012 -0700"
      },
      "message": "Added switch profile command option\n\nAdded --profile command line argument.  If present, it must specify\na python file which is imported.  Currently the only profile related\ncode is a variable called skip_test_list which gives a list of tests\nthat should _not_ be run for the platform.  Only the test names\nare currently checked; test-module checking is not checked.\n\nA sample profile file is also included.\n"
    },
    {
      "commit": "07e8f5f7ba1cf7505a55c104bac4fe1d18e014b5",
      "tree": "2ed578e9fe17a6fb4fe5f861155d773c9575ec8e",
      "parents": [
        "82b1fd072d260b6ce35817812158380c20d59dd2"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Tue Apr 03 13:52:39 2012 -0700"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Tue Apr 03 13:52:39 2012 -0700"
      },
      "message": "Rename this dummy file to something more agreeable to p4\n"
    },
    {
      "commit": "82b1fd072d260b6ce35817812158380c20d59dd2",
      "tree": "e3b6c358bab52e2a6a7fd6fe443cd4dcb8bb8ed4",
      "parents": [
        "e097c6ec9daa97d58e815d384b7d36a8e32895e2",
        "ae74c3634bd4ebec03eb3d8b7d2cc38e3d81be12"
      ],
      "author": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Tue Apr 03 13:42:40 2012 -0700"
      },
      "committer": {
        "name": "Ed Swierk",
        "email": "eswierk@bigswitch.com",
        "time": "Tue Apr 03 13:42:40 2012 -0700"
      },
      "message": "Merge pull request #5 from eswierk/master\n\nMore oftest changes"
    },
    {
      "commit": "e097c6ec9daa97d58e815d384b7d36a8e32895e2",
      "tree": "c84fa6d0953f192d402f0cc8a39fe4164eba89fb",
      "parents": [
        "aba527653984b1dfb73a5c9eec9990a1a398a2f5"
      ],
      "author": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Tue Apr 03 13:17:42 2012 -0700"
      },
      "committer": {
        "name": "Ken Chiang",
        "email": "ken.chiang@bigswitch.com",
        "time": "Tue Apr 03 13:17:42 2012 -0700"
      },
      "message": "Update egress port selection to use config[\"port_map\"] instead of\nconfig[\"base_of_port\"].\n\nUpdate port_map, logger, and config prefix to \"fe_\".\n"
    }
  ],
  "next": "aba527653984b1dfb73a5c9eec9990a1a398a2f5"
}
