iproute2/ip
Michal Kubecek 4c0939a29e ip xfrm: use correct key length for netlink message
When SA is added manually using "ip xfrm state add", xfrm_state_modify()
uses alg_key_len field of struct xfrm_algo for the length of key passed to
kernel in the netlink message. However alg_key_len is bit length of the key
while we need byte length here. This is usually harmless as kernel ignores
the excess data but when the bit length of the key exceeds 512
(XFRM_ALGO_KEY_BUF_SIZE), it can result in buffer overflow.

We can simply divide by 8 here as the only place setting alg_key_len is in
xfrm_algo_parse() where it is always set to a multiple of 8 (and there are
already multiple places using "algo->alg_key_len / 8").

Signed-off-by: Michal Kubecek <mkubecek@suse.cz>
2017-10-01 13:44:38 -07:00
..
.gitignore Another .gitignore file. 2006-08-08 12:11:23 -07:00
Makefile json: move json printer to common library 2017-09-22 10:06:43 -07:00
ifcfg ifcfg: Quote left-hand side of [ ] expression 2017-08-18 09:11:00 -07:00
ip.c ip: add new command line argument -json (mutually exclusive with -color) 2017-08-17 18:02:40 -07:00
ip6tunnel.c ip6tunnel: Align ipv6 tunnel key display with ipv4 2017-01-12 17:34:02 -08:00
ip_common.h json: move json printer to common library 2017-09-22 10:06:43 -07:00
ipaddress.c lib: json_print: rework 'new_json_obj' drop FILE* argument 2017-09-29 10:10:47 -07:00
ipaddrlabel.c Use C99 style initializers everywhere 2016-07-20 12:05:24 -07:00
ipfou.c fou: show usage even if the module is not available 2016-08-17 14:00:22 -07:00
ipila.c ila: show usage even if the module is not available 2016-08-17 14:00:28 -07:00
ipl2tp.c utils: make hex2mem available to all users 2017-01-17 08:45:22 -08:00
iplink.c Merge branch 'master' into net-next 2017-09-01 14:15:31 -07:00
iplink_bond.c ip: iplink_bond.c: add json output support 2017-08-17 18:02:40 -07:00
iplink_bond_slave.c ip: iplink_bond_slave.c: add json output support (info_slave_data) 2017-08-17 18:02:40 -07:00
iplink_bridge.c ip: iplink_bridge.c: add json output support 2017-08-17 18:02:40 -07:00
iplink_bridge_slave.c ip: iplink_bridge_slave.c: add json output support 2017-08-17 18:02:41 -07:00
iplink_can.c Merge branch 'master' into net-next 2017-08-21 17:37:15 -07:00
iplink_dummy.c ip: link: Add missing link type help texts 2017-04-04 14:51:29 -07:00
iplink_geneve.c ip: iplink_geneve.c: add json output support 2017-08-17 18:02:41 -07:00
iplink_hsr.c ip: iplink_hsr.c: add json output support 2017-08-17 18:02:40 -07:00
iplink_ifb.c ip: link: Add missing link type help texts 2017-04-04 14:51:29 -07:00
iplink_ipoib.c ip: iplink_ipoib.c: add json output support 2017-08-17 18:02:41 -07:00
iplink_ipvlan.c ip: iplink_ipvlan.c: add json output support 2017-08-17 18:02:41 -07:00
iplink_macvlan.c ip: link_macvlan.c: add json output support 2017-08-17 18:02:41 -07:00
iplink_nlmon.c ip: link: Add missing link type help texts 2017-04-04 14:51:29 -07:00
iplink_team.c ip: link: Add missing link type help texts 2017-04-04 14:51:29 -07:00
iplink_vcan.c ip: link: Add missing link type help texts 2017-04-04 14:51:29 -07:00
iplink_vlan.c ip: iplink_vlan.c: add json output support 2017-08-17 18:02:41 -07:00
iplink_vrf.c Merge branch 'master' into net-next 2017-08-21 17:37:15 -07:00
iplink_vxcan.c ip: link add vxcan support 2017-06-05 12:27:32 -07:00
iplink_vxlan.c ip: iplink_vxlan.c: add json output support 2017-08-17 18:02:41 -07:00
iplink_xdp.c bpf: properly output json for xdp 2017-09-22 10:07:15 -07:00
iplink_xstats.c add missing iplink_xstats.c 2017-02-20 08:53:40 -08:00
ipmacsec.c ip: ipmacsec.c: add json output support 2017-08-17 18:02:41 -07:00
ipmaddr.c ipmaddr: Avoid accessing uninitialized data 2017-08-21 17:17:00 -07:00
ipmonitor.c ip: Add support for MPLS netconf 2017-02-23 08:58:40 -08:00
ipmroute.c ip: mroute: Add table output to show command 2017-06-15 08:29:30 -07:00
ipneigh.c ip neigh: allow flush FAILED neighbour entry 2017-06-16 09:01:02 -07:00
ipnetconf.c ip netconf: show all families on dev request 2017-04-14 16:00:15 -07:00
ipnetns.c Convert the obvious cases to strlcpy() 2017-09-01 12:10:54 -07:00
ipntable.c ipntable: Avoid memory allocation for filter.name 2017-08-24 14:53:14 -07:00
ipprefix.c netlink route attribute cleanup 2017-02-24 08:56:38 -08:00
iproute.c ip-route: Fix for listing routes with RTAX_LOCK attribute 2017-09-29 12:02:09 -07:00
iproute_lwtunnel.c Merge branch 'master' into net-next 2017-09-01 12:17:48 -07:00
iproute_lwtunnel.h lwtunnel: Add encapsulation support to ip route 2015-10-16 16:13:22 -07:00
iprule.c ip: support UID range routing. 2016-11-29 12:26:37 -08:00
ipseg6.c ip: add ip sr command to control SR-IPv6 internal structures 2017-04-16 10:21:43 -07:00
iptoken.c Use C99 style initializers everywhere 2016-07-20 12:05:24 -07:00
iptunnel.c Use C99 style initializers everywhere 2016-07-20 12:05:24 -07:00
iptuntap.c tuntap: Add name attribute to usage text 2016-09-08 14:31:33 -07:00
ipvrf.c Convert harmful calls to strncpy() to strlcpy() 2017-09-01 12:10:54 -07:00
ipxfrm.c ipxfrm: Replace STRBUF_CAT macro with strlcat() 2017-09-01 12:10:54 -07:00
link_gre.c gre: add support for ERSPAN tunnel 2017-08-23 10:06:54 -07:00
link_gre6.c Merge branch 'master' into net-next 2017-09-01 12:17:48 -07:00
link_ip6tnl.c ip: link_ip6tnl.c: add json output support 2017-08-17 18:02:41 -07:00
link_iptnl.c ip: link_iptnl.c: add json output support 2017-08-17 18:02:41 -07:00
link_veth.c ip: code cleanup 2016-03-21 11:52:19 -07:00
link_vti.c ip: link_vti.c: add json output support 2017-08-17 18:02:41 -07:00
link_vti6.c ip: link_vti6.c: add json output support 2017-08-17 18:02:41 -07:00
routef ip/routef lifesaver 2007-07-10 18:29:20 -07:00
routel routel: fix infinite loop in line parser 2017-04-27 16:42:29 -07:00
rtm_map.c ip, realms: also allow to pass in raw realms value 2015-10-22 23:40:51 -07:00
rtmon.c ip: code cleanup 2016-03-21 11:52:19 -07:00
rtpr (Logical change 1.3) 2004-04-15 20:56:59 +00:00
static-syms.c Fix build when shared libraries are disabled 2013-03-13 08:29:59 -07:00
tcp_metrics.c libgenl: introduce genl_init_handle 2016-08-17 13:59:21 -07:00
tunnel.c iptunnel: add support for mpls/ip to sit tunnels 2017-07-05 09:04:59 -07:00
tunnel.h ip{,6}tunnel: have a shared stats parser/printer 2015-12-18 11:46:21 -08:00
xdp.h bpf: consolidate dumps to use bpf_dump_prog_info 2017-09-05 09:26:34 -07:00
xfrm.h xfrm: get #define's from linux includes 2017-06-14 10:25:39 -07:00
xfrm_monitor.c netlink route attribute cleanup 2017-02-24 08:56:38 -08:00
xfrm_policy.c netlink route attribute cleanup 2017-02-24 08:56:38 -08:00
xfrm_state.c ip xfrm: use correct key length for netlink message 2017-10-01 13:44:38 -07:00