Projects
osmocom:latest
osmo-ggsn
Sign Up
Log In
Username
Password
We truncated the diff of some files because they were too big. If you want to see the full diff for every file,
click here
.
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 3
View file
osmo-ggsn.spec
Changed
@@ -18,22 +18,22 @@ Name: osmo-ggsn Requires: osmocom-latest -Version: 1.8.0 +Version: 1.9.0 Release: 0 Summary: GPRS Support Node License: GPL-2.0-only AND LGPL-2.1-or-later Group: Productivity/Telephony/Servers URL: https://osmocom.org/projects/openggsn -Source: osmo-ggsn_1.8.0.tar.xz +Source: osmo-ggsn_1.9.0.tar.xz BuildRequires: libtool >= 2 BuildRequires: pkgconfig >= 0.20 %if 0%{?suse_version} BuildRequires: systemd-rpm-macros %endif BuildRequires: pkgconfig(libgtpnl) >= 1.2.0 -BuildRequires: pkgconfig(libosmocore) >= 1.5.0 -BuildRequires: pkgconfig(libosmoctrl) >= 1.5.0 -BuildRequires: pkgconfig(libosmovty) >= 1.5.0 +BuildRequires: pkgconfig(libosmocore) >= 1.7.0 +BuildRequires: pkgconfig(libosmoctrl) >= 1.7.0 +BuildRequires: pkgconfig(libosmovty) >= 1.7.0 Obsoletes: openggsn %{?systemd_requires}
View file
osmo-ggsn_1.8.0.dsc -> osmo-ggsn_1.9.0.dsc
Changed
@@ -2,13 +2,13 @@ Source: osmo-ggsn Binary: osmo-ggsn, libgtp6, gtp-echo-responder, libgtp-dev, osmo-ggsn-dbg, gtp-echo-responder-dbg, libgtp-dbg, osmo-ggsn-doc Architecture: any all -Version: 1.8.0 +Version: 1.9.0 Maintainer: Osmocom team <openbsc@lists.osmocom.org> Homepage: https://projects.osmocom.org/projects/openggsn Standards-Version: 3.9.6 -Vcs-Browser: http://git.osmocom.org/osmo-ggsn/ -Vcs-Git: git://git.osmocom.org/osmo-ggsn -Build-Depends: debhelper (>= 9), autotools-dev, pkg-config, libdpkg-perl, git, dh-autoreconf, libosmocore-dev (>= 1.5.0), osmo-gsm-manuals-dev, libgtpnl-dev (>= 1.2.0) +Vcs-Browser: https://gitea.osmocom.org/cellular-infrastructure/osmo-ggsn +Vcs-Git: https://gitea.osmocom.org/cellular-infrastructure/osmo-ggsn +Build-Depends: debhelper (>= 9), autotools-dev, pkg-config, libdpkg-perl, git, dh-autoreconf, libosmocore-dev (>= 1.7.0), osmo-gsm-manuals-dev, libgtpnl-dev (>= 1.2.0) Package-List: gtp-echo-responder deb net optional arch=any gtp-echo-responder-dbg deb debug extra arch=any @@ -19,8 +19,8 @@ osmo-ggsn-dbg deb debug extra arch=any osmo-ggsn-doc deb doc optional arch=all Checksums-Sha1: - 18f8299da086c4b93cb5fd1e834f5dbc2609ed41 181356 osmo-ggsn_1.8.0.tar.xz + b73aefe02d31c3d6026fad5f916b5e123b0daff8 186540 osmo-ggsn_1.9.0.tar.xz Checksums-Sha256: - 6bd5c1785da105f309eb8a0a86a2c90ce414ad23d6d3c18abd596342541e2d4a 181356 osmo-ggsn_1.8.0.tar.xz + 560bf8eab21a097f04ddcf55f2517ca82e6a9e1ce66b428c1263736ce52d705d 186540 osmo-ggsn_1.9.0.tar.xz Files: - 08dc7af8f3201f5d1721ba89761702c0 181356 osmo-ggsn_1.8.0.tar.xz + 86b26dbafd0c12798d954fddc7775e94 186540 osmo-ggsn_1.9.0.tar.xz
View file
osmo-ggsn_1.8.0.tar.xz/.tarball-version -> osmo-ggsn_1.9.0.tar.xz/.tarball-version
Changed
@@ -1 +1 @@ -1.8.0 \ No newline at end of file +1.9.0 \ No newline at end of file
View file
osmo-ggsn_1.8.0.tar.xz/README.md -> osmo-ggsn_1.9.0.tar.xz/README.md
Changed
@@ -20,9 +20,9 @@ You can clone from the official osmo-ggsn.git repository using - git clone git://git.osmocom.org/osmo-ggsn.git + git clone https://gitea.osmocom.org/cellular-infrastructure/osmo-ggsn -There is a cgit interface at http://git.osmocom.org/osmo-ggsn/ +There is a web interface at <https://gitea.osmocom.org/cellular-infrastructure/osmo-ggsn> Documentation -------------
View file
osmo-ggsn_1.8.0.tar.xz/configure.ac -> osmo-ggsn_1.9.0.tar.xz/configure.ac
Changed
@@ -154,9 +154,9 @@ AM_INIT_AUTOMAKE(foreign) -PKG_CHECK_MODULES(LIBOSMOCORE, libosmocore >= 1.5.0) -PKG_CHECK_MODULES(LIBOSMOVTY, libosmovty >= 1.5.0) -PKG_CHECK_MODULES(LIBOSMOCTRL, libosmoctrl >= 1.5.0) +PKG_CHECK_MODULES(LIBOSMOCORE, libosmocore >= 1.7.0) +PKG_CHECK_MODULES(LIBOSMOVTY, libosmovty >= 1.7.0) +PKG_CHECK_MODULES(LIBOSMOCTRL, libosmoctrl >= 1.7.0) AC_ARG_ENABLE(sanitize, AS_HELP_STRING(
View file
osmo-ggsn_1.8.0.tar.xz/contrib/osmo-ggsn.spec.in -> osmo-ggsn_1.9.0.tar.xz/contrib/osmo-ggsn.spec.in
Changed
@@ -30,9 +30,9 @@ BuildRequires: systemd-rpm-macros %endif BuildRequires: pkgconfig(libgtpnl) >= 1.2.0 -BuildRequires: pkgconfig(libosmocore) >= 1.5.0 -BuildRequires: pkgconfig(libosmoctrl) >= 1.5.0 -BuildRequires: pkgconfig(libosmovty) >= 1.5.0 +BuildRequires: pkgconfig(libosmocore) >= 1.7.0 +BuildRequires: pkgconfig(libosmoctrl) >= 1.7.0 +BuildRequires: pkgconfig(libosmovty) >= 1.7.0 Obsoletes: openggsn %{?systemd_requires}
View file
osmo-ggsn_1.8.0.tar.xz/debian/changelog -> osmo-ggsn_1.9.0.tar.xz/debian/changelog
Changed
@@ -1,3 +1,26 @@ +osmo-ggsn (1.9.0) unstable; urgency=medium + + Pau Espin Pedrol + * tests: in46a_test: Make coverity happy when calling in46a_from_eua + * vty: Fix cmd 'no echo-interval' doing nothing + * libgtp: Fix ggsn crash if pdp alloc array is full (PDP_MAX) + * libgtp: Define retransmit QUEUE_SIZE relative to PDP_MAX (increase) + * gtp: Use switch statement in gtp_create_pdp_ind() + * gtp: Log detection of rx duplicate + * gtp: Small log improvements in gtp_create_pdp_ind() + * gtp: Specify retrans queue name & seqnum in log lines + * gtp: Log retrans queue register&free entries + * gtp: Fix typo in comment + * pco.h: Fix typo in reference to spec + + Vadim Yanitskiy + * tests: use 'check_PROGRAMS' instead of 'noinst_PROGRAMS' + + Harald Welte + * update git URLs (git -> https; gitea) + + -- Pau Espin Pedrol <pespin@sysmocom.de> Tue, 28 Jun 2022 17:48:22 +0200 + osmo-ggsn (1.8.0) unstable; urgency=medium Oliver Smith
View file
osmo-ggsn_1.8.0.tar.xz/debian/control -> osmo-ggsn_1.9.0.tar.xz/debian/control
Changed
@@ -7,12 +7,12 @@ pkg-config, libdpkg-perl, git, dh-autoreconf, - libosmocore-dev (>= 1.5.0), + libosmocore-dev (>= 1.7.0), osmo-gsm-manuals-dev, libgtpnl-dev (>= 1.2.0) Standards-Version: 3.9.6 -Vcs-Browser: http://git.osmocom.org/osmo-ggsn/ -Vcs-Git: git://git.osmocom.org/osmo-ggsn +Vcs-Browser: https://gitea.osmocom.org/cellular-infrastructure/osmo-ggsn +Vcs-Git: https://gitea.osmocom.org/cellular-infrastructure/osmo-ggsn Homepage: https://projects.osmocom.org/projects/openggsn Package: osmo-ggsn
View file
osmo-ggsn_1.8.0.tar.xz/ggsn/ggsn_vty.c -> osmo-ggsn_1.9.0.tar.xz/ggsn/ggsn_vty.c
Changed
@@ -389,10 +389,9 @@ NO_STR "Send an echo request to this static GGSN every interval.\n") { struct ggsn_ctx *ggsn = (struct ggsn_ctx *) vty->index; - int prev_interval = ggsn->cfg.echo_interval; struct sgsn_peer *sgsn; - if (prev_interval == ggsn->cfg.echo_interval) + if (ggsn->cfg.echo_interval == 0) return CMD_SUCCESS; ggsn->cfg.echo_interval = 0;
View file
osmo-ggsn_1.8.0.tar.xz/ggsn/pco.h -> osmo-ggsn_1.9.0.tar.xz/ggsn/pco.h
Changed
@@ -4,7 +4,7 @@ #include "../gtp/pdp.h" -/* 3GPP TS 24.008 10.6.5.3 */ +/* 3GPP TS 24.008 10.5.6.3 */ enum pco_protocols { PCO_P_LCP = 0xC021, PCO_P_PAP = 0xC023,
View file
osmo-ggsn_1.8.0.tar.xz/gtp/Makefile.am -> osmo-ggsn_1.9.0.tar.xz/gtp/Makefile.am
Changed
@@ -2,7 +2,7 @@ # Please read chapter "Library interface versions" of the libtool documentation # before making any modifications: https://www.gnu.org/software/libtool/manual/html_node/Versioning.html # If major=current-age is increased, remember to update the dh_strip line in debian/rules! -LIBVERSION=8:0:2 +LIBVERSION=8:1:2 lib_LTLIBRARIES = libgtp.la
View file
osmo-ggsn_1.8.0.tar.xz/gtp/gtp.c -> osmo-ggsn_1.9.0.tar.xz/gtp/gtp.c
Changed
@@ -400,15 +400,13 @@ time_t now; struct qmsg_t *qmsg; now = time(NULL); - /*printf("Retrans: New beginning %d\n", (int) now); */ /* get first element in queue, as long as the timeout of that * element has expired */ while ((!queue_getfirst(gsn->queue_req, &qmsg)) && (qmsg->timeout <= now)) { - /*printf("Retrans timeout found: %d\n", (int) time(NULL)); */ - if (qmsg->retrans > N3_REQUESTS) { /* To many retrans */ - LOGP(DLGTP, LOGL_NOTICE, "Timeout of seq %" PRIu16 "\n", + if (qmsg->retrans > N3_REQUESTS) { /* Too many retrans */ + LOGP(DLGTP, LOGL_NOTICE, "Retransmit req queue timeout of seq %" PRIu16 "\n", qmsg->seq); if (gsn->cb_conf) gsn->cb_conf(qmsg->type, EOF, NULL, qmsg->cbp); @@ -434,7 +432,8 @@ /* Also clean up reply timeouts */ while ((!queue_getfirst(gsn->queue_resp, &qmsg)) && (qmsg->timeout < now)) { - /*printf("Retrans (reply) timeout found: %d\n", (int) time(NULL)); */ + LOGP(DLGTP, LOGL_DEBUG, "Retransmit resp queue seq %" + PRIu16 " expired, removing from queue\n", qmsg->seq); queue_freemsg(gsn->queue_resp, qmsg); } @@ -630,9 +629,11 @@ /* Use new queue structure */ if (queue_newmsg(gsn->queue_req, &qmsg, &addr, gsn->seq_next)) { gsn->err_queuefull++; - LOGP(DLGTP, LOGL_ERROR, - "Retransmit queue is full\n"); + LOGP(DLGTP, LOGL_ERROR, "Retransmit req queue is full (seq=%" PRIu16 ")\n", + gsn->seq_next); } else { + LOGP(DLGTP, LOGL_DEBUG, "Registering seq=%" PRIu16 + " in restransmit req queue\n", gsn->seq_next); memcpy(&qmsg->p, packet, sizeof(union gtp_packet)); qmsg->l = len; qmsg->timeout = time(NULL) + T3_REQUEST; /* When to timeout */ @@ -660,6 +661,7 @@ { struct qmsg_t *qmsg; + LOGP(DLGTP, LOGL_INFO, "Clearing req & resp retransmit queues\n"); while (!queue_getfirst(gsn->queue_req, &qmsg)) { queue_freemsg(gsn->queue_req, qmsg); } @@ -689,10 +691,14 @@ return EOF; } + GTP_LOGPKG(LOGL_DEBUG, peer, packet, len, + "Freeing seq=%" PRIu16 " from retransmit req queue\n", + seq); if (queue_freemsg_seq(gsn->queue_req, peer, seq, type, cbp)) { gsn->err_seq++; GTP_LOGPKG(LOGL_ERROR, peer, packet, len, - "Confirmation packet not found in queue\n"); + "Confirmation packet not found in retransmit req queue (seq=%" + PRIu16 ")\n", seq); return EOF; } @@ -758,8 +764,11 @@ /* Use new queue structure */ if (queue_newmsg(gsn->queue_resp, &qmsg, peer, seq)) { gsn->err_queuefull++; - LOGP(DLGTP, LOGL_ERROR, "Retransmit queue is full\n"); + LOGP(DLGTP, LOGL_ERROR, "Retransmit resp queue is full (seq=%" PRIu16 ")\n", + seq); } else { + LOGP(DLGTP, LOGL_DEBUG, "Registering seq=%" PRIu16 + " in restransmit resp queue\n", seq); memcpy(&qmsg->p, packet, sizeof(union gtp_packet)); qmsg->l = len; qmsg->timeout = time(NULL) + 60; /* When to timeout */ @@ -827,11 +836,18 @@ struct sockaddr_in *peer, uint16_t seq) { struct qmsg_t *qmsg; + char bufINET_ADDRSTRLEN; if (queue_seqget(gsn->queue_resp, &qmsg, peer, seq)) { return EOF; /* Notfound */ } + + buf0 = '\0'; + inet_ntop(AF_INET, &peer->sin_addr, buf, sizeof(buf)); + LOGP(DLGTP, LOGL_INFO, + "Rx duplicate seq=%" PRIu16 " from %s, retrans resp\n", seq, buf); + if (fcntl(qmsg->fd, F_SETFL, 0)) { LOGP(DLGTP, LOGL_ERROR, "fnctl()\n"); return -1; @@ -1554,7 +1570,8 @@ GTPCAUSE_INVALID_MESSAGE); } - if (version == 1) { + switch (version) { + case 1: /* Linked NSAPI (conditional) */ /* If included this is the Secondary PDP Context Activation Procedure */ /* In secondary activation IMSI is not included, so the context must be */ @@ -1646,9 +1663,9 @@ if (gtpie_gettlv(ie, GTPIE_TFT, 0, &pdp->tft.l, &pdp->tft.v, sizeof(pdp->tft.v))) { } - } - /* if (version == 1) */ - if (version == 0) { + break; /* version 1 */ + + case 0: if (gtpie_gettv0(ie, GTPIE_QOS_PROFILE0, 0, pdp->qos_req0, sizeof(pdp->qos_req0))) { gsn->missing++; @@ -1671,6 +1688,7 @@ return gtp_create_pdp_resp(gsn, version, pdp, GTPCAUSE_MAN_IE_MISSING); } + break; } /* SGSN address for signalling (mandatory) */ @@ -1745,8 +1763,6 @@ in_addr2gsna(&pdp->gsnlc, &gsn->gsnc); in_addr2gsna(&pdp->gsnlu, &gsn->gsnu); - DEBUGP(DLGTP, "gtp_create_pdp_ind: Before gtp_pdp_tidget\n"); - if (!gtp_pdp_getimsi(gsn, &pdp_old, pdp->imsi, pdp->nsapi)) { /* Found old pdp with same tid. Now the voodoo begins! */ /* 09.60 / 29.060 allows create on existing context to "steal" */ @@ -1768,7 +1784,7 @@ * QoS: MS will get originally negotiated QoS. * End user address (EUA). MS will get old EUA anyway. * Protocol configuration option (PCO): Only application can verify */ - DEBUGP(DLGTP, "gtp_create_pdp_ind: Old context found\n"); + DEBUGP(DLGTP, "gtp_create_pdp_ind: Reusing old context\n"); /* Copy remote flow label */ pdp_old->flru = pdp->flru; @@ -1809,7 +1825,16 @@ } } - gtp_pdp_newpdp(gsn, &pdp, pdp->imsi, pdp->nsapi, pdp); + rc = gtp_pdp_newpdp(gsn, &pdp, pdp->imsi, pdp->nsapi, pdp); + if (rc != 0) { + GTP_LOGPKG(LOGL_ERROR, peer, pack, len, + "Failed creating a new PDP context, array full (%u)\n", PDP_MAX); + /* &pdp in gtp_pdp_newpdp is untouched if it failed: */ + rc = gtp_create_pdp_resp(gsn, version, pdp, GTPCAUSE_NO_MEMORY); + /* Don't pass it to emit_cb_recovery, since allocation failed and it was already rejected: */ + pdp = NULL; + goto recover_ret; + } /* Callback function to validate login */ if (gsn->cb_create_context_ind != 0) @@ -1820,6 +1845,8 @@ rc = gtp_create_pdp_resp(gsn, version, pdp, GTPCAUSE_NOT_SUPPORTED); } + +recover_ret: if (recovery_recvd) emit_cb_recovery(gsn, peer, pdp, recovery); return rc;
View file
osmo-ggsn_1.8.0.tar.xz/gtp/queue.h -> osmo-ggsn_1.9.0.tar.xz/gtp/queue.h
Changed
@@ -23,7 +23,7 @@ #define QUEUE_DEBUG 0 /* Print debug information */ -#define QUEUE_SIZE 1024 /* Size of retransmission queue */ +#define QUEUE_SIZE (PDP_MAX*2) /* Size of retransmission queue */ #define QUEUE_HASH_SIZE 65536 /* Size of hash table (2^16) */ struct qmsg_t { /* Holder for queued packets */
View file
osmo-ggsn_1.8.0.tar.xz/tests/gtp/Makefile.am -> osmo-ggsn_1.9.0.tar.xz/tests/gtp/Makefile.am
Changed
@@ -5,7 +5,7 @@ queue_test.ok \ $(NULL) -noinst_PROGRAMS = \ +check_PROGRAMS = \ gtpie_test \ queue_test \ $(NULL)
View file
osmo-ggsn_1.8.0.tar.xz/tests/gtp/queue_test.ok -> osmo-ggsn_1.9.0.tar.xz/tests/gtp/queue_test.ok
Changed
@@ -32,7 +32,7 @@ === Queue created Next: 0 First: -1 Last: -1 # seq next prev timeout retrans type cbp ====================================================== -=== Queue after-fill Next: 1023 First: 0 Last: 1022 +=== Queue after-fill Next: 2047 First: 0 Last: 2046 # seq next prev timeout retrans type cbp 0 0 1 -1 0 0 16 0 1 1 2 0 0 0 16 1 @@ -1056,11 +1056,1035 @@ 1019 1019 1020 1018 0 0 16 1019 1020 1020 1021 1019 0 0 16 1020 1021 1021 1022 1020 0 0 16 1021 -1022 1022 -1 1021 0 0 16 1022 +1022 1022 1023 1021 0 0 16 1022 +1023 1023 1024 1022 0 0 16 1023 +1024 1024 1025 1023 0 0 16 1024 +1025 1025 1026 1024 0 0 16 1025 +1026 1026 1027 1025 0 0 16 1026 +1027 1027 1028 1026 0 0 16 1027 +1028 1028 1029 1027 0 0 16 1028 +1029 1029 1030 1028 0 0 16 1029 +1030 1030 1031 1029 0 0 16 1030 +1031 1031 1032 1030 0 0 16 1031 +1032 1032 1033 1031 0 0 16 1032 +1033 1033 1034 1032 0 0 16 1033 +1034 1034 1035 1033 0 0 16 1034 +1035 1035 1036 1034 0 0 16 1035 +1036 1036 1037 1035 0 0 16 1036 +1037 1037 1038 1036 0 0 16 1037 +1038 1038 1039 1037 0 0 16 1038 +1039 1039 1040 1038 0 0 16 1039 +1040 1040 1041 1039 0 0 16 1040 +1041 1041 1042 1040 0 0 16 1041 +1042 1042 1043 1041 0 0 16 1042 +1043 1043 1044 1042 0 0 16 1043 +1044 1044 1045 1043 0 0 16 1044 +1045 1045 1046 1044 0 0 16 1045 +1046 1046 1047 1045 0 0 16 1046 +1047 1047 1048 1046 0 0 16 1047 +1048 1048 1049 1047 0 0 16 1048 +1049 1049 1050 1048 0 0 16 1049 +1050 1050 1051 1049 0 0 16 1050 +1051 1051 1052 1050 0 0 16 1051 +1052 1052 1053 1051 0 0 16 1052 +1053 1053 1054 1052 0 0 16 1053 +1054 1054 1055 1053 0 0 16 1054 +1055 1055 1056 1054 0 0 16 1055 +1056 1056 1057 1055 0 0 16 1056 +1057 1057 1058 1056 0 0 16 1057 +1058 1058 1059 1057 0 0 16 1058 +1059 1059 1060 1058 0 0 16 1059 +1060 1060 1061 1059 0 0 16 1060 +1061 1061 1062 1060 0 0 16 1061 +1062 1062 1063 1061 0 0 16 1062 +1063 1063 1064 1062 0 0 16 1063 +1064 1064 1065 1063 0 0 16 1064 +1065 1065 1066 1064 0 0 16 1065 +1066 1066 1067 1065 0 0 16 1066 +1067 1067 1068 1066 0 0 16 1067 +1068 1068 1069 1067 0 0 16 1068 +1069 1069 1070 1068 0 0 16 1069 +1070 1070 1071 1069 0 0 16 1070 +1071 1071 1072 1070 0 0 16 1071 +1072 1072 1073 1071 0 0 16 1072 +1073 1073 1074 1072 0 0 16 1073 +1074 1074 1075 1073 0 0 16 1074 +1075 1075 1076 1074 0 0 16 1075 +1076 1076 1077 1075 0 0 16 1076 +1077 1077 1078 1076 0 0 16 1077 +1078 1078 1079 1077 0 0 16 1078 +1079 1079 1080 1078 0 0 16 1079 +1080 1080 1081 1079 0 0 16 1080 +1081 1081 1082 1080 0 0 16 1081 +1082 1082 1083 1081 0 0 16 1082 +1083 1083 1084 1082 0 0 16 1083 +1084 1084 1085 1083 0 0 16 1084 +1085 1085 1086 1084 0 0 16 1085 +1086 1086 1087 1085 0 0 16 1086 +1087 1087 1088 1086 0 0 16 1087 +1088 1088 1089 1087 0 0 16 1088 +1089 1089 1090 1088 0 0 16 1089 +1090 1090 1091 1089 0 0 16 1090 +1091 1091 1092 1090 0 0 16 1091 +1092 1092 1093 1091 0 0 16 1092 +1093 1093 1094 1092 0 0 16 1093 +1094 1094 1095 1093 0 0 16 1094 +1095 1095 1096 1094 0 0 16 1095 +1096 1096 1097 1095 0 0 16 1096 +1097 1097 1098 1096 0 0 16 1097 +1098 1098 1099 1097 0 0 16 1098 +1099 1099 1100 1098 0 0 16 1099 +1100 1100 1101 1099 0 0 16 1100 +1101 1101 1102 1100 0 0 16 1101 +1102 1102 1103 1101 0 0 16 1102 +1103 1103 1104 1102 0 0 16 1103 +1104 1104 1105 1103 0 0 16 1104 +1105 1105 1106 1104 0 0 16 1105 +1106 1106 1107 1105 0 0 16 1106 +1107 1107 1108 1106 0 0 16 1107 +1108 1108 1109 1107 0 0 16 1108 +1109 1109 1110 1108 0 0 16 1109 +1110 1110 1111 1109 0 0 16 1110 +1111 1111 1112 1110 0 0 16 1111 +1112 1112 1113 1111 0 0 16 1112 +1113 1113 1114 1112 0 0 16 1113 +1114 1114 1115 1113 0 0 16 1114 +1115 1115 1116 1114 0 0 16 1115 +1116 1116 1117 1115 0 0 16 1116 +1117 1117 1118 1116 0 0 16 1117 +1118 1118 1119 1117 0 0 16 1118 +1119 1119 1120 1118 0 0 16 1119 +1120 1120 1121 1119 0 0 16 1120 +1121 1121 1122 1120 0 0 16 1121 +1122 1122 1123 1121 0 0 16 1122 +1123 1123 1124 1122 0 0 16 1123 +1124 1124 1125 1123 0 0 16 1124 +1125 1125 1126 1124 0 0 16 1125 +1126 1126 1127 1125 0 0 16 1126 +1127 1127 1128 1126 0 0 16 1127 +1128 1128 1129 1127 0 0 16 1128 +1129 1129 1130 1128 0 0 16 1129 +1130 1130 1131 1129 0 0 16 1130 +1131 1131 1132 1130 0 0 16 1131 +1132 1132 1133 1131 0 0 16 1132 +1133 1133 1134 1132 0 0 16 1133 +1134 1134 1135 1133 0 0 16 1134 +1135 1135 1136 1134 0 0 16 1135 +1136 1136 1137 1135 0 0 16 1136 +1137 1137 1138 1136 0 0 16 1137 +1138 1138 1139 1137 0 0 16 1138 +1139 1139 1140 1138 0 0 16 1139 +1140 1140 1141 1139 0 0 16 1140 +1141 1141 1142 1140 0 0 16 1141 +1142 1142 1143 1141 0 0 16 1142 +1143 1143 1144 1142 0 0 16 1143 +1144 1144 1145 1143 0 0 16 1144 +1145 1145 1146 1144 0 0 16 1145 +1146 1146 1147 1145 0 0 16 1146 +1147 1147 1148 1146 0 0 16 1147 +1148 1148 1149 1147 0 0 16 1148 +1149 1149 1150 1148 0 0 16 1149 +1150 1150 1151 1149 0 0 16 1150 +1151 1151 1152 1150 0 0 16 1151 +1152 1152 1153 1151 0 0 16 1152 +1153 1153 1154 1152 0 0 16 1153 +1154 1154 1155 1153 0 0 16 1154 +1155 1155 1156 1154 0 0 16 1155 +1156 1156 1157 1155 0 0 16 1156 +1157 1157 1158 1156 0 0 16 1157 +1158 1158 1159 1157 0 0 16 1158 +1159 1159 1160 1158 0 0 16 1159 +1160 1160 1161 1159 0 0 16 1160 +1161 1161 1162 1160 0 0 16 1161 +1162 1162 1163 1161 0 0 16 1162 +1163 1163 1164 1162 0 0 16 1163 +1164 1164 1165 1163 0 0 16 1164 +1165 1165 1166 1164 0 0 16 1165 +1166 1166 1167 1165 0 0 16 1166 +1167 1167 1168 1166 0 0 16 1167 +1168 1168 1169 1167 0 0 16 1168 +1169 1169 1170 1168 0 0 16 1169 +1170 1170 1171 1169 0 0 16 1170 +1171 1171 1172 1170 0 0 16 1171 +1172 1172 1173 1171 0 0 16 1172 +1173 1173 1174 1172 0 0 16 1173 +1174 1174 1175 1173 0 0 16 1174 +1175 1175 1176 1174 0 0 16 1175 +1176 1176 1177 1175 0 0 16 1176 +1177 1177 1178 1176 0 0 16 1177 +1178 1178 1179 1177 0 0 16 1178 +1179 1179 1180 1178 0 0 16 1179 +1180 1180 1181 1179 0 0 16 1180 +1181 1181 1182 1180 0 0 16 1181 +1182 1182 1183 1181 0 0 16 1182 +1183 1183 1184 1182 0 0 16 1183 +1184 1184 1185 1183 0 0 16 1184 +1185 1185 1186 1184 0 0 16 1185 +1186 1186 1187 1185 0 0 16 1186 +1187 1187 1188 1186 0 0 16 1187 +1188 1188 1189 1187 0 0 16 1188 +1189 1189 1190 1188 0 0 16 1189 +1190 1190 1191 1189 0 0 16 1190 +1191 1191 1192 1190 0 0 16 1191 +1192 1192 1193 1191 0 0 16 1192 +1193 1193 1194 1192 0 0 16 1193 +1194 1194 1195 1193 0 0 16 1194 +1195 1195 1196 1194 0 0 16 1195 +1196 1196 1197 1195 0 0 16 1196 +1197 1197 1198 1196 0 0 16 1197 +1198 1198 1199 1197 0 0 16 1198 +1199 1199 1200 1198 0 0 16 1199 +1200 1200 1201 1199 0 0 16 1200 +1201 1201 1202 1200 0 0 16 1201 +1202 1202 1203 1201 0 0 16 1202 +1203 1203 1204 1202 0 0 16 1203 +1204 1204 1205 1203 0 0 16 1204 +1205 1205 1206 1204 0 0 16 1205 +1206 1206 1207 1205 0 0 16 1206 +1207 1207 1208 1206 0 0 16 1207
View file
osmo-ggsn_1.8.0.tar.xz/tests/lib/Makefile.am -> osmo-ggsn_1.9.0.tar.xz/tests/lib/Makefile.am
Changed
@@ -7,7 +7,7 @@ in46a_test.ok \ in46a_v6_test.ok -noinst_PROGRAMS = ippool_test in46a_test +check_PROGRAMS = ippool_test in46a_test ippool_test_SOURCES = \ ippool_test.c \
View file
osmo-ggsn_1.8.0.tar.xz/tests/lib/in46a_test.c -> osmo-ggsn_1.9.0.tar.xz/tests/lib/in46a_test.c
Changed
@@ -146,7 +146,7 @@ static void test_in46a_from_eua(void) { - struct in46_addr ia; + struct in46_addr ia2; struct ul66_t eua; const uint8_t v4_unspec = { PDP_EUA_ORG_IETF, PDP_EUA_TYPE_v4 }; const uint8_t v4_spec = { PDP_EUA_ORG_IETF, PDP_EUA_TYPE_v4, 1,2,3,4 }; @@ -155,35 +155,35 @@ printf("Testing in46a_from_eua() with IPv4 addresses\n"); /* default: v4 unspec */ - OSMO_ASSERT(in46a_from_eua(&eua, &ia) == 1); - OSMO_ASSERT(ia.len == 4); - OSMO_ASSERT(ia.v4.s_addr == 0); + OSMO_ASSERT(in46a_from_eua(&eua, ia) == 1); + OSMO_ASSERT(ia0.len == 4); + OSMO_ASSERT(ia0.v4.s_addr == 0); /* invalid */ eua.v0 = 0x23; eua.v1 = PDP_EUA_TYPE_v4; eua.l = 6; - OSMO_ASSERT(in46a_from_eua(&eua, &ia) < 0); + OSMO_ASSERT(in46a_from_eua(&eua, ia) < 0); /* invalid */ eua.v0 = PDP_EUA_ORG_IETF; eua.v1 = 0x23; eua.l = 6; - OSMO_ASSERT(in46a_from_eua(&eua, &ia) < 0); + OSMO_ASSERT(in46a_from_eua(&eua, ia) < 0); /* unspecified V4 */ memcpy(eua.v, v4_unspec, sizeof(v4_unspec)); eua.l = sizeof(v4_unspec); - OSMO_ASSERT(in46a_from_eua(&eua, &ia) == 1); - OSMO_ASSERT(ia.len == 4); - OSMO_ASSERT(ia.v4.s_addr == 0); + OSMO_ASSERT(in46a_from_eua(&eua, ia) == 1); + OSMO_ASSERT(ia0.len == 4); + OSMO_ASSERT(ia0.v4.s_addr == 0); /* specified V4 */ memcpy(eua.v, v4_spec, sizeof(v4_spec)); eua.l = sizeof(v4_spec); - OSMO_ASSERT(in46a_from_eua(&eua, &ia) == 1); - OSMO_ASSERT(ia.len == 4); - OSMO_ASSERT(ia.v4.s_addr == htonl(0x01020304)); + OSMO_ASSERT(in46a_from_eua(&eua, ia) == 1); + OSMO_ASSERT(ia0.len == 4); + OSMO_ASSERT(ia0.v4.s_addr == htonl(0x01020304)); } static void test_in46a_netmasklen(void) @@ -318,7 +318,7 @@ static void test_in46a_from_eua_v6(void) { - struct in46_addr ia; + struct in46_addr ia2; struct ul66_t eua; const uint8_t v6_unspec = { PDP_EUA_ORG_IETF, PDP_EUA_TYPE_v6 }; const uint8_t v6_spec = { PDP_EUA_ORG_IETF, PDP_EUA_TYPE_v6, @@ -331,16 +331,16 @@ /* unspecified V6 */ memcpy(eua.v, v6_unspec, sizeof(v6_unspec)); eua.l = sizeof(v6_unspec); - OSMO_ASSERT(in46a_from_eua(&eua, &ia) == 1); - OSMO_ASSERT(ia.len == 16); - OSMO_ASSERT(IN6_IS_ADDR_UNSPECIFIED(&ia.v6)); + OSMO_ASSERT(in46a_from_eua(&eua, ia) == 1); + OSMO_ASSERT(ia0.len == 16); + OSMO_ASSERT(IN6_IS_ADDR_UNSPECIFIED(&ia0.v6)); /* specified V6 */ memcpy(eua.v, v6_spec, sizeof(v6_spec)); eua.l = sizeof(v6_spec); - OSMO_ASSERT(in46a_from_eua(&eua, &ia) == 1); - OSMO_ASSERT(ia.len == 16); - OSMO_ASSERT(!memcmp(&ia.v6, v6_spec+2, ia.len)); + OSMO_ASSERT(in46a_from_eua(&eua, ia) == 1); + OSMO_ASSERT(ia0.len == 16); + OSMO_ASSERT(!memcmp(&ia0.v6, v6_spec+2, ia0.len)); } static void test_in46a_from_eua_v4v6(void) {
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.