)]}' { "commit": "06e890869d52fee79dd8fad6701ab1ee4ea41a65", "tree": "5cad911d4da073b55b1a21418d9bf1991ac9197d", "parents": [ "0de4ba9401cd005639bc1865a53e07de60356aeb" ], "author": { "name": "Jonathan Hart", "email": "jono@onlab.us", "time": "Mon Aug 08 17:21:01 2016 -0700" }, "committer": { "name": "Gerrit Code Review", "email": "gerrit@onlab.us", "time": "Thu Aug 18 16:18:19 2016 +0000" }, "message": "Abstraction to help applications write logic to handle ARP + NDP packets.\n\nThe idea is to allow applications to contribute NeighbourMessageHandlers to\nhandle ARP/NDP packets coming from a particular ConnectPoint, Interface or with\na particular traffic selector. Applications can contribute different handlers\nfor different ports, because they know how those ports will be used. Also,\nmultiple applications can contribute handlers for different ports/interfaces\nwithout having to have one ARP handler for the entire network. The framework\nprovides actions that the handler can choose to take - flood, proxy, reply, drop.\nThe handler is free to implement some other action if none of these fit what it\nneeds to do. The framework also handles many of the common tasks for ARP handlers,\nlike parsing packets, abstracting the differences between ARP and NDP, implementing\nactions like replying to a request. This allows handlers to be very simple and\neasy to understand and implement.\n\nChange-Id: I313c723e9ebc3d0816eb79870ee0536780e7a640\n", "tree_diff": [ { "type": "add", "old_id": "0000000000000000000000000000000000000000", "old_mode": 0, "old_path": "/dev/null", "new_id": "3686c479ebcc570ee1f84892c100146125ccd4e1", "new_mode": 33188, "new_path": "incubator/api/src/main/java/org/onosproject/incubator/net/neighbour/DefaultNeighbourMessageHandler.java" }, { "type": "add", "old_id": "0000000000000000000000000000000000000000", "old_mode": 0, "old_path": "/dev/null", "new_id": "3332e92b746dafbab064d97fbabdf6b35224b7e1", "new_mode": 33188, "new_path": "incubator/api/src/main/java/org/onosproject/incubator/net/neighbour/NeighbourMessageActions.java" }, { "type": "add", "old_id": "0000000000000000000000000000000000000000", "old_mode": 0, "old_path": "/dev/null", "new_id": "307a7836c3c40895372268217c77431e93d1600f", "new_mode": 33188, "new_path": "incubator/api/src/main/java/org/onosproject/incubator/net/neighbour/NeighbourMessageContext.java" }, { "type": "add", "old_id": "0000000000000000000000000000000000000000", "old_mode": 0, "old_path": "/dev/null", "new_id": "e6386426b31f5c13a1a2d0aee87e1a0b57775ff5", "new_mode": 33188, "new_path": "incubator/api/src/main/java/org/onosproject/incubator/net/neighbour/NeighbourMessageHandler.java" }, { "type": "add", "old_id": "0000000000000000000000000000000000000000", "old_mode": 0, "old_path": "/dev/null", "new_id": "85778bddc42d246d345c7ea9d0b09e7ae185b23a", "new_mode": 33188, "new_path": "incubator/api/src/main/java/org/onosproject/incubator/net/neighbour/NeighbourMessageType.java" }, { "type": "add", "old_id": "0000000000000000000000000000000000000000", "old_mode": 0, "old_path": "/dev/null", "new_id": "d6ceadb06e434d77641e7d707bde9b98652e821f", "new_mode": 33188, "new_path": "incubator/api/src/main/java/org/onosproject/incubator/net/neighbour/NeighbourProtocol.java" }, { "type": "add", "old_id": "0000000000000000000000000000000000000000", "old_mode": 0, "old_path": "/dev/null", "new_id": "f7adb04c801e85f337b7b0c4e1869860e1ae72ff", "new_mode": 33188, "new_path": "incubator/api/src/main/java/org/onosproject/incubator/net/neighbour/NeighbourResolutionService.java" }, { "type": "add", "old_id": "0000000000000000000000000000000000000000", "old_mode": 0, "old_path": "/dev/null", "new_id": "7982eeef1ccfd2ea697672909bf7d558338bd3e4", "new_mode": 33188, "new_path": "incubator/api/src/main/java/org/onosproject/incubator/net/neighbour/package-info.java" } ] }