Mercurial > hg > freeDiameter
comparison libfdcore/sctp.c @ 817:7541554029bf 1.1.4-rc1
Fix SCTP_I_WANT_MAPPED_V4_ADDR behavior when IPv6 is disabled in config; thank you Michael Tuexen for the issue report \& patch.
author | Sebastien Decugis <sdecugis@freediameter.net> |
---|---|
date | Mon, 27 Aug 2012 13:43:03 +0200 |
parents | cb84f5be889d |
children | 43fb27a9037f |
comparison
equal
deleted
inserted
replaced
816:af62a5485fa2 | 817:7541554029bf |
---|---|
406 TRACE_DEBUG(SCTP_LEVEL, "Skipping SCTP_EVENTS"); | 406 TRACE_DEBUG(SCTP_LEVEL, "Skipping SCTP_EVENTS"); |
407 #endif /* SCTP_EVENTS */ | 407 #endif /* SCTP_EVENTS */ |
408 | 408 |
409 /* Set the v4 mapped addresses option */ | 409 /* Set the v4 mapped addresses option */ |
410 #ifdef SCTP_I_WANT_MAPPED_V4_ADDR | 410 #ifdef SCTP_I_WANT_MAPPED_V4_ADDR |
411 { | 411 if (!fd_g_config->cnf_flags.no_ip6) { |
412 int v4mapped; | 412 int v4mapped; |
413 | 413 |
414 if (TRACE_BOOL(SCTP_LEVEL)) { | 414 if (TRACE_BOOL(SCTP_LEVEL)) { |
415 sz = sizeof(v4mapped); | 415 sz = sizeof(v4mapped); |
416 /* Read socket defaults */ | 416 /* Read socket defaults */ |
435 if (TRACE_BOOL(SCTP_LEVEL)) { | 435 if (TRACE_BOOL(SCTP_LEVEL)) { |
436 /* Check new values */ | 436 /* Check new values */ |
437 CHECK_SYS( getsockopt(sk, IPPROTO_SCTP, SCTP_I_WANT_MAPPED_V4_ADDR, &v4mapped, &sz) ); | 437 CHECK_SYS( getsockopt(sk, IPPROTO_SCTP, SCTP_I_WANT_MAPPED_V4_ADDR, &v4mapped, &sz) ); |
438 fd_log_debug( "New SCTP_I_WANT_MAPPED_V4_ADDR value : %s\n", v4mapped ? "true" : "false"); | 438 fd_log_debug( "New SCTP_I_WANT_MAPPED_V4_ADDR value : %s\n", v4mapped ? "true" : "false"); |
439 } | 439 } |
440 } else { | |
441 TRACE_DEBUG(SCTP_LEVEL, "Skipping SCTP_I_WANT_MAPPED_V4_ADDR, since IPv6 disabled."); | |
440 } | 442 } |
441 #else /* SCTP_I_WANT_MAPPED_V4_ADDR */ | 443 #else /* SCTP_I_WANT_MAPPED_V4_ADDR */ |
442 TRACE_DEBUG(SCTP_LEVEL, "Skipping SCTP_I_WANT_MAPPED_V4_ADDR"); | 444 TRACE_DEBUG(SCTP_LEVEL, "Skipping SCTP_I_WANT_MAPPED_V4_ADDR"); |
443 #endif /* SCTP_I_WANT_MAPPED_V4_ADDR */ | 445 #endif /* SCTP_I_WANT_MAPPED_V4_ADDR */ |
444 | 446 |