Nicolas Sitbon
7e9d5f69e5
correctly handle the object not found case
...
Removing non existent route (both ipv4 and ipv6) using
rtnl_route_delete return NLE_FAILURE generic error code. After
investigation, it seems the linux kernel return -ESRCH in that case
(see http://lxr.linux.no/linux+v2.6.38/net/ipv6/route.c#L1367 ). Same
behaviour apply for removing non existent address. The function
nl_syserr2nlerr (lib/error.c) which is responsible for translating
from kernel error to libnl error doesn't handle ESRCH.
2011-03-25 16:51:31 +01:00
Thomas Graf
e4b507e290
Deprecate rtnl_qdisc_foreach_child() and rtnl_qdisc_foreach_cls()
...
Their usage is not completely safe, it is not possible to handle
the out of memory situation of the allocate filter. It is very
unlikely for this to cause any problem though.
The functions are still accessible but gcc will warn about their
deprecation.
2011-03-24 22:50:11 +01:00
Thomas Graf
f523f297f7
Allow NLSYSCONFDIR environment variable to overwrite built-in sysconfdir
2011-03-24 21:14:52 +01:00
Thomas Graf
8d5493418a
Cleanup <netlink/route/qdisc.h>
...
- remove dead prototypes
- reformat
2011-03-24 20:57:43 +01:00
Thomas Graf
a62bfdb8e0
Check if all mandatory attributes are present in rtnl_tc_msg_build()
...
TCA_ATTR_IFINDEX | TCA_ATTR_PARENT | TCA_ATTR_KIND
2011-03-24 17:00:38 +01:00
Thomas Graf
93b6c114a8
Add NLE_NODEV error
2011-03-24 16:56:10 +01:00
Thomas Graf
14fa557ba9
Set default MTU to 1500
2011-03-24 12:59:57 +01:00
Thierry Reding
9f1abddb1a
Fix "make distcheck".
...
This commit adds some missing files (some header files, the files below
/etc and the bison/flex files) to the distribution tarball to ensure
that libnl can be built from the tarballs created using "make dist".
It also adds some incantations to properly generate the flex and bison
output since the generated output is no longer shipped in the tarball.
2011-03-23 16:00:44 +01:00
Thierry Reding
913579b460
Fix out-of-tree build.
...
This patch fixes out-of-tree build, that is, when building with
$builddir != $srcdir. In such a case, some generated header files are
not found because they live in a different tree and can be fixed by
adding the directories to the compiler's include search path.
2011-03-23 15:51:56 +01:00
Thomas Graf
a0fe7a1c9a
Omit empty nested attributes
...
Check for empty nested attributes in nla_nest_end() and omit the
attribute alltogether if is is the case.
2011-03-23 13:39:18 +01:00
Daniel Walter
38db636f78
add missing nl_cache_search in cache.h
...
fix missing declaration of nl_cache_search
2011-03-22 13:13:07 +01:00
Daniel Walter
f0603a467b
add missing checks for ROUTE_ATTR_MULTIPATH
...
attached patch adds missing checks for ROUTE_ATTR_MULTIPATH
when dealing with multipath routing.
Affected functions
rtnl_route_remove_nexthop
rtnl_route_get_nexthops
rtnl_route_get_nnexthops
2011-03-22 13:11:09 +01:00
Thomas Graf
c1073d6172
Documentation updates
...
Mostly killing doxygen warnings, some doc updates to caching
2011-03-22 00:40:26 +01:00
Thomas Graf
55f803c64d
libnl-3.0
2011-03-21 17:03:01 +01:00
Thomas Graf
722a227795
fix module parent references
2011-03-21 16:54:37 +01:00
Thomas Graf
45941f9d5f
rename sch -> qdisc
2011-03-21 16:47:42 +01:00
Thomas Graf
8eb5b5532e
Unified TC API
...
Finally got rid of all the qdisc/class/cls code duplication in
the tc module API. The API takes care of allocation/freeing the
tc object specific data.
I hope I got it right this time.
2011-03-21 15:51:52 +01:00
Thomas Graf
5dc897d5de
provide function to retrieve htb rate
2011-03-17 17:31:08 +01:00
Thomas Graf
552c85cab7
Hold reference to obj while calling callback of cache iterator
2011-03-17 17:30:32 +01:00
Thomas Graf
33e94038c4
Print debugging info while iterating a cache based on a filter
2011-03-17 16:40:39 +01:00
Thomas Graf
2c75886060
Fix off-by-one when reading IFLA_INET6_CONF and IFLA_INET6_STATS
2011-03-17 16:11:10 +01:00
Thomas Graf
5a9f50b8e9
__nlmsg_alloc(): Guarantee minimal message size of at least the header
2011-03-17 16:03:11 +01:00
Thomas Graf
ae5dfb1cc7
Make struct nl_object public, NLHDR_COMMON has been public anyway
2011-03-17 14:44:56 +01:00
Miguel Di Ciurcio Filho
59c3474b3d
Add missing argument in rtnl_link_change example
...
Signed-off-by: Miguel Di Ciurcio Filho <miguel.filho@gmail.com>
2011-03-16 13:49:08 +01:00
Thomas Graf
d8d67c0a4c
Provide numeric version defines
2011-03-16 13:46:41 +01:00
Reuben Hawkins
b5c474e533
allowing silent rules in build
2011-03-16 13:21:50 +01:00
Laurent Defert
5f3dbf80d1
Fix function nfnl_ct_del name
...
This function is named nfnl_nl_del in lib/netfilter/ct.c, while it was
declared nfnl_ct_delete in the header.
2011-03-16 13:11:50 +01:00
Thomas Graf
2d1626b320
Include <linux/pkt_cls.h> and <linux/pkt_sched.h> in <netlink/route/tc.h> for convenience
2011-03-16 12:59:31 +01:00
Thomas Graf
4b0126b8e6
prefix ipv6 link statistics identifiers with IP6
2011-03-16 12:55:19 +01:00
Thomas Graf
82fe785820
use linux/netlink.h instead of netlink/netlink-kernel.h
2011-03-16 12:53:14 +01:00
Thomas Graf
5644578190
Tons of documentation
2010-11-27 10:18:07 +01:00
Thomas Graf
7105aea116
addr: hide nl_addr_destroy()
...
everyone should use nl_addr_put()
2010-11-26 16:32:10 +01:00
Thomas Graf
c158d06b7b
rename NL_AUTO_PID to NL_AUTO_PORT
...
Old name is kept for compatibility.
2010-11-23 13:31:39 +01:00
Thomas Graf
9513d4ce34
Rename nlmsg_for_each_msg() to nlmsg_for_each()
...
Also put remaining variable on local stack instead of requiring the user
to supply it. Old interface is kept for compatibility.
2010-11-23 13:29:45 +01:00
Thomas Graf
4fb528bbaf
nl_recv(): Zero out sockaddr in case the caller forgot
2010-11-22 14:19:40 +01:00
Thomas Graf
9fbdf6c92a
nl_recv(): Make passing creds pointer optional
2010-11-22 14:18:59 +01:00
Thomas Graf
e52a09c507
nl: rename nlmsg_msg_size() to nlmsg_size(), nlmsg_len() -> nlmsg_datalen()
...
The old symbols are left around for compatibility.
2010-11-22 13:13:04 +01:00
Thomas Graf
6545206187
Documentation updates
...
- moved documentation from lib/doc.c to doc/src/
- splitted pages into separate files
- worked over core sections, explaining the receiving and sending
behaviour in much more details including the the available
mechanisms to customize the behaviour
- updated the html stylesheet file for increased readability, probably
needs some doxygen patching to achieve what I am looking for.
- enabled call graphs, not expanded by default
2010-11-19 02:25:37 +01:00
Thomas Graf
5a08c8ff4c
Inherit return code of NL_CB_MSG_OUT in nl_sendmsg()
...
If NL_CB_MSG_OUT() returns anything != NL_OK, return that value
to let any caller of nl_sendmsg() know that the message has not
been sent.
2010-11-18 14:16:33 +01:00
Thomas Graf
8a365dbd49
rename nl_send_auto_complete() -> nl_send_auto(), nl_auto_complete -> nl_complete_msg()
...
Old symbols left to maintain backwards compatibility
2010-11-18 14:13:49 +01:00
Thomas Graf
063a2ebf53
only perform automatic sequence checking if auto-ack mode is enabled
2010-11-18 12:51:20 +01:00
Thomas Graf
09daef3d83
Don't build doc.c, there is no real code in it
2010-11-18 12:47:40 +01:00
Thomas Graf
c32c3f3664
socket: constify interface
2010-11-18 12:47:16 +01:00
Thomas Graf
cf5577d280
constify struct trans_tbl
2010-11-17 16:09:08 +01:00
Thomas Graf
98ffedec04
link/inet6: pretty printing
2010-11-17 15:14:08 +01:00
Thomas Graf
d8eeb0a26f
New function nl_size2str()
2010-11-17 15:13:33 +01:00
Thomas Graf
10424b20c1
Rename nl_get_hz() to nl_get_user_hz() to indicate it's not the in-kernel HZ value
2010-11-17 11:55:42 +01:00
Thomas Graf
3a9562001c
sfq: perturb period is in seconds, not jiffies
2010-11-17 11:55:03 +01:00
Thomas Graf
4d28cc51bc
link/inet: pretty printing, make output more readable
2010-11-17 00:06:34 +01:00
Thomas Graf
f56317f4b8
update Doxyfile to latest version
2010-11-16 15:28:16 +01:00