summaryrefslogtreecommitdiff
path: root/examples/var_service/gpm
diff options
context:
space:
mode:
authorHauke Mehrtens2016-09-16 22:40:28 +0200
committerDenys Vlasenko2016-09-18 22:55:47 +0200
commit4ff86df861069e51ee796bac4e8ead942f8985f5 (patch)
treecd13a51bb4652cba3fddc3c21d1fc50debbe8e96 /examples/var_service/gpm
parent0ae0509679033c8c9b511b83027d5ef076b7bf2b (diff)
downloadbusybox-4ff86df861069e51ee796bac4e8ead942f8985f5.zip
busybox-4ff86df861069e51ee796bac4e8ead942f8985f5.tar.gz
libnetlink: fix alignment of netlink messages
A padding to align a message should not only be added between different attributes of a netlink message, but also at the end of the message to pad it to the correct size. Without this patch the following command does not work and returns an error code: ip link add type nlmon Without this ip from busybox sends this: sendmsg(3, {msg_name={sa_family=AF_NETLINK, nl_pid=0, nl_groups=00000000}, msg_namelen=12, msg_iov=[{iov_base={{len=45, ...}, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\20\0\22\0\t\0\1nlmon"}, iov_len=45}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 45 return value: 2 The normal ip utile from iproute2 sends this: sendmsg(3, {msg_name={sa_family=AF_NETLINK, nl_pid=0, nl_groups=00000000}, msg_namelen=12, msg_iov=[{iov_base={{len=48, ...}, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\20\0\22\0\t\0\1nlmon\0\0\0"}, iov_len=48}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 48 return value: 0 With this patch ip from busybox sends this: sendmsg(3, {msg_name={sa_family=AF_NETLINK, nl_pid=0, nl_groups=00000000}, msg_namelen=12, msg_iov=[{iov_base={{len=48, ...}, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\20\0\22\0\t\0\1nlmon\0\0\0"}, iov_len=48}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 48 return value: 0 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'examples/var_service/gpm')
0 files changed, 0 insertions, 0 deletions