Changes of Revision 765

open5gs_2.7.1.70.2b793.202407242026.dsc -> open5gs_2.7.1.74.98285.202407252026.dsc Changed
x
 
1
@@ -2,7 +2,7 @@
2
 Source: open5gs
3
 Binary: open5gs-common, open5gs-mme, open5gs-sgwc, open5gs-smf, open5gs-amf, open5gs-sgwu, open5gs-upf, open5gs-hss, open5gs-pcrf, open5gs-nrf, open5gs-scp, open5gs-sepp, open5gs-ausf, open5gs-udm, open5gs-pcf, open5gs-nssf, open5gs-bsf, open5gs-udr, open5gs, open5gs-dbg
4
 Architecture: any
5
-Version: 2.7.1.70.2b793.202407242026
6
+Version: 2.7.1.74.98285.202407252026
7
 Maintainer: Harald Welte <laforge@gnumonks.org>
8
 Uploaders: Sukchan Lee <acetcom@gmail.com>
9
 Homepage: https://open5gs.org
10
@@ -32,8 +32,8 @@
11
  open5gs-udr deb net optional arch=any
12
  open5gs-upf deb net optional arch=any
13
 Checksums-Sha1:
14
- 9c717f6b5d48b867e7bee2dc4b2324b30fe6604a 14496620 open5gs_2.7.1.70.2b793.202407242026.tar.xz
15
+ 5931d8ba7af640831da97864f1d0a32c517ee251 14496436 open5gs_2.7.1.74.98285.202407252026.tar.xz
16
 Checksums-Sha256:
17
- aa355847f44f2cdb0fdf0c388bc562d52229eda8763108e2fbff2c0959e702bb 14496620 open5gs_2.7.1.70.2b793.202407242026.tar.xz
18
+ de5dde43dde8321fb7003daf209af5bf897e86988547ddfee26073ec9c5d240b 14496436 open5gs_2.7.1.74.98285.202407252026.tar.xz
19
 Files:
20
- c5924775cefb8ff5f692e863c3f2f968 14496620 open5gs_2.7.1.70.2b793.202407242026.tar.xz
21
+ 5e15482b2e4d92835f4003b0f383ec0b 14496436 open5gs_2.7.1.74.98285.202407252026.tar.xz
22
open5gs_2.7.1.70.2b793.202407242026.tar.xz/.tarball-version -> open5gs_2.7.1.74.98285.202407252026.tar.xz/.tarball-version Changed
4
 
1
@@ -1 +1 @@
2
-2.7.1.70-2b793.202407242026
3
+2.7.1.74-98285.202407252026
4
open5gs_2.7.1.70.2b793.202407242026.tar.xz/debian/changelog -> open5gs_2.7.1.74.98285.202407252026.tar.xz/debian/changelog Changed
12
 
1
@@ -1,8 +1,8 @@
2
-open5gs (2.7.1.70.2b793.202407242026) unstable; urgency=medium
3
+open5gs (2.7.1.74.98285.202407252026) unstable; urgency=medium
4
 
5
   * Automatically generated changelog entry for building the Osmocom nightly feed
6
 
7
- -- Osmocom OBS scripts <info@osmocom.org>  Wed, 24 Jul 2024 20:27:49 +0000
8
+ -- Osmocom OBS scripts <info@osmocom.org>  Thu, 25 Jul 2024 20:27:49 +0000
9
 
10
 open5gs (2.7.1) unstable; urgency=medium
11
 
12
open5gs_2.7.1.70.2b793.202407242026.tar.xz/lib/proto/types.h -> open5gs_2.7.1.74.98285.202407252026.tar.xz/lib/proto/types.h Changed
36
 
1
@@ -34,15 +34,28 @@
2
 #define OGS_MAX_NUM_OF_PACKET_BUFFER    64  /* Num of PacketBuffer per UE */
3
 
4
 /*
5
- * The array of TLV messages is limited to 8.
6
- * So, Flow(PDI.SDF_Filter) in PDR is limited to 8.
7
+ * TS24.008
8
+ * 10.5.6.12 Traffic Flow Template
9
+ * Table 10.5.162: Traffic flow template information element
10
  *
11
- * However, the number of flow in bearer context seems to need more than 16.
12
+ * Number of packet filters (octet 3)
13
+ * The number of packet filters contains the binary coding
14
+ * for the number of packet filters in the packet filter list.
15
+ * The number of packet filters field is encoded in bits 4
16
+ * through 1 of octet 3 where bit 4 is the most significant
17
+ * and bit 1 is the least significant bit.
18
  *
19
- * Therefore, the maximum number of flows of messages is defined as 8,
20
- * and the maximum number of flows stored by the context is 16.
21
+ * For the "delete existing TFT" operation and
22
+ * for the "no TFT operation", the number of packet filters shall be
23
+ * coded as 0. For all other operations, the number of packet filters
24
+ * shall be greater than 0 and less than or equal to 15.
25
+ *
26
+ * The array of TLV messages is limited to 16.
27
+ * So, Flow(PDI.SDF_Filter) in PDR is limited to 16.
28
+ *
29
+ * Therefore, we defined the maximum number of flows as 16.
30
  */
31
-#define OGS_MAX_NUM_OF_FLOW_IN_PDR      8
32
+#define OGS_MAX_NUM_OF_FLOW_IN_PDR      16
33
 #define OGS_MAX_NUM_OF_FLOW_IN_GTP      OGS_MAX_NUM_OF_FLOW_IN_PDR
34
 #define OGS_MAX_NUM_OF_FLOW_IN_NAS      OGS_MAX_NUM_OF_FLOW_IN_PDR
35
 #define OGS_MAX_NUM_OF_FLOW_IN_PCC_RULE OGS_MAX_NUM_OF_FLOW_IN_PDR
36
open5gs_2.7.1.70.2b793.202407242026.tar.xz/src/pcrf/pcrf-gx-path.c -> open5gs_2.7.1.74.98285.202407252026.tar.xz/src/pcrf/pcrf-gx-path.c Changed
22
 
1
@@ -731,7 +731,7 @@
2
     ret = fd_sess_state_retrieve(pcrf_gx_reg, session, &sess_data);
3
     ogs_assert(ret == 0);
4
     if (sess_data == NULL) {
5
-        ogs_error("No session data");
6
+        ogs_error("No Session Data");
7
         ret = fd_msg_free(req);
8
         ogs_assert(ret == 0);
9
         rx_message->result_code = OGS_DIAM_UNKNOWN_SESSION_ID;
10
@@ -1061,7 +1061,10 @@
11
 
12
     ret = fd_sess_state_retrieve(pcrf_gx_reg, session, &sess_data);
13
     ogs_assert(ret == 0);
14
-    ogs_assert(sess_data);
15
+    if (!sess_data) {
16
+        ogs_error("No Session Data");
17
+        return;
18
+    }
19
     ogs_assert((void *)sess_data == data);
20
 
21
     /* Value of Result Code */
22
open5gs_2.7.1.70.2b793.202407242026.tar.xz/src/pcrf/pcrf-rx-path.c -> open5gs_2.7.1.74.98285.202407252026.tar.xz/src/pcrf/pcrf-rx-path.c Changed
16
 
1
@@ -493,7 +493,13 @@
2
 
3
     /* Retrieve session state in this session */
4
     ret = fd_sess_state_retrieve(pcrf_rx_reg, session, &sess_data);
5
-    ogs_assert(sess_data);
6
+    ogs_assert(ret == 0);
7
+    if (!sess_data) {
8
+        ogs_error("No Session Data");
9
+        ret = fd_msg_free(req);
10
+        ogs_assert(ret == 0);
11
+        return OGS_ERROR;
12
+    }
13
 
14
     /* Update State */
15
     sess_data->state = SESSION_ABORTED;
16
open5gs_2.7.1.70.2b793.202407242026.tar.xz/src/smf/gx-path.c -> open5gs_2.7.1.74.98285.202407252026.tar.xz/src/smf/gx-path.c Changed
13
 
1
@@ -745,7 +745,10 @@
2
 
3
     ret = fd_sess_state_retrieve(smf_gx_reg, session, &sess_data);
4
     ogs_assert(ret == 0);
5
-    ogs_assert(sess_data);
6
+    if (!sess_data) {
7
+        ogs_error("No Session Data");
8
+        return;
9
+    }
10
     ogs_assert((void *)sess_data == data);
11
 
12
     ogs_debug("    Retrieve its data: %s", sess_data->gx_sid);
13
open5gs_2.7.1.70.2b793.202407242026.tar.xz/src/smf/gy-path.c -> open5gs_2.7.1.74.98285.202407252026.tar.xz/src/smf/gy-path.c Changed
13
 
1
@@ -991,7 +991,10 @@
2
 
3
     ret = fd_sess_state_retrieve(smf_gy_reg, session, &sess_data);
4
     ogs_assert(ret == 0);
5
-    ogs_assert(sess_data);
6
+    if (!sess_data) {
7
+        ogs_error("No Session Data");
8
+        return;
9
+    }
10
     ogs_assert((void *)sess_data == data);
11
 
12
     ogs_debug("    Retrieve its data: %s", sess_data->gy_sid);
13
open5gs_2.7.1.70.2b793.202407242026.tar.xz/src/smf/s5c-handler.c -> open5gs_2.7.1.74.98285.202407252026.tar.xz/src/smf/s5c-handler.c Changed
20
 
1
@@ -1282,11 +1282,15 @@
2
 
3
     decoded = ogs_gtp2_parse_tft(&tft, &cmd->traffic_aggregate_description);
4
     if (cmd->traffic_aggregate_description.len != decoded) {
5
-        ogs_fatal("ogs_gtp2_parse_tft() failed");
6
-        ogs_log_hexdump(OGS_LOG_FATAL,
7
+        ogs_error("ogs_gtp2_parse_tft() failed");
8
+        ogs_log_hexdump(OGS_LOG_ERROR,
9
             cmd->traffic_aggregate_description.data,
10
             cmd->traffic_aggregate_description.len);
11
-        ogs_assert_if_reached();
12
+        ogs_gtp2_send_error_message(
13
+                xact, get_sender_f_teid(sess, sender_f_teid),
14
+                OGS_GTP2_BEARER_RESOURCE_FAILURE_INDICATION_TYPE,
15
+                OGS_GTP2_CAUSE_INVALID_MESSAGE_FORMAT);
16
+        return;
17
     }
18
 
19
     ogs_assert(cmd->traffic_aggregate_description.len == decoded);
20
open5gs_2.7.1.70.2b793.202407242026.tar.xz/src/smf/s6b-path.c -> open5gs_2.7.1.74.98285.202407252026.tar.xz/src/smf/s6b-path.c Changed
37
 
1
@@ -368,7 +368,10 @@
2
 
3
     ret = fd_sess_state_retrieve(smf_s6b_reg, session, &sess_data);
4
     ogs_assert(ret == 0);
5
-    ogs_assert(sess_data);
6
+    if (!sess_data) {
7
+        ogs_error("No Session Data");
8
+        return;
9
+    }
10
     ogs_assert((void *)sess_data == data);
11
 
12
     ogs_debug("    Retrieve its data: %s", sess_data->s6b_sid);
13
@@ -553,7 +556,10 @@
14
     /* Retrieve session state in this session */
15
     ret = fd_sess_state_retrieve(smf_s6b_reg, session, &sess_data);
16
     ogs_assert(ret == 0);
17
-    ogs_assert(sess_data);
18
+    if (!sess_data) {
19
+        ogs_error("No Session Data");
20
+        return;
21
+    }
22
     ogs_debug("    Retrieve session: %s", sess_data->s6b_sid);
23
 
24
     /* Update session state */
25
@@ -661,7 +667,10 @@
26
 
27
     ret = fd_sess_state_retrieve(smf_s6b_reg, session, &sess_data);
28
     ogs_assert(ret == 0);
29
-    ogs_assert(sess_data);
30
+    if (!sess_data) {
31
+        ogs_error("No Session Data");
32
+        return;
33
+    }
34
     ogs_assert((void *)sess_data == data);
35
 
36
     ogs_debug("    Retrieve its data: %s", sess_data->s6b_sid);
37
open5gs_2.7.1.70.2b793.202407242026.tar.xz/src/smf/smf-sm.c -> open5gs_2.7.1.74.98285.202407252026.tar.xz/src/smf/smf-sm.c Changed
17
 
1
@@ -210,7 +210,6 @@
2
         case OGS_GTP2_UPDATE_BEARER_RESPONSE_TYPE:
3
             if (!gtp2_message.h.teid_presence) ogs_error("No TEID");
4
             if (!sess) {
5
-                /* Don't have to send NACK the message */
6
                 ogs_error("No Session");
7
                 rv = ogs_gtp_xact_commit(gtp_xact);
8
                 ogs_expect(rv == OGS_OK);
9
@@ -222,7 +221,6 @@
10
         case OGS_GTP2_DELETE_BEARER_RESPONSE_TYPE:
11
             if (!gtp2_message.h.teid_presence) ogs_error("No TEID");
12
             if (!sess) {
13
-                /* Don't have to send NACK the message */
14
                 ogs_error("No Session");
15
                 rv = ogs_gtp_xact_commit(gtp_xact);
16
                 ogs_expect(rv == OGS_OK);
17
open5gs_2.7.1.70.2b793.202407242026.tar.xz/tests/volte/diameter-rx-path.c -> open5gs_2.7.1.74.98285.202407252026.tar.xz/tests/volte/diameter-rx-path.c Changed
50
 
1
@@ -1678,7 +1678,10 @@
2
     
3
     ret = fd_sess_state_retrieve(pcscf_rx_reg, session, &sess_data);
4
     ogs_assert(ret == 0);
5
-    ogs_assert(sess_data);
6
+    if (!sess_data) {
7
+        ogs_error("No Session Data");
8
+        return;
9
+    }
10
     ogs_assert((void *)sess_data == data);
11
 
12
     /* Value of Result Code */
13
@@ -1807,7 +1810,10 @@
14
 
15
     ret = fd_sess_state_retrieve(pcscf_rx_reg, sess, &sess_data);
16
     ogs_assert(ret == 0);
17
-    ogs_assert(sess_data);
18
+    if (!sess_data) {
19
+        ogs_error("No Session Data");
20
+        return EINVAL;
21
+    }
22
 
23
     /* Create answer header */
24
     qry = *msg;
25
@@ -1910,7 +1916,10 @@
26
     /* Retrieve session state in this session */
27
     ret = fd_sess_state_retrieve(pcscf_rx_reg, session, &sess_data);
28
     ogs_assert(ret == 0);
29
-    ogs_assert(sess_data);
30
+    if (!sess_data) {
31
+        ogs_error("No Session Data");
32
+        return;
33
+    }
34
     
35
     /* Set Origin-Host & Origin-Realm */
36
     ret = fd_msg_add_origin(req, 0);
37
@@ -1997,7 +2006,11 @@
38
     
39
     ret = fd_sess_state_retrieve(pcscf_rx_reg, session, &sess_data);
40
     ogs_assert(ret == 0);
41
-    ogs_assert(sess_data && (void *)sess_data == data);
42
+    if (!sess_data) {
43
+        ogs_error("No Session Data");
44
+        return;
45
+    }
46
+    ogs_assert((void *)sess_data == data);
47
 
48
     /* Value of Result Code */
49
     ret = fd_msg_search_avp(*msg, ogs_diam_result_code, &avp);
50