Blob Blame History Raw
From: Michal Kubecek <mkubecek@suse.cz>
Date: Tue, 26 Oct 2021 11:43:01 +0200
Subject: kabi: hide return value type change of sctp_af::from_addr_param
Patch-mainline: Never, kabi workaround
References: CVE-2021-3655 bsc#1188563

Backport of mainline commit 0c5dc070ff3d ("sctp: validate from_addr_param
return") changed return type of ->from_addr_param() callback in struct
sctp_af from void to bool in order to handle failures properly.

While struct sctp_af is kabi protected, sctp_register_af() is not exported
so that out of tree modules cannot register other instances of it than the
two already defined in our kernel tree (sctp_af_inet and sctp_af_inet6).
Therefore it is safe to simply hide the return type change from genksyms.

Signed-off-by: Michal Kubecek <mkubecek@suse.cz>
---
 include/net/sctp/structs.h | 6 ++++++
 1 file changed, 6 insertions(+)

--- a/include/net/sctp/structs.h
+++ b/include/net/sctp/structs.h
@@ -439,9 +439,15 @@ struct sctp_af {
 					 int saddr);
 	void		(*from_sk)	(union sctp_addr *,
 					 struct sock *sk);
+#ifdef __GENKSYMS__
+	void		(*from_addr_param) (union sctp_addr *,
+					    union sctp_addr_param *,
+					    __be16 port, int iif);
+#else
 	bool		(*from_addr_param) (union sctp_addr *,
 					    union sctp_addr_param *,
 					    __be16 port, int iif);
+#endif
 	int		(*to_addr_param) (const union sctp_addr *,
 					  union sctp_addr_param *); 
 	int		(*addr_valid)	(union sctp_addr *,