From 54f1ccbb6bd88457c9fc59839b2fa206a335252f Mon Sep 17 00:00:00 2001 From: Sukchan Lee Date: Sun, 21 Mar 2021 17:44:42 +0900 Subject: [PATCH] Upgrade freeDiameter from v1.3.2 to v1.5.0 --- lib/diameter/common/init.c | 30 ++++++++++++++---------------- lib/diameter/gx/dict.c | 4 ++-- lib/diameter/s6a/dict.c | 2 +- subprojects/freeDiameter.wrap | 2 +- 4 files changed, 18 insertions(+), 20 deletions(-) diff --git a/lib/diameter/common/init.c b/lib/diameter/common/init.c index 466e2aa92..5b68c6a94 100644 --- a/lib/diameter/common/init.c +++ b/lib/diameter/common/init.c @@ -22,8 +22,7 @@ int __ogs_diam_domain; static void diam_gnutls_log_func(int level, const char *str); -static void diam_log_func(int printlevel, - const char *fname, int line, const char *format, va_list ap); +static void diam_log_func(int printlevel, const char *format, va_list ap); int ogs_diam_init(int mode, const char *conffile, ogs_diam_config_t *fd_config) { @@ -87,8 +86,7 @@ static void diam_gnutls_log_func(int level, const char *str) ogs_trace("gnutls[%d]: %s", level, str); } -static void diam_log_func(int printlevel, - const char *fname, int line, const char *format, va_list ap) +static void diam_log_func(int printlevel, const char *format, va_list ap) { char buffer[OGS_HUGE_LEN*2]; int ret = 0; @@ -102,18 +100,24 @@ static void diam_log_func(int printlevel, return; } +#define diam_log_printf(level, ...) \ + ogs_log_printf(level, OGS_LOG_DOMAIN, 0, NULL, 0, NULL, 0, __VA_ARGS__) + switch(printlevel) { case FD_LOG_ANNOYING: - ogs_trace("[%d]: %s:%u %s", printlevel, fname, line, buffer); + diam_log_printf(OGS_LOG_TRACE, "[%d] %s\n", printlevel, buffer); break; case FD_LOG_DEBUG: - ogs_trace("[%d]: %s:%u %s", printlevel, fname, line, buffer); + diam_log_printf(OGS_LOG_TRACE, "[%d] %s\n", printlevel, buffer); break; + case FD_LOG_INFO: + diam_log_printf(OGS_LOG_TRACE, "[%d] %s\n", printlevel, buffer); + break; case FD_LOG_NOTICE: - ogs_trace("[%d]: %s:%u %s", printlevel, fname, line, buffer); + diam_log_printf(OGS_LOG_DEBUG, "%s\n", buffer); break; case FD_LOG_ERROR: - ogs_error("%s:%d %s", fname, line, buffer); + diam_log_printf(OGS_LOG_ERROR, "%s\n", buffer); if (!strcmp(buffer, " - The certificate is expired.")) { ogs_error("You can renew CERT as follows:"); ogs_error("./support/freeDiameter/make_certs.sh " @@ -121,16 +125,10 @@ static void diam_log_func(int printlevel, } break; case FD_LOG_FATAL: - { - const char *except = "Initiating freeDiameter shutdown sequence"; - if (strncmp(buffer, except, strlen(except)) == 0) - ogs_info("[%d]: %s:%u %s", printlevel, fname, line, buffer); - else - ogs_fatal("%s:%d %s", fname, line, buffer); - } + diam_log_printf(OGS_LOG_FATAL, "%s\n", buffer); break; default: - ogs_warn("%s:%d %s", fname, line, buffer); + diam_log_printf(OGS_LOG_ERROR, "[%d] %s\n", printlevel, buffer); break; } } diff --git a/lib/diameter/gx/dict.c b/lib/diameter/gx/dict.c index a741bd385..9c1f00abc 100644 --- a/lib/diameter/gx/dict.c +++ b/lib/diameter/gx/dict.c @@ -186,7 +186,7 @@ int ogs_dict_gx_entry(char *conffile) { { .avp_vendor = 10415, .avp_name = "AN-GW-Address" }, RULE_OPTIONAL, -1, 2 }, { { .avp_vendor = 10415, .avp_name = "3GPP-SGSN-MCC-MNC" }, RULE_OPTIONAL, -1, 1 }, { { .avp_vendor = 10415, .avp_name = "3GPP-SGSN-Address" }, RULE_OPTIONAL, -1, 1 }, - { { .avp_vendor = 10415, .avp_name = "3GPP-SGSN-IPv6-Address" }, RULE_OPTIONAL, -1, 1 }, + { { .avp_vendor = 10415, .avp_name = "3GPP-SGSN-Ipv6-Address" }, RULE_OPTIONAL, -1, 1 }, { { .avp_vendor = 10415, .avp_name = "RAI" }, RULE_OPTIONAL, -1, 1 }, { { .avp_vendor = 10415, .avp_name = "3GPP-User-Location-Info" }, RULE_OPTIONAL, -1, 1 }, { { .avp_vendor = 10415, .avp_name = "3GPP-MS-TimeZone" }, RULE_OPTIONAL, -1, 1 }, @@ -220,7 +220,7 @@ int ogs_dict_gx_entry(char *conffile) { { .avp_vendor = 10415, .avp_name = "AN-GW-Address" }, RULE_OPTIONAL, -1, 2 }, { { .avp_vendor = 10415, .avp_name = "3GPP-SGSN-MCC-MNC" }, RULE_OPTIONAL, -1, 1 }, { { .avp_vendor = 10415, .avp_name = "3GPP-SGSN-Address" }, RULE_OPTIONAL, -1, 1 }, - { { .avp_vendor = 10415, .avp_name = "3GPP-SGSN-IPv6-Address" }, RULE_OPTIONAL, -1, 1 }, + { { .avp_vendor = 10415, .avp_name = "3GPP-SGSN-Ipv6-Address" }, RULE_OPTIONAL, -1, 1 }, { { .avp_vendor = 10415, .avp_name = "RAI" }, RULE_OPTIONAL, -1, 1 }, { { .avp_vendor = 10415, .avp_name = "3GPP-User-Location-Info" }, RULE_OPTIONAL, -1, 1 }, { { .avp_vendor = 10415, .avp_name = "3GPP-MS-TimeZone" }, RULE_OPTIONAL, -1, 1 }, diff --git a/lib/diameter/s6a/dict.c b/lib/diameter/s6a/dict.c index e8e124c3b..be39266c7 100644 --- a/lib/diameter/s6a/dict.c +++ b/lib/diameter/s6a/dict.c @@ -312,7 +312,7 @@ int ogs_dict_s6a_entry(char *conffile) { { .avp_vendor = 10415, .avp_name = "APN-OI-Replacement" }, RULE_OPTIONAL, -1, 1 }, { { .avp_vendor = 10415, .avp_name = "LCS-Info" }, RULE_OPTIONAL, -1, 1 }, { { .avp_vendor = 10415, .avp_name = "Teleservice-List" }, RULE_OPTIONAL, -1, 1 }, - { { .avp_vendor = 10415, .avp_name = "Call-Barring-Infor-List" }, RULE_OPTIONAL, -1, 1 }, + { { .avp_vendor = 10415, .avp_name = "Call-Barring-Info" }, RULE_OPTIONAL, -1, 1 }, { { .avp_vendor = 10415, .avp_name = "3GPP-Charging-Characteristics" }, RULE_OPTIONAL, -1, 1 }, { { .avp_vendor = 10415, .avp_name = "AMBR" }, RULE_OPTIONAL, -1, 1 }, { { .avp_vendor = 10415, .avp_name = "APN-Configuration-Profile" }, RULE_OPTIONAL, -1, 1 }, diff --git a/subprojects/freeDiameter.wrap b/subprojects/freeDiameter.wrap index 0669ac05a..a4ed53e98 100644 --- a/subprojects/freeDiameter.wrap +++ b/subprojects/freeDiameter.wrap @@ -1,4 +1,4 @@ [wrap-git] directory = freeDiameter url = https://github.com/open5gs/freeDiameter.git -revision = open5gs +revision = mid