aboutsummaryrefslogtreecommitdiffstats
path: root/meta-networking/recipes-protocols/freediameter/freediameter_1.2.1.bb
diff options
context:
space:
mode:
authorMingli Yu <Mingli.Yu@windriver.com>2018-09-03 16:55:33 +0800
committerKhem Raj <raj.khem@gmail.com>2018-09-04 11:55:21 -0700
commit2fa611a12facd48c0b1f117072b3bc7163b64e22 (patch)
tree1849b0f4ce410b2573f8885e76e7b13d3e6f7701 /meta-networking/recipes-protocols/freediameter/freediameter_1.2.1.bb
parenta3051a58ae9080af9cc0e553670b0300d1b9252e (diff)
downloadmeta-openembedded-contrib-2fa611a12facd48c0b1f117072b3bc7163b64e22.tar.gz
freediameter: update the old sctp api check
The initial sctp api check for freediameter as below: === commit d3c5e991cb532ea09684d69fb4d0d58e9bc39a0c Author: Sebastien Decugis <sdecugis@freediameter.net> Date: Mon Jun 3 12:05:37 2013 +0800 Add some compliancy to RFC6458. Not tested however as Ubuntu does not support this yet [snip] +/* Use old draft-ietf-tsvwg-sctpsocket-17 API ? If not defined, RFC6458 API will be used */ +/* #define OLD_SCTP_SOCKET_API */ + +/* Automatically fallback to old API if some of the new symbols are not defined */ +#if (!defined(SCTP_CONNECTX_4_ARGS) || (!defined(SCTP_RECVRCVINFO)) || (!defined(SCTP_SNDINFO))) +# define OLD_SCTP_SOCKET_API +#endif === SCTP_RECVRCVINFO is defined in <linux/sctp.h>, but <linux/sctp.h> is't included in the source code previouly. So defined(SCTP_RECVRCVINFO) can be 0 and it makes old sctp socket api definition in effect as below: # define OLD_SCTP_SOCKET_API After lksctp-tools upgrade to 1.0.18, there is below commit introduced in lksctp-tools git: === commit 3c8bd0d26b64611c690f33f5802c734b0642c1d8 Author: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com> Date: Tue Apr 17 20:17:14 2018 -0300 sctp.h: make use kernel UAPI header and with that, remove tons of duplicated declarations. These were lagging behind the kernel header, which is always the most updated one, and as the library is intended to be run only on Linux, there is no reason that we cannot re-use what is in there. That said, this patch drops all duplicated declarations and includes linux/sctp.h to bring them into lksctp-tools. Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com> [snip] #include <stdint.h> #include <linux/types.h> #include <sys/socket.h> +#include <linux/sctp.h> [snip] === And above logic make defined(SCTP_RECVRCVINFO) to be 1 and the old sctp socket api macro as below won't be defined. # define OLD_SCTP_SOCKET_API And it encouters below build error: | /build/freediameter/1.2.1-r0/freeDiameter-1.2.1/libfdcore/sctp.c:1262:9: error: 'SCTP_SEND_FAILED_EVENT' undeclared (first use in this function); did you mean 'SCTP_SEND_FAILED'? case SCTP_SEND_FAILED_EVENT: ^~~~~~~~~~~~~~~~~~~~~~ SCTP_SEND_FAILED | /build/freediameter/1.2.1-r0/freeDiameter-1.2.1/libfdcore/sctp.c:1262:9: note: each undeclared identifier is reported only once for each function it appears in | /build/freediameter/1.2.1-r0/freeDiameter-1.2.1/libfdcore/sctp.c:1274:9: error: 'SCTP_NOTIFICATIONS_STOPPED_EVENT' undeclared (first use in this function); did you mean 'SCTP_AUTHENTICATION_EVENT'? case SCTP_NOTIFICATIONS_STOPPED_EVENT: Update the old sctp socket api check to fix the above build error. Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-networking/recipes-protocols/freediameter/freediameter_1.2.1.bb')
-rw-r--r--meta-networking/recipes-protocols/freediameter/freediameter_1.2.1.bb1
1 files changed, 1 insertions, 0 deletions
diff --git a/meta-networking/recipes-protocols/freediameter/freediameter_1.2.1.bb b/meta-networking/recipes-protocols/freediameter/freediameter_1.2.1.bb
index 670d8b0b60..b8818fa6c0 100644
--- a/meta-networking/recipes-protocols/freediameter/freediameter_1.2.1.bb
+++ b/meta-networking/recipes-protocols/freediameter/freediameter_1.2.1.bb
@@ -20,6 +20,7 @@ SRC_URI = "\
file://freediameter.init \
${@bb.utils.contains('DISTRO_FEATURES', 'ptest', 'file://install_test.patch file://run-ptest file://pass-ptest-env.patch', '', d)} \
file://freeDiameter.conf \
+ file://0001-libfdcore-sctp.c-update-the-old-sctp-api-check.patch \
"
SRC_URI[md5sum] = "61b1062aa144b5f12eed514611e6d697"