)]}'
{
  "log": [
    {
      "commit": "309795f4bec2d69cd507a631f82065c2198a0825",
      "tree": "b3676be9a8f65f0d828a07e3bd6906bf7cd7b664",
      "parents": [
        "f408e0ce40270559ef80f231843c93baa9947bc5"
      ],
      "author": {
        "name": "James Chapman",
        "email": "jchapman@katalix.com",
        "time": "Fri Apr 02 06:19:10 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 03 14:56:05 2010 -0700"
      },
      "message": "l2tp: Add netlink control API for L2TP\n\nIn L2TPv3, we need to create/delete/modify/query L2TP tunnel and\nsession contexts. The number of parameters is significant. So let\u0027s\nuse netlink. Userspace uses this API to control L2TP tunnel/session\ncontexts in the kernel.\n\nThe previous pppol2tp driver was managed using [gs]etsockopt(). This\nAPI is retained for backwards compatibility. Unlike L2TPv2 which\ncarries only PPP frames, L2TPv3 can carry raw ethernet frames or other\nframe types and these do not always have an associated socket\nfamily. Therefore, we need a way to use L2TP sessions that doesn\u0027t\nrequire a socket type for each supported frame type. Hence netlink is\nused.\n\nSigned-off-by: James Chapman \u003cjchapman@katalix.com\u003e\nReviewed-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0d76751fad7739014485ba5bd388d4f1b4fd4143",
      "tree": "25a4525bf6b2ec9f052f22ba98cdfd3ff3a86aa3",
      "parents": [
        "e0d4435f93905f517003cfa7328a36ea19788147"
      ],
      "author": {
        "name": "James Chapman",
        "email": "jchapman@katalix.com",
        "time": "Fri Apr 02 06:19:00 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 03 14:56:04 2010 -0700"
      },
      "message": "l2tp: Add L2TPv3 IP encapsulation (no UDP) support\n\nThis patch adds a new L2TPIP socket family and modifies the core to\nhandle the case where there is no UDP header in the L2TP\npacket. L2TP/IP uses IP protocol 115. Since L2TP/UDP and L2TP/IP\npackets differ in layout, the datapath packet handling code needs\nchanges too. Userspace uses an L2TPIP socket instead of a UDP socket\nwhen IP encapsulation is required.\n\nWe can\u0027t use raw sockets for this because the semantics of raw sockets\ndon\u0027t lend themselves to the socket-per-tunnel model - we need to\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ]
}
