Ticket #20180: patch-erts_emulator_drivers_common-inet_drv.c

File patch-erts_emulator_drivers_common-inet_drv.c, 1.1 KB (added by rkmspence@…, 15 years ago)

Introduce conditional compilation around Linux-specific SCTP features. (Linux has yet to be updated to the latest SCTP interface definition.)

Line 
1--- erts/emulator/drivers/common/inet_drv.c.orig        2009-07-05 12:11:46.000000000 +0200
2+++ erts/emulator/drivers/common/inet_drv.c     2009-07-05 12:14:53.000000000 +0200
3@@ -5309,8 +5309,10 @@
4            sackdelay_disable=eflags& SCTP_FLAG_SACDELAY_DISABLE;
5            if (sackdelay_enable && sackdelay_disable)
6                return -1;
7+#          ifdef HAVE_STRUCT_SCTP_PADDRPARAMS_SPP_SACKDELAY
8            if (sackdelay_enable)               cflags |= SPP_SACKDELAY_ENABLE;
9            if (sackdelay_disable)              cflags |= SPP_SACKDELAY_DISABLE;
10+#          endif
11 
12            arg.pap.spp_flags  = cflags;
13 #          endif
14@@ -6212,12 +6214,14 @@
15            if (ap.spp_flags & SPP_PMTUD_DISABLE)
16                { i = LOAD_ATOM (spec, i, am_pmtud_disable);         n++; }
17           
18+#          ifdef HAVE_STRUCT_SCTP_PADDRPARAMS_SPP_SACKDELAY
19            if (ap.spp_flags & SPP_SACKDELAY_ENABLE)
20                { i = LOAD_ATOM (spec, i, am_sackdelay_enable);      n++; }
21           
22            if (ap.spp_flags & SPP_SACKDELAY_DISABLE)
23                { i = LOAD_ATOM (spec, i, am_sackdelay_disable);     n++; }
24 #          endif
25+#          endif
26           
27            PLACE_FOR(spec, i,
28                      LOAD_NIL_CNT + LOAD_LIST_CNT + 2*LOAD_TUPLE_CNT);