Changes of Revision 418

open5gs_2.6.4.72.e625f.202308130026.dsc -> open5gs_2.6.4.75.e01f.202308140026.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-ausf, open5gs-udm, open5gs-pcf, open5gs-nssf, open5gs-bsf, open5gs-udr, open5gs, open5gs-dbg
4
 Architecture: any
5
-Version: 2.6.4.72.e625f.202308130026
6
+Version: 2.6.4.75.e01f.202308140026
7
 Maintainer: Harald Welte <laforge@gnumonks.org>
8
 Uploaders: Sukchan Lee <acetcom@gmail.com>
9
 Homepage: https://open5gs.org
10
@@ -31,8 +31,8 @@
11
  open5gs-udr deb net optional arch=any
12
  open5gs-upf deb net optional arch=any
13
 Checksums-Sha1:
14
- 4b1fbc7eb864cad74ebf481f5ad31604d024d172 14241256 open5gs_2.6.4.72.e625f.202308130026.tar.xz
15
+ 505eb3d8dbe892ff50b41457f0d60f7f3663396e 14242272 open5gs_2.6.4.75.e01f.202308140026.tar.xz
16
 Checksums-Sha256:
17
- a6eac571273bd9fb9645a3e6e2aa71187b1ae2c9984fff3a647fd02aa485bd73 14241256 open5gs_2.6.4.72.e625f.202308130026.tar.xz
18
+ 86f08deb4914467266156bd78c303fd327126103198926b6194f4a61d1badd7f 14242272 open5gs_2.6.4.75.e01f.202308140026.tar.xz
19
 Files:
20
- 26f4288d5845c864dd543401ed9afb17 14241256 open5gs_2.6.4.72.e625f.202308130026.tar.xz
21
+ becebe815e7caa935a91aa34733936be 14242272 open5gs_2.6.4.75.e01f.202308140026.tar.xz
22
open5gs_2.6.4.72.e625f.202308130026.tar.xz/.tarball-version -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/.tarball-version Changed
4
 
1
@@ -1 +1 @@
2
-2.6.4.72-e625f.202308130026
3
+2.6.4.75-e01f.202308140026
4
open5gs_2.6.4.72.e625f.202308130026.tar.xz/configs/310014.yaml.in -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/configs/310014.yaml.in Changed
9
 
1
@@ -255,5 +255,7 @@
2
         port: 7777
3
 
4
 time:
5
+  t3412:
6
+    value: 540     # 9 mintues * 60 = 540 seconds
7
   t3512:
8
     value: 540     # 9 mintues * 60 = 540 seconds
9
open5gs_2.6.4.72.e625f.202308130026.tar.xz/configs/csfb.yaml.in -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/configs/csfb.yaml.in Changed
9
 
1
@@ -284,5 +284,7 @@
2
         port: 7777
3
 
4
 time:
5
+  t3412:
6
+    value: 540     # 9 mintues * 60 = 540 seconds
7
   t3512:
8
     value: 540     # 9 mintues * 60 = 540 seconds
9
open5gs_2.6.4.72.e625f.202308130026.tar.xz/configs/non3gpp.yaml.in -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/configs/non3gpp.yaml.in Changed
9
 
1
@@ -253,5 +253,7 @@
2
         port: 7777
3
 
4
 time:
5
+  t3412:
6
+    value: 540     # 9 mintues * 60 = 540 seconds
7
   t3512:
8
     value: 540     # 9 mintues * 60 = 540 seconds
9
open5gs_2.6.4.72.e625f.202308130026.tar.xz/configs/open5gs/mme.yaml.in -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/configs/open5gs/mme.yaml.in Changed
7
 
1
@@ -581,3 +581,5 @@
2
 #    t3423:
3
 #      value: 720  # 12 minutes * 60 = 720 seconds
4
 time:
5
+  t3412:
6
+    value: 540     # 9 mintues * 60 = 540 seconds
7
open5gs_2.6.4.72.e625f.202308130026.tar.xz/configs/sample.yaml.in -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/configs/sample.yaml.in Changed
9
 
1
@@ -271,5 +271,7 @@
2
         port: 7777
3
 
4
 time:
5
+  t3412:
6
+    value: 540     # 9 mintues * 60 = 540 seconds
7
   t3512:
8
     value: 540     # 9 mintues * 60 = 540 seconds
9
open5gs_2.6.4.72.e625f.202308130026.tar.xz/configs/slice.yaml.in -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/configs/slice.yaml.in Changed
9
 
1
@@ -264,5 +264,7 @@
2
         port: 7777
3
 
4
 time:
5
+  t3412:
6
+    value: 540     # 9 mintues * 60 = 540 seconds
7
   t3512:
8
     value: 540     # 9 mintues * 60 = 540 seconds
9
open5gs_2.6.4.72.e625f.202308130026.tar.xz/configs/srsenb.yaml.in -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/configs/srsenb.yaml.in Changed
9
 
1
@@ -250,5 +250,7 @@
2
         port: 7777
3
 
4
 time:
5
+  t3412:
6
+    value: 540     # 9 mintues * 60 = 540 seconds
7
   t3512:
8
     value: 540     # 9 mintues * 60 = 540 seconds
9
open5gs_2.6.4.72.e625f.202308130026.tar.xz/configs/volte.yaml.in -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/configs/volte.yaml.in Changed
9
 
1
@@ -257,5 +257,7 @@
2
         port: 7777
3
 
4
 time:
5
+  t3412:
6
+    value: 540     # 9 mintues * 60 = 540 seconds
7
   t3512:
8
     value: 540     # 9 mintues * 60 = 540 seconds
9
open5gs_2.6.4.72.e625f.202308130026.tar.xz/configs/vonr.yaml.in -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/configs/vonr.yaml.in Changed
9
 
1
@@ -265,5 +265,7 @@
2
         port: 7777
3
 
4
 time:
5
+  t3412:
6
+    value: 540     # 9 mintues * 60 = 540 seconds
7
   t3512:
8
     value: 540     # 9 mintues * 60 = 540 seconds
9
open5gs_2.6.4.72.e625f.202308130026.tar.xz/debian/changelog -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/debian/changelog Changed
12
 
1
@@ -1,8 +1,8 @@
2
-open5gs (2.6.4.72.e625f.202308130026) unstable; urgency=medium
3
+open5gs (2.6.4.75.e01f.202308140026) unstable; urgency=medium
4
 
5
   * Automatically generated changelog entry for building the Osmocom nightly feed
6
 
7
- -- Osmocom OBS scripts <info@osmocom.org>  Sun, 13 Aug 2023 00:28:20 +0000
8
+ -- Osmocom OBS scripts <info@osmocom.org>  Mon, 14 Aug 2023 00:27:45 +0000
9
 
10
 open5gs (2.6.4) unstable; urgency=medium
11
 
12
open5gs_2.6.4.72.e625f.202308130026.tar.xz/docs/_docs/troubleshoot/02-now-in-github-issues.md -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/docs/_docs/troubleshoot/02-now-in-github-issues.md Changed
23
 
1
@@ -168,8 +168,8 @@
2
     "__v" : 0,
3
     "access_restriction_data" : 32,
4
     "ambr" : {
5
-        "downlink" : NumberLong(1024000),
6
-        "uplink" : NumberLong(1024000)
7
+        "downlink" : NumberLong(1000000),
8
+        "uplink" : NumberLong(1000000)
9
     },
10
     "network_access_mode" : 2,
11
     "pdn" : 
12
@@ -178,8 +178,8 @@
13
             "_id" : ObjectId("609715fd455bcd38c884ce85"),
14
             "pcc_rule" :  ,
15
             "ambr" : {
16
-                "downlink" : NumberLong(1024000),
17
-                "uplink" : NumberLong(1024000)
18
+                "downlink" : NumberLong(1000000),
19
+                "uplink" : NumberLong(1000000)
20
             },
21
             "qos" : {
22
                 "qci" : 9,
23
open5gs_2.6.4.72.e625f.202308130026.tar.xz/lib/dbi/session.c -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/lib/dbi/session.c Changed
55
 
1
@@ -226,7 +226,7 @@
2
                     }
3
 
4
                     for (n = 0; n < unit; n++)
5
-                        session->ambr.downlink *= 1024;
6
+                        session->ambr.downlink *= 1000;
7
                 } else if (!strcmp(child5_key, "uplink") &&
8
                         BSON_ITER_HOLDS_DOCUMENT(&child5_iter)) {
9
                     uint8_t unit = 0;
10
@@ -246,7 +246,7 @@
11
                     }
12
 
13
                     for (n = 0; n < unit; n++)
14
-                        session->ambr.uplink *= 1024;
15
+                        session->ambr.uplink *= 1000;
16
                 }
17
 
18
             }
19
@@ -332,7 +332,7 @@
20
                                         }
21
 
22
                                         for (n = 0; n < unit; n++)
23
-                                            pcc_rule->qos.mbr.downlink *= 1024;
24
+                                            pcc_rule->qos.mbr.downlink *= 1000;
25
 
26
                                     } else if (!strcmp(child8_key, "uplink") &&
27
                                         BSON_ITER_HOLDS_DOCUMENT(
28
@@ -361,7 +361,7 @@
29
                                         }
30
 
31
                                         for (n = 0; n < unit; n++)
32
-                                            pcc_rule->qos.mbr.uplink *= 1024;
33
+                                            pcc_rule->qos.mbr.uplink *= 1000;
34
                                     }
35
                                 }
36
                             } else if (!strcmp(child7_key, "gbr") &&
37
@@ -397,7 +397,7 @@
38
                                         }
39
 
40
                                         for (n = 0; n < unit; n++)
41
-                                            pcc_rule->qos.gbr.downlink *= 1024;
42
+                                            pcc_rule->qos.gbr.downlink *= 1000;
43
 
44
                                     } else if (!strcmp(child8_key, "uplink") &&
45
                                         BSON_ITER_HOLDS_DOCUMENT(
46
@@ -426,7 +426,7 @@
47
                                         }
48
 
49
                                         for (n = 0; n < unit; n++)
50
-                                            pcc_rule->qos.gbr.uplink *= 1024;
51
+                                            pcc_rule->qos.gbr.uplink *= 1000;
52
                                     }
53
                                 }
54
                             }
55
open5gs_2.6.4.72.e625f.202308130026.tar.xz/lib/dbi/subscription.c -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/lib/dbi/subscription.c Changed
37
 
1
@@ -424,7 +424,7 @@
2
                     }
3
 
4
                     for (n = 0; n < unit; n++)
5
-                        subscription_data->ambr.downlink *= 1024;
6
+                        subscription_data->ambr.downlink *= 1000;
7
                 } else if (!strcmp(child1_key, "uplink") &&
8
                         BSON_ITER_HOLDS_DOCUMENT(&child1_iter)) {
9
                     uint8_t unit = 0;
10
@@ -444,7 +444,7 @@
11
                     }
12
 
13
                     for (n = 0; n < unit; n++)
14
-                        subscription_data->ambr.uplink *= 1024;
15
+                        subscription_data->ambr.uplink *= 1000;
16
                 }
17
 
18
             }
19
@@ -593,7 +593,7 @@
20
                                             }
21
 
22
                                             for (n = 0; n < unit; n++)
23
-                                                session->ambr.downlink *= 1024;
24
+                                                session->ambr.downlink *= 1000;
25
                                         } else if (!strcmp(child5_key,
26
                                                     "uplink") &&
27
                                                 BSON_ITER_HOLDS_DOCUMENT(
28
@@ -624,7 +624,7 @@
29
                                             }
30
 
31
                                             for (n = 0; n < unit; n++)
32
-                                                session->ambr.uplink *= 1024;
33
+                                                session->ambr.uplink *= 1000;
34
                                         }
35
                                     }
36
                                 } else if (!strcmp(child4_key, "smf") &&
37
open5gs_2.6.4.72.e625f.202308130026.tar.xz/lib/gtp/v2/types.c -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/lib/gtp/v2/types.c Changed
36
 
1
@@ -127,14 +127,14 @@
2
      * giving a range of 1600 Mbps to 10 Gbps Mbps in 100 Mbps increaments.
3
      */
4
     if (extended2 >= 0b00000001 && extended2 <= 0b00111101) {
5
-        return 256*1024 + extended2 * 4*1024;
6
+        return 256*1000 + extended2 * 4*1000;
7
     } else if (extended2 >= 0b00111110 && extended2 <= 0b10100001) {
8
-        return 500*1024 + (extended2 - 0b00111101) * 10*1024;
9
+        return 500*1000 + (extended2 - 0b00111101) * 10*1000;
10
     } else if (extended2 >= 0b10100010 && extended2 <= 0b11110110) {
11
-        return 1500*1024 + (extended2 - 0b10100001) * 100*1024;
12
+        return 1500*1000 + (extended2 - 0b10100001) * 100*1000;
13
     } else if (extended2 > 0b11110110) {
14
         ogs_error("Protocol Error : extended2%x", extended2);
15
-        return 10*1000*1024; /* 10*1000 Mbps */
16
+        return 10*1000*1000; /* 10*1000 Mbps */
17
 
18
     /*
19
      * Octet 8
20
@@ -155,12 +155,12 @@
21
     } else if (extended >= 0b00000001 && extended <= 0b01001010) {
22
         return 8600 + extended * 100;
23
     } else if (extended >= 0b01001011 && extended <= 0b10111010) {
24
-        return 16*1024 + (extended - 0b01001010) * 1*1024;
25
+        return 16*1000 + (extended - 0b01001010) * 1*1000;
26
     } else if (extended >= 0b10111011 && extended <= 0b11111010) {
27
-        return 128*1024 + (extended - 0b10111010) * 2*1024;
28
+        return 128*1000 + (extended - 0b10111010) * 2*1000;
29
     } else if (extended > 0b11111010) {
30
         ogs_error("Protocol Error : extended%x", extended);
31
-        return 256*1024; /* 256 Mbps */
32
+        return 256*1000; /* 256 Mbps */
33
 
34
     /*
35
      * Octet 4
36
open5gs_2.6.4.72.e625f.202308130026.tar.xz/lib/gtp/v2/types.h -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/lib/gtp/v2/types.h Changed
10
 
1
@@ -302,7 +302,7 @@
2
 } __attribute__ ((packed)) ogs_gtp2_flow_qos_t;
3
 
4
 #define ogs_gtp2_qos_to_bps(br, extended, extended2) \
5
-    ogs_gtp2_qos_to_kbps(br, extended, extended2) * 1024;
6
+    ogs_gtp2_qos_to_kbps(br, extended, extended2) * 1000;
7
 
8
 uint64_t ogs_gtp2_qos_to_kbps(uint8_t br, uint8_t extended, uint8_t extended2);
9
 
10
open5gs_2.6.4.72.e625f.202308130026.tar.xz/lib/nas/common/conv.c -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/lib/nas/common/conv.c Changed
16
 
1
@@ -97,11 +97,11 @@
2
             gprs_timer->unit = OGS_NAS_GPRS_TIMER_UNIT_MULTIPLES_OF_1_MM;
3
             gprs_timer->value = timer_value;
4
         } else {
5
-            if (timer_value%10 != 0) {
6
-                ogs_error("Not multiples of decihours(= 10 minutes)");
7
+            if (timer_value%6 != 0) {
8
+                ogs_error("Not multiples of decihours(= 6 minutes)");
9
                 return OGS_ERROR;
10
             }
11
-            timer_value /= 10; /* multiples of decihours = 10 minutes */
12
+            timer_value /= 6; /* multiples of decihours = 6 minutes */
13
             if (timer_value <= 31) {
14
                 gprs_timer->unit = OGS_NAS_GPRS_TIMER_UNIT_MULTIPLES_OF_DECI_HH;
15
                 gprs_timer->value = timer_value;
16
open5gs_2.6.4.72.e625f.202308130026.tar.xz/lib/nas/common/types.c -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/lib/nas/common/types.c Changed
175
 
1
@@ -114,31 +114,31 @@
2
         length = ogs_max(length, 2);
3
     }
4
     /* Set to 16000 Kbps */
5
-    else if (input > 16000 && input < (17*1024)) {
6
+    else if (input > 16000 && input < (17*1000)) {
7
         *br = 0b11111110;
8
         *extended = 0b01001010;
9
         length = ogs_max(length, 2);
10
     }
11
     /* giving a range of 17 Mbps to 128 Mbps in 1 Mbps increments. */
12
-    else if (input >= (17*1024) && input <= (128*1024)) {
13
+    else if (input >= (17*1000) && input <= (128*1000)) {
14
         *br = 0b11111110;
15
-        *extended = ((input - (16*1024)) / (1*1024)) + 0b01001010;
16
+        *extended = ((input - (16*1000)) / (1*1000)) + 0b01001010;
17
         length = ogs_max(length, 2);
18
     }
19
     /* Set to 128 Mbps */
20
-    else if (input > (128*1024) && input < (130*1024)) {
21
+    else if (input > (128*1000) && input < (130*1000)) {
22
         *br = 0b11111110;
23
         *extended = 0b10111010;
24
         length = ogs_max(length, 2);
25
     }
26
     /* giving a range of 130 Mbps to 256 Mbps in 2 Mbps increments. */
27
-    else if (input >= (130*1024) && input <= (256*1024)) {
28
+    else if (input >= (130*1000) && input <= (256*1000)) {
29
         *br = 0b11111110;
30
-        *extended = ((input - (128*1024)) / (2*1024)) + 0b10111010;
31
+        *extended = ((input - (128*1000)) / (2*1000)) + 0b10111010;
32
         length = ogs_max(length, 2);
33
     }
34
     /* Set to 256 Mbps */
35
-    else if (input > (1*256*1024) && input < (2*256*1024)) {
36
+    else if (input > (1*256*1000) && input < (2*256*1000)) {
37
         *br = 0b11111110;
38
         *extended = 0b11111010;
39
         length = ogs_max(length, 2);
40
@@ -157,14 +157,14 @@
41
      */
42
 
43
     /* giving a range of values from 260M to 500M in 4M increments */
44
-    else if (input >= (2*256*1024) && input <= (255*256*1024)) {
45
+    else if (input >= (2*256*1000) && input <= (255*256*1000)) {
46
         *br = 0b11111110;
47
         *extended = 0b11111010;
48
-        *extended2 = (input - (1*256*1024)) / (256*1024);
49
+        *extended2 = (input - (1*256*1000)) / (256*1000);
50
         length = ogs_max(length, 3);
51
     }
52
     /* if the sending entity want to indicate BR higher than 65280M */
53
-    else if (input > (255*256*1024)) {
54
+    else if (input > (255*256*1000)) {
55
         *br = 0b11111110;
56
         *extended = 0b11111010;
57
         *extended2 = 0b11111110;
58
@@ -262,31 +262,31 @@
59
         length = ogs_max(length, 2);
60
     }
61
     /* Set to 16000 Kbps */
62
-    else if (input > 16000 && input < (17*1024)) {
63
+    else if (input > 16000 && input < (17*1000)) {
64
         *br = 0b11111110;
65
         *extended = 0b01001010;
66
         length = ogs_max(length, 2);
67
     }
68
     /* giving a range of 17 Mbps to 128 Mbps in 1 Mbps increments. */
69
-    else if (input >= (17*1024) && input <= (128*1024)) {
70
+    else if (input >= (17*1000) && input <= (128*1000)) {
71
         *br = 0b11111110;
72
-        *extended = ((input - (16*1024)) / (1*1024)) + 0b01001010;
73
+        *extended = ((input - (16*1000)) / (1*1000)) + 0b01001010;
74
         length = ogs_max(length, 2);
75
     }
76
     /* Set to 128 Mbps */
77
-    else if (input > (128*1024) && input < (130*1024)) {
78
+    else if (input > (128*1000) && input < (130*1000)) {
79
         *br = 0b11111110;
80
         *extended = 0b10111010;
81
         length = ogs_max(length, 2);
82
     }
83
     /* giving a range of 130 Mbps to 256 Mbps in 2 Mbps increments. */
84
-    else if (input >= (130*1024) && input <= (256*1024)) {
85
+    else if (input >= (130*1000) && input <= (256*1000)) {
86
         *br = 0b11111110;
87
-        *extended = ((input - (128*1024)) / (2*1024)) + 0b10111010;
88
+        *extended = ((input - (128*1000)) / (2*1000)) + 0b10111010;
89
         length = ogs_max(length, 2);
90
     }
91
     /* Set to 256 Mbps */
92
-    else if (input > (256*1024) && input < (260*1024)) {
93
+    else if (input > (256*1000) && input < (260*1000)) {
94
         *br = 0b11111110;
95
         *extended = 0b11111010;
96
         length = ogs_max(length, 2);
97
@@ -310,42 +310,42 @@
98
      */
99
 
100
     /* giving a range of values from 260M to 500M in 4M increments */
101
-    else if (input >= (260*1024) && input <= (500*1024)) {
102
+    else if (input >= (260*1000) && input <= (500*1000)) {
103
         *br = 0b11111110;
104
         *extended = 0b11111010;
105
-        *extended2 = (input - (256*1024)) / (4*1024);
106
+        *extended2 = (input - (256*1000)) / (4*1000);
107
         length = ogs_max(length, 3);
108
     }
109
     /* if a range of values from 500M to 510M */
110
-    else if (input > (500*1024) && input < (510*1024)) {
111
+    else if (input > (500*1000) && input < (510*1000)) {
112
         *br = 0b11111110;
113
         *extended = 0b11111010;
114
         *extended2 = 0b00111101;
115
         length = ogs_max(length, 3);
116
     }
117
     /* giving a range of values from 510M to 1500M in 10M increments */
118
-    else if (input >= (510*1024) && input <= (1500*1024)) {
119
+    else if (input >= (510*1000) && input <= (1500*1000)) {
120
         *br = 0b11111110;
121
         *extended = 0b11111010;
122
-        *extended2 = (input - (500*1024)) / (10*1024) + 0b00111101;
123
+        *extended2 = (input - (500*1000)) / (10*1000) + 0b00111101;
124
         length = ogs_max(length, 3);
125
     }
126
     /* if a range of values from 1500M to 1600M */
127
-    else if (input > (1500*1024) && input < (1600*1024)) {
128
+    else if (input > (1500*1000) && input < (1600*1000)) {
129
         *br = 0b11111110;
130
         *extended = 0b11111010;
131
         *extended2 = 0b10100001;
132
         length = ogs_max(length, 3);
133
     }
134
     /* giving a range of values from 1600M to 10000M in 100M increments */
135
-    else if (input >= (1600*1024) && input <= (10*1000*1024)) {
136
+    else if (input >= (1600*1000) && input <= (10*1000*1000)) {
137
         *br = 0b11111110;
138
         *extended = 0b11111010;
139
-        *extended2 = (input - (1500*1024)) / (100*1024) + 0b10100001;
140
+        *extended2 = (input - (1500*1000)) / (100*1000) + 0b10100001;
141
         length = ogs_max(length, 3);
142
     }
143
     /* if the sending entity want to indicate BR higher than 10000Mbps */
144
-    else if (input > (10*1000*1024)) {
145
+    else if (input > (10*1000*1000)) {
146
         *br = 0b11111110;
147
         *extended = 0b11111010;
148
         *extended2 = 0b11110110;
149
@@ -361,8 +361,8 @@
150
 {
151
     uint8_t length = 0;
152
 
153
-    dl_apn_ambr = dl_apn_ambr / 1024; /* Kbps */
154
-    ul_apn_ambr = ul_apn_ambr / 1024; /* Kbps */
155
+    dl_apn_ambr = dl_apn_ambr / 1000; /* Kbps */
156
+    ul_apn_ambr = ul_apn_ambr / 1000; /* Kbps */
157
 
158
     memset(apn_aggregate_maximum_bit_rate, 0,
159
         sizeof(ogs_nas_apn_aggregate_maximum_bit_rate_t));
160
@@ -387,10 +387,10 @@
161
 {
162
     uint8_t length = 0;
163
 
164
-    dl_mbr = dl_mbr / 1024; /* Kbps */
165
-    ul_mbr = ul_mbr / 1024; /* Kbps */
166
-    dl_gbr = dl_gbr / 1024; /* Kbps */
167
-    ul_gbr = ul_gbr / 1024; /* Kbps */
168
+    dl_mbr = dl_mbr / 1000; /* Kbps */
169
+    ul_mbr = ul_mbr / 1000; /* Kbps */
170
+    dl_gbr = dl_gbr / 1000; /* Kbps */
171
+    ul_gbr = ul_gbr / 1000; /* Kbps */
172
 
173
     memset(eps_qos, 0, sizeof(ogs_nas_eps_quality_of_service_t));
174
 
175
open5gs_2.6.4.72.e625f.202308130026.tar.xz/src/amf/context.c -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/src/amf/context.c Changed
31
 
1
@@ -172,7 +172,7 @@
2
     }
3
 
4
     if (self.num_of_ciphering_order == 0) {
5
-        ogs_error("no amf.security.ciphering_order in '%s'",
6
+        ogs_error("No amf.security.ciphering_order in '%s'",
7
                 ogs_app()->file);
8
         return OGS_ERROR;
9
     }
10
@@ -181,6 +181,11 @@
11
         ogs_error("Not support GPRS Timer 2 %d", (int)self.time.t3502.value);
12
         return OGS_ERROR;
13
     }
14
+    if (!self.time.t3512.value) {
15
+        ogs_error("No amf.time.t3512.value in '%s'",
16
+                ogs_app()->file);
17
+        return OGS_ERROR;
18
+    }
19
     if (ogs_nas_gprs_timer_3_from_sec(&gprs_timer, self.time.t3512.value) !=
20
         OGS_OK) {
21
         ogs_error("Not support GPRS Timer 3 %d", (int)self.time.t3512.value);
22
@@ -1024,6 +1029,8 @@
23
                         } else
24
                             ogs_warn("unknown key `%s`", t3512_key);
25
                     }
26
+                } else if (!strcmp(time_key, "t3412")) {
27
+                    /* handle config in mme */
28
                 } else if (!strcmp(time_key, "nf_instance")) {
29
                     /* handle config in app library */
30
                 } else if (!strcmp(time_key, "subscription")) {
31
open5gs_2.6.4.72.e625f.202308130026.tar.xz/src/amf/gmm-build.c -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/src/amf/gmm-build.c Changed
25
 
1
@@ -129,15 +129,14 @@
2
     network_feature_support->
3
         ims_voice_over_ps_session_over_3gpp_access_indicator = 1;
4
 
5
-    /* Set T3512 */
6
-    if (amf_self()->time.t3512.value) {
7
-        rv = ogs_nas_gprs_timer_3_from_sec(
8
-                &t3512_value->t, amf_self()->time.t3512.value);
9
-        ogs_assert(rv == OGS_OK);
10
-        registration_accept->presencemask |=
11
-            OGS_NAS_5GS_REGISTRATION_ACCEPT_T3512_VALUE_PRESENT;
12
-        t3512_value->length = 1;
13
-    }
14
+    /* Set T3512 : Mandatory in Open5GS */
15
+    ogs_assert(amf_self()->time.t3512.value);
16
+    rv = ogs_nas_gprs_timer_3_from_sec(
17
+            &t3512_value->t, amf_self()->time.t3512.value);
18
+    ogs_assert(rv == OGS_OK);
19
+    registration_accept->presencemask |=
20
+        OGS_NAS_5GS_REGISTRATION_ACCEPT_T3512_VALUE_PRESENT;
21
+    t3512_value->length = 1;
22
 
23
     /* Set T3502 */
24
     if (amf_self()->time.t3502.value) {
25
open5gs_2.6.4.72.e625f.202308130026.tar.xz/src/amf/nudm-build.c -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/src/amf/nudm-build.c Changed
9
 
1
@@ -75,6 +75,7 @@
2
         ogs_error("No rat_type");
3
         goto end;
4
     }
5
+    Amf3GppAccessRegistration.pei = amf_ue->pei;
6
 
7
     message.Amf3GppAccessRegistration = &Amf3GppAccessRegistration;
8
 
9
open5gs_2.6.4.72.e625f.202308130026.tar.xz/src/mme/emm-build.c -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/src/mme/emm-build.c Changed
22
 
1
@@ -138,15 +138,11 @@
2
         }
3
     }
4
 
5
-    /* Set T3412 */
6
-    t3412_value->unit = OGS_NAS_GPRS_TIMER_UNIT_MULTIPLES_OF_DECI_HH;
7
-    t3412_value->value = 9;
8
-
9
-    if (mme_self()->time.t3412.value) {
10
-        rv = ogs_nas_gprs_timer_from_sec(
11
-                t3412_value, mme_self()->time.t3412.value);
12
-        ogs_assert(rv == OGS_OK);
13
-    }
14
+    /* Set T3412 : Mandatory in Open5GS */
15
+    ogs_assert(mme_self()->time.t3412.value);
16
+    rv = ogs_nas_gprs_timer_from_sec(
17
+            t3412_value, mme_self()->time.t3412.value);
18
+    ogs_assert(rv == OGS_OK);
19
 
20
     ogs_debug("    TAIPLMN_ID:%06x,TAC:%d",
21
             ogs_plmn_id_hexdump(&mme_ue->tai.plmn_id),
22
open5gs_2.6.4.72.e625f.202308130026.tar.xz/src/mme/emm-sm.c -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/src/mme/emm-sm.c Changed
64
 
1
@@ -191,10 +191,58 @@
2
         case MME_TIMER_MOBILE_REACHABLE:
3
             ogs_info("%s Mobile Reachable timer expired", mme_ue->imsi_bcd);
4
             CLEAR_MME_UE_TIMER(mme_ue->t_mobile_reachable);
5
-            /* TS 24.301 5.3.5
6
-             * Upon expiry of the mobile reachable timer the network shall
7
-             * start the implicit detach timer.
8
-             */
9
+        /*
10
+         * TS 24.301
11
+         * Section 5.3.5
12
+         * Handling of the periodic tracking area update timer and
13
+         * mobile reachable timer (S1 mode only)
14
+         *
15
+         * The periodic tracking area updating procedure is used to
16
+         * periodically notify the availability of the UE to the network.
17
+         * The procedure is controlled in the UE by timer T3412.
18
+         * The value of timer T3412 is sent by the network to the UE
19
+         * in the ATTACH ACCEPT message and can be sent in the TRACKING AREA
20
+         * UPDATE ACCEPT message. The UE shall apply this value in all tracking
21
+         * areas of the list of tracking areas assigned to the UE
22
+         * until a new value is received.
23
+         *
24
+         * If timer T3412 received by the UE in an ATTACH ACCEPT or TRACKING
25
+         * AREA UPDATE ACCEPT message contains an indication that the timer is
26
+         * deactivated or the timer value is zero, then timer T3412 is
27
+         * deactivated and the UE shall not perform the periodic tracking area
28
+         * updating procedure.
29
+         *
30
+         * Timer T3412 is reset and started with its initial value,
31
+         * when the UE changes from EMM-CONNECTED to EMM-IDLE mode.
32
+         *
33
+         * Timer T3412 is stopped when the UE enters EMM-CONNECTED mode or
34
+         * the EMM-DEREGISTERED state. If the UE is attached for emergency
35
+         * bearer services, and timer T3412 expires, the UE shall not initiate
36
+         * a periodic tracking area updating procedure, but shall locally detach
37
+         * from the network. When the UE is camping on a suitable cell, it may
38
+         * re-attach to regain normal service.
39
+         *
40
+         * When a UE is not attached for emergency bearer services, and timer
41
+         * T3412 expires, the periodic tracking area updating procedure shall
42
+         * be started and the timer shall be set to its initial value
43
+         * for the next start.
44
+         *
45
+         * If the UE is not attached for emergency bearer services, the mobile
46
+         * reachable timer shall be longer than T3412. In this case, by default,
47
+         * the mobile reachable timer is 4 minutes greater than timer T3412.
48
+         *
49
+         * Upon expiry of the mobile reachable timer the network shall start
50
+         * the implicit detach timer. The value of the implicit detach timer is
51
+         * network dependent. If ISR is activated, the default value of
52
+         * the implicit detach timer is 4 minutes greater than timer T3423.
53
+         * If the implicit detach timer expires before the UE contacts
54
+         * the network, the network shall implicitly detach the UE. If the MME
55
+         * includes timer T3346 in the TRACKING AREA UPDATE REJECT message or
56
+         * the SERVICE REJECT message and timer T3346 is greater than timer
57
+         * T3412, the MME sets the mobile reachable timer and the implicit
58
+         * detach timer such that the sum of the timer values is greater than
59
+         * timer T3346.
60
+         */
61
             ogs_debug("%s Starting Implicit Detach timer",
62
                 mme_ue->imsi_bcd);
63
             ogs_timer_start(mme_ue->t_implicit_detach.timer,
64
open5gs_2.6.4.72.e625f.202308130026.tar.xz/src/mme/mme-context.c -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/src/mme/mme-context.c Changed
32
 
1
@@ -193,6 +193,9 @@
2
     self.diam_config->cnf_port = DIAMETER_PORT;
3
     self.diam_config->cnf_port_tls = DIAMETER_SECURE_PORT;
4
 
5
+    /* Set the default T3412 to 9 minutes for backward compatibility. */
6
+    self.time.t3412.value = 540;
7
+
8
     return OGS_OK;
9
 }
10
 
11
@@ -267,7 +270,7 @@
12
         return OGS_ERROR;
13
     }
14
     if (self.num_of_ciphering_order == 0) {
15
-        ogs_error("no mme.security.ciphering_order in '%s'",
16
+        ogs_error("No mme.security.ciphering_order in '%s'",
17
                 ogs_app()->file);
18
         return OGS_ERROR;
19
     }
20
@@ -276,6 +279,11 @@
21
         ogs_error("Not support GPRS Timer %d", (int)self.time.t3402.value);
22
         return OGS_ERROR;
23
     }
24
+    if (!self.time.t3412.value) {
25
+        ogs_error("No mme.time.t3412.value in '%s'",
26
+                ogs_app()->file);
27
+        return OGS_ERROR;
28
+    }
29
     if (ogs_nas_gprs_timer_from_sec(&gprs_timer, self.time.t3412.value) !=
30
         OGS_OK) {
31
         ogs_error("Not support GPRS Timer %d", (int)self.time.t3412.value);
32
open5gs_2.6.4.72.e625f.202308130026.tar.xz/src/mme/s1ap-handler.c -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/src/mme/s1ap-handler.c Changed
60
 
1
@@ -1712,6 +1712,58 @@
2
         if (OGS_FSM_CHECK(&mme_ue->sm, emm_state_registered)) {
3
             ogs_debug("Mobile Reachable timer started for IMSI%s",
4
                 mme_ue->imsi_bcd);
5
+        /*
6
+         * TS 24.301
7
+         * Section 5.3.5
8
+         * Handling of the periodic tracking area update timer and
9
+         * mobile reachable timer (S1 mode only)
10
+         *
11
+         * The periodic tracking area updating procedure is used to
12
+         * periodically notify the availability of the UE to the network.
13
+         * The procedure is controlled in the UE by timer T3412.
14
+         * The value of timer T3412 is sent by the network to the UE
15
+         * in the ATTACH ACCEPT message and can be sent in the TRACKING AREA
16
+         * UPDATE ACCEPT message. The UE shall apply this value in all tracking
17
+         * areas of the list of tracking areas assigned to the UE
18
+         * until a new value is received.
19
+         *
20
+         * If timer T3412 received by the UE in an ATTACH ACCEPT or TRACKING
21
+         * AREA UPDATE ACCEPT message contains an indication that the timer is
22
+         * deactivated or the timer value is zero, then timer T3412 is
23
+         * deactivated and the UE shall not perform the periodic tracking area
24
+         * updating procedure.
25
+         *
26
+         * Timer T3412 is reset and started with its initial value,
27
+         * when the UE changes from EMM-CONNECTED to EMM-IDLE mode.
28
+         *
29
+         * Timer T3412 is stopped when the UE enters EMM-CONNECTED mode or
30
+         * the EMM-DEREGISTERED state. If the UE is attached for emergency
31
+         * bearer services, and timer T3412 expires, the UE shall not initiate
32
+         * a periodic tracking area updating procedure, but shall locally detach
33
+         * from the network. When the UE is camping on a suitable cell, it may
34
+         * re-attach to regain normal service.
35
+         *
36
+         * When a UE is not attached for emergency bearer services, and timer
37
+         * T3412 expires, the periodic tracking area updating procedure shall
38
+         * be started and the timer shall be set to its initial value
39
+         * for the next start.
40
+         *
41
+         * If the UE is not attached for emergency bearer services, the mobile
42
+         * reachable timer shall be longer than T3412. In this case, by default,
43
+         * the mobile reachable timer is 4 minutes greater than timer T3412.
44
+         *
45
+         * Upon expiry of the mobile reachable timer the network shall start
46
+         * the implicit detach timer. The value of the implicit detach timer is
47
+         * network dependent. If ISR is activated, the default value of
48
+         * the implicit detach timer is 4 minutes greater than timer T3423.
49
+         * If the implicit detach timer expires before the UE contacts
50
+         * the network, the network shall implicitly detach the UE. If the MME
51
+         * includes timer T3346 in the TRACKING AREA UPDATE REJECT message or
52
+         * the SERVICE REJECT message and timer T3346 is greater than timer
53
+         * T3412, the MME sets the mobile reachable timer and the implicit
54
+         * detach timer such that the sum of the timer values is greater than
55
+         * timer T3346.
56
+         */
57
             ogs_timer_start(mme_ue->t_mobile_reachable.timer,
58
                 ogs_time_from_sec(mme_self()->time.t3412.value + 240));
59
         }
60
open5gs_2.6.4.72.e625f.202308130026.tar.xz/src/pcf/nbsf-handler.c -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/src/pcf/nbsf-handler.c Changed
16
 
1
@@ -178,10 +178,10 @@
2
                     sess->subscribed_sess_ambr->uplink);
3
             subscribed_sess_ambr.downlink = ogs_sbi_bitrate_from_string(
4
                     sess->subscribed_sess_ambr->downlink);
5
-            if (((subscribed_sess_ambr.uplink / 1024) !=
6
-                 (session->ambr.uplink / 1024)) ||
7
-                ((subscribed_sess_ambr.downlink / 1024) !=
8
-                 (session->ambr.downlink / 1024))) {
9
+            if (((subscribed_sess_ambr.uplink / 1000) !=
10
+                 (session->ambr.uplink / 1000)) ||
11
+                ((subscribed_sess_ambr.downlink / 1000) !=
12
+                 (session->ambr.downlink / 1000))) {
13
 
14
                 OpenAPI_list_add(PolicyCtrlReqTriggers,
15
                     (void *)OpenAPI_policy_control_request_trigger_SE_AMBR_CH);
16
open5gs_2.6.4.72.e625f.202308130026.tar.xz/src/pcf/npcf-handler.c -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/src/pcf/npcf-handler.c Changed
28
 
1
@@ -112,26 +112,9 @@
2
     pcf_ue->access_type = PolicyAssociationRequest->access_type;
3
 
4
     if (PolicyAssociationRequest->pei) {
5
-        char *type = NULL, *value = NULL;
6
         if (pcf_ue->pei)
7
             ogs_free(pcf_ue->pei);
8
         pcf_ue->pei = ogs_strdup(PolicyAssociationRequest->pei);
9
-
10
-        type = ogs_id_get_type(pcf_ue->pei);
11
-        ogs_assert(type);
12
-        value = ogs_id_get_value(pcf_ue->pei);
13
-        ogs_assert(value);
14
-
15
-        if (strcmp(type, "imeisv") == 0) {
16
-            ogs_assert(OGS_OK == ogs_dbi_update_imeisv(pcf_ue->supi, value));
17
-        } else {
18
-            ogs_fatal("Unknown Type = %s", type);
19
-            ogs_assert_if_reached();
20
-        }
21
-
22
-
23
-        ogs_free(type);
24
-        ogs_free(value);
25
     }
26
 
27
     Guami = PolicyAssociationRequest->guami;
28
open5gs_2.6.4.72.e625f.202308130026.tar.xz/src/pcf/nudr-handler.c -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/src/pcf/nudr-handler.c Changed
16
 
1
@@ -98,10 +98,10 @@
2
                 subscribed_ue_ambr.downlink = ogs_sbi_bitrate_from_string(
3
                         pcf_ue->subscribed_ue_ambr->downlink);
4
 
5
-                if (((subscribed_ue_ambr.uplink / 1024) !=
6
-                     (subscription_data.ambr.uplink / 1024)) ||
7
-                    ((subscribed_ue_ambr.downlink / 1024) !=
8
-                     (subscription_data.ambr.downlink / 1024))) {
9
+                if (((subscribed_ue_ambr.uplink / 1000) !=
10
+                     (subscription_data.ambr.uplink / 1000)) ||
11
+                    ((subscribed_ue_ambr.downlink / 1000) !=
12
+                     (subscription_data.ambr.downlink / 1000))) {
13
 
14
                     OpenAPI_list_add(TriggerList,
15
                             (void *)OpenAPI_request_trigger_UE_AMBR_CH);
16
open5gs_2.6.4.72.e625f.202308130026.tar.xz/src/smf/gn-handler.c -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/src/smf/gn-handler.c Changed
12
 
1
@@ -184,8 +184,8 @@
2
     }
3
 
4
     /* Set some sane default if information not present in QoS Profile or APN-AMBR: */
5
-    sess->session.ambr.downlink = 102400000;
6
-    sess->session.ambr.uplink = 102400000;
7
+    sess->session.ambr.downlink = 100000000;
8
+    sess->session.ambr.uplink = 100000000;
9
 
10
     /* Set Bearer QoS */
11
     OGS_TLV_STORE_DATA(&sess->gtp.v1.qos, &req->quality_of_service_profile);
12
open5gs_2.6.4.72.e625f.202308130026.tar.xz/src/udr/nudr-handler.c -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/src/udr/nudr-handler.c Changed
32
 
1
@@ -294,6 +294,30 @@
2
                 return false;
3
             }
4
 
5
+            if (Amf3GppAccessRegistration->pei) {
6
+                char *type = NULL, *value = NULL;
7
+                char *pei = NULL;
8
+
9
+                pei = ogs_strdup(Amf3GppAccessRegistration->pei);
10
+                ogs_assert(pei);
11
+
12
+                type = ogs_id_get_type(pei);
13
+                ogs_assert(type);
14
+                value = ogs_id_get_value(pei);
15
+                ogs_assert(value);
16
+
17
+                if (strcmp(type, "imeisv") == 0) {
18
+                    ogs_assert(OGS_OK == ogs_dbi_update_imeisv(supi, value));
19
+                } else {
20
+                    ogs_fatal("Unknown Type = %s", type);
21
+                    ogs_assert_if_reached();
22
+                }
23
+
24
+                ogs_free(pei);
25
+                ogs_free(type);
26
+                ogs_free(value);
27
+            }
28
+
29
             memset(&sendmsg, 0, sizeof(sendmsg));
30
 
31
             response = ogs_sbi_build_response(
32
open5gs_2.6.4.72.e625f.202308130026.tar.xz/tests/common/gsm-build.c -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/tests/common/gsm-build.c Changed
37
 
1
@@ -242,7 +242,7 @@
2
                 sizeof(qos_flow_description0.paramnum_of_param.br);
3
             ogs_nas_bitrate_from_uint64(
4
                     &qos_flow_description0.paramnum_of_param.br,
5
-                    32*1024);
6
+                    32*1000);
7
             num_of_param++;
8
             qos_flow_description0.paramnum_of_param.identifier =
9
                 OGS_NAX_QOS_FLOW_PARAMETER_ID_GFBR_DOWNLINK;
10
@@ -250,7 +250,7 @@
11
                 sizeof(qos_flow_description0.paramnum_of_param.br);
12
             ogs_nas_bitrate_from_uint64(
13
                     &qos_flow_description0.paramnum_of_param.br,
14
-                    48*1024);
15
+                    48*1000);
16
             num_of_param++;
17
             qos_flow_description0.paramnum_of_param.identifier =
18
                 OGS_NAX_QOS_FLOW_PARAMETER_ID_MFBR_UPLINK;
19
@@ -258,7 +258,7 @@
20
                 sizeof(qos_flow_description0.paramnum_of_param.br);
21
             ogs_nas_bitrate_from_uint64(
22
                     &qos_flow_description0.paramnum_of_param.br,
23
-                    16*1024);
24
+                    16*1000);
25
             num_of_param++;
26
             qos_flow_description0.paramnum_of_param.identifier =
27
                 OGS_NAX_QOS_FLOW_PARAMETER_ID_MFBR_DOWNLINK;
28
@@ -266,7 +266,7 @@
29
                 sizeof(qos_flow_description0.paramnum_of_param.br);
30
             ogs_nas_bitrate_from_uint64(
31
                     &qos_flow_description0.paramnum_of_param.br,
32
-                    64*1024);
33
+                    64*1000);
34
             num_of_param++;
35
         }
36
 
37
open5gs_2.6.4.72.e625f.202308130026.tar.xz/tests/unit/nas-message-test.c -> open5gs_2.6.4.75.e01f.202308140026.tar.xz/tests/unit/nas-message-test.c Changed
26
 
1
@@ -373,19 +373,19 @@
2
     ABTS_INT_EQUAL(tc, 31, gprs_timer.value);
3
     rv = ogs_nas_gprs_timer_from_sec(&gprs_timer, 60*32);
4
     ABTS_INT_EQUAL(tc, OGS_ERROR, rv);
5
-    rv = ogs_nas_gprs_timer_from_sec(&gprs_timer, 60*10*4);
6
+    rv = ogs_nas_gprs_timer_from_sec(&gprs_timer, 60*6*8);
7
     ABTS_INT_EQUAL(tc, OGS_OK, rv);
8
     ABTS_INT_EQUAL(tc, OGS_NAS_GPRS_TIMER_UNIT_MULTIPLES_OF_DECI_HH,
9
             gprs_timer.unit);
10
-    ABTS_INT_EQUAL(tc, 4, gprs_timer.value);
11
-    rv = ogs_nas_gprs_timer_from_sec(&gprs_timer, 60*10*4+1);
12
+    ABTS_INT_EQUAL(tc, 8, gprs_timer.value);
13
+    rv = ogs_nas_gprs_timer_from_sec(&gprs_timer, 60*6*8+1);
14
     ABTS_INT_EQUAL(tc, OGS_ERROR, rv);
15
-    rv = ogs_nas_gprs_timer_from_sec(&gprs_timer, 60*10*31);
16
+    rv = ogs_nas_gprs_timer_from_sec(&gprs_timer, 60*6*31);
17
     ABTS_INT_EQUAL(tc, OGS_OK, rv);
18
     ABTS_INT_EQUAL(tc, OGS_NAS_GPRS_TIMER_UNIT_MULTIPLES_OF_DECI_HH,
19
             gprs_timer.unit);
20
     ABTS_INT_EQUAL(tc, 31, gprs_timer.value);
21
-    rv = ogs_nas_gprs_timer_from_sec(&gprs_timer, 60*10*32);
22
+    rv = ogs_nas_gprs_timer_from_sec(&gprs_timer, 60*6*32);
23
     ABTS_INT_EQUAL(tc, OGS_ERROR, rv);
24
 
25
     rv = ogs_nas_gprs_timer_3_from_sec(&gprs_timer, 1);
26