2b3fabab9ef2445ab1c48de0fed82514e4eb32dc |
|
13-Oct-2010 |
David Lamparter <equinox@diac24.net> |
route_obj: don't add empty destination to nlmsg don't try to give the kernel an empty RTA_DST attribute. this would previously happening on trying to delete the default route as returned from the kernel. the kernel doesn't add a RTA_DST atttribute, so libnl does nl_addr_alloc(0) and inserts a zero-length RTA_DST attribute into the deletion request, which the kernel then refuses with ERANGE. Signed-off-by: David Lamparter <equinox@diac24.net>
/external/libnl/lib/route/route_obj.c
|
7072675b40b611279466756ef800cc5dbee92c54 |
|
16-Jun-2008 |
Thomas Graf <tgr@lsx.localdomain> |
Improved printing of route cache entries
/external/libnl/lib/route/route_obj.c
|
d84430702496f617c01c5e2d27d0e82e02390bb7 |
|
23-May-2008 |
Thomas Graf <tgr@lsx.localdomain> |
Remove old line counting while dumping
/external/libnl/lib/route/route_obj.c
|
eed2afaab7aa72fae393a395a8879b91a922ff5e |
|
14-May-2008 |
Thomas Graf <tgr@lsx.localdomain> |
Remove obsolete nla_get_addr() and nla_get_data() Replaces obsolete calls to nla_get_addr() and nla_get_data() with nl_addr_alloc_attr() respectively nl_data_alloc_attr(). Also fixes missing error handling while parsing routing multipath configuration.
/external/libnl/lib/route/route_obj.c
|
8a3efffa5b3fde252675239914118664d36a2c24 |
|
14-May-2008 |
Thomas Graf <tgr@lsx.localdomain> |
Thread-safe error handling In order for the interface to become more thread safe, the error handling was revised to no longer depend on a static errno and error string buffer. This patch converts all error paths to return a libnl specific error code which can be translated to a error message using nl_geterror(int error). The functions nl_error() and nl_get_errno() are therefore obsolete. This change required various sets of function prototypes to be changed in order to return an error code, the most prominent are: struct nl_cache *foo_alloc_cache(...); changed to: int foo_alloc_cache(..., struct nl_cache **); struct nl_msg *foo_build_request(...); changed to: int foo_build_request(..., struct nl_msg **); struct foo *foo_parse(...); changed to: int foo_parse(..., struct foo **); This pretty much only leaves trivial allocation functions to still return a pointer object which can still return NULL to signal out of memory. This change is a serious API and ABI breaker, sorry!
/external/libnl/lib/route/route_obj.c
|
cc9c6d63848400b77906a4a9df0be826dfc21b72 |
|
08-May-2008 |
Ben Gamsa <ben@somanetworks.com> |
Added two new functions to facilitate processing the nexthop entries for routes. Added rtnl_route_foreach_nexthop() to walk the list of nexthops invoking a caller-provided callback for each nexthop entry, and added rtnl_route_nexthop_n() to retrieve the Nth nexthop entry in the list.
/external/libnl/lib/route/route_obj.c
|
48e1e5c4720094f60494ee55c2a22230ac986ad3 |
|
08-May-2008 |
Thomas Graf <tgr@lsx.localdomain> |
Speed up metrics comparison Using rtnl_route_get_metric() for route comparison became a bottleneck because each metric which was not available resulted in the generation of an error message. This changeset avoids this by accessing rt_metrics and rt_metrics_mask directly while comparing route objects.
/external/libnl/lib/route/route_obj.c
|
d6cd72555d1e0334567d213eb84547758aef6255 |
|
05-May-2008 |
Thomas Graf <tgr@lsx.localdomain> |
Fix dumping of iif route attribute
/external/libnl/lib/route/route_obj.c
|
535e83162249ed6274ba46bc72d8cc683ba20e17 |
|
29-Apr-2008 |
Thomas Graf <tgr@lsx.localdomain> |
Big routing code rework (API/ABI BREAK!) Adds all missing routing attributes and brings the routing related code to a working state. In the process the API was broken several times with the justification that nobody is using this code yet. The changes include new example code which is also a prototype for how plain CLI tools could look like to control routes.
/external/libnl/lib/route/route_obj.c
|
464988628802b76d5b3e50af99158413ac28bd18 |
|
19-Dec-2007 |
Thomas Graf <tgr@deb.localdomain> |
Represent default route with destination address length zero So far the destination address for default routes was NULL which complicated the handling of routes in general. By assigning a address of length zero they can be compared to each other. This allows the cache manager to properly handle default routes.
/external/libnl/lib/route/route_obj.c
|
44d362409d5469aed47d19e7908d19bd194493a4 |
|
15-Sep-2007 |
Thomas Graf <tgraf@suug.ch> |
Initial import
/external/libnl/lib/route/route_obj.c
|