forked from mirrors/linux
		
	net_sched: add max len check for TCA_KIND
The TCA_KIND attribute is of NLA_STRING which does not check
the NUL char. KMSAN reported an uninit-value of TCA_KIND which
is likely caused by the lack of NUL.
Change it to NLA_NUL_STRING and add a max len too.
Fixes: 8b4c3cdd9d ("net: sched: Add policy validation for tc attributes")
Reported-and-tested-by: syzbot+618aacd49e8c8b8486bd@syzkaller.appspotmail.com
Cc: Jamal Hadi Salim <jhs@mojatatu.com>
Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
Reviewed-by: David Ahern <dsahern@gmail.com>
Acked-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com>
			
			
This commit is contained in:
		
							parent
							
								
									b0e1ee435a
								
							
						
					
					
						commit
						62794fc4fb
					
				
					 1 changed files with 2 additions and 1 deletions
				
			
		|  | @ -1390,7 +1390,8 @@ check_loop_fn(struct Qdisc *q, unsigned long cl, struct qdisc_walker *w) | |||
| } | ||||
| 
 | ||||
| const struct nla_policy rtm_tca_policy[TCA_MAX + 1] = { | ||||
| 	[TCA_KIND]		= { .type = NLA_STRING }, | ||||
| 	[TCA_KIND]		= { .type = NLA_NUL_STRING, | ||||
| 				    .len = IFNAMSIZ - 1 }, | ||||
| 	[TCA_RATE]		= { .type = NLA_BINARY, | ||||
| 				    .len = sizeof(struct tc_estimator) }, | ||||
| 	[TCA_STAB]		= { .type = NLA_NESTED }, | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue
	
	 Cong Wang
						Cong Wang