lists.osmocom.org
Sign In Sign Up
Manage this list Sign In Sign Up

Keyboard Shortcuts

Thread View

  • j: Next unread message
  • k: Previous unread message
  • j a: Jump to all threads
  • j l: Jump to MailingList overview

gerrit-log

Thread Start a new thread
Download
Threads by month
  • ----- 2026 -----
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2025 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2024 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2023 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2022 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
gerrit-log@lists.osmocom.org

April 2023

  • 1 participants
  • 2252 discussions
[S] Change in osmo-mgw[master]: mgcp_vty: add warnings for deprecated config options
by dexter 13 Apr '23

13 Apr '23
Attention is currently required from: dexter. Hello Jenkins Builder, pespin, msuraev, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-mgw/+/32238 to look at the new patch set (#2). Change subject: mgcp_vty: add warnings for deprecated config options ...................................................................... mgcp_vty: add warnings for deprecated config options We normally warn in case someone uses a deprecated config option Change-Id: I182f6579930a4e5ed79c8eb87501578ce7e89c15 --- M src/libosmo-mgcp/mgcp_vty.c 1 file changed, 18 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-mgw refs/changes/38/32238/2 -- To view, visit https://gerrit.osmocom.org/c/osmo-mgw/+/32238 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-mgw Gerrit-Branch: master Gerrit-Change-Id: I182f6579930a4e5ed79c8eb87501578ce7e89c15 Gerrit-Change-Number: 32238 Gerrit-PatchSet: 2 Gerrit-Owner: dexter <pmaier(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: msuraev <msuraev(a)sysmocom.de> Gerrit-Reviewer: pespin <pespin(a)sysmocom.de> Gerrit-Attention: dexter <pmaier(a)sysmocom.de> Gerrit-MessageType: newpatchset
1 0
0 0
[L] Change in osmo-mgw[master]: mgcp_codec: fix codec decision
by dexter 13 Apr '23

13 Apr '23
Attention is currently required from: pespin. Hello Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-mgw/+/32218 to look at the new patch set (#6). Change subject: mgcp_codec: fix codec decision ...................................................................... mgcp_codec: fix codec decision Unfortunately OsmoMGW was never really tested with multiple different codecs on either side of the connection. While OsmoMSC and OsmoBSC only assign exactly one codec on each side this has never been a problem, however it might become a problem when a call againt assigns multiple codecs on one side. This has been observed in a setup where OsmoMGW had one leg towards an external call agent. Also due to recent upgrades to the TTCN3 tests we are now able to simulate different codecs on both sides to pinpoint issues. Testing has shown that OsmoMGW has difficulties with multiple codecs. The reason for this is that the function that makes the codec decision was not fully finished. So let's finish the codec decision function and let's also use that decision when patching the payload type of outgoing RTP packets. Related: OS#5461 Change-Id: I6c3291f825488e5d8ce136aeb18450156794aeb5 --- M include/osmocom/mgcp/mgcp_codec.h M include/osmocom/mgcp/mgcp_trunk.h M src/libosmo-mgcp/mgcp_codec.c M src/libosmo-mgcp/mgcp_network.c M src/libosmo-mgcp/mgcp_protocol.c M src/libosmo-mgcp/mgcp_vty.c M tests/mgcp/mgcp_test.c M tests/mgcp/mgcp_test.ok 8 files changed, 287 insertions(+), 250 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-mgw refs/changes/18/32218/6 -- To view, visit https://gerrit.osmocom.org/c/osmo-mgw/+/32218 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-mgw Gerrit-Branch: master Gerrit-Change-Id: I6c3291f825488e5d8ce136aeb18450156794aeb5 Gerrit-Change-Number: 32218 Gerrit-PatchSet: 6 Gerrit-Owner: dexter <pmaier(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-CC: pespin <pespin(a)sysmocom.de> Gerrit-Attention: pespin <pespin(a)sysmocom.de> Gerrit-MessageType: newpatchset
1 0
0 0
[L] Change in osmo-mgw[master]: mgcp_codec: fix codec decision
by dexter 13 Apr '23

13 Apr '23
Attention is currently required from: pespin. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-mgw/+/32218 ) Change subject: mgcp_codec: fix codec decision ...................................................................... Patch Set 6: (2 comments) File src/libosmo-mgcp/mgcp_network.c: https://gerrit.osmocom.org/c/osmo-mgw/+/32218/comment/298a6e07_c4e6e8c0 PS5, Line 1170: return -EINVAL; > You are now changing the logic here. […] Done File src/libosmo-mgcp/mgcp_vty.c: https://gerrit.osmocom.org/c/osmo-mgw/+/32218/comment/1d51d7a3_c34582df PS4, Line 703: "allow-transcoding", "Allow transcoding\n") > These are still missing the deprecated warnings? I have added "vty_out(vty, "%% Deprecated 'allow-transcoding' config no longer has any effect%s", VTY_NEWLINE);" below, is this not correct? -- To view, visit https://gerrit.osmocom.org/c/osmo-mgw/+/32218 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-mgw Gerrit-Branch: master Gerrit-Change-Id: I6c3291f825488e5d8ce136aeb18450156794aeb5 Gerrit-Change-Number: 32218 Gerrit-PatchSet: 6 Gerrit-Owner: dexter <pmaier(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-CC: pespin <pespin(a)sysmocom.de> Gerrit-Attention: pespin <pespin(a)sysmocom.de> Gerrit-Comment-Date: Thu, 13 Apr 2023 12:40:19 +0000 Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: pespin <pespin(a)sysmocom.de> Gerrit-MessageType: comment
1 0
0 0
[S] Change in osmo-mgw[master]: mgcp_network: do not deliver RTP packets with unpatched PT
by dexter 13 Apr '23

13 Apr '23
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-mgw/+/32290 ) Change subject: mgcp_network: do not deliver RTP packets with unpatched PT ...................................................................... mgcp_network: do not deliver RTP packets with unpatched PT When a call leg is set up, then the call agent will also negoatiate a codec along with a payload type number. When sending RTP packets, each RTP packet must also contain the negotiated payload type number. To prevent the emission of RTP packets with an incorrect payload type number, ensure that no packet is sent when mgcp_patch_pt() fails. Change-Id: I013a24c1e0f853557257368cfab9192d4611aafa Related: OS#5461 --- M src/libosmo-mgcp/mgcp_network.c 1 file changed, 19 insertions(+), 12 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-mgw refs/changes/90/32290/1 diff --git a/src/libosmo-mgcp/mgcp_network.c b/src/libosmo-mgcp/mgcp_network.c index 43ea161..1238c74 100644 --- a/src/libosmo-mgcp/mgcp_network.c +++ b/src/libosmo-mgcp/mgcp_network.c @@ -1164,18 +1164,9 @@ * IuUP -> AMR: calls this function, skip patching if conn_src is IuUP. * {AMR or IuUP} -> IuUP: calls mgcp_udp_send() directly, skipping this function: No need to examine dst. */ if (is_rtp && !mgcp_conn_rtp_is_iuup(conn_src)) { - rc = mgcp_patch_pt(conn_dst, msg); - if (rc < 0) { - /* FIXME: It is legal that the payload type on the egress connection is - * different from the payload type that has been negotiated on the - * ingress connection. Essentially the codecs are the same so we can - * match them and patch the payload type. However, if we can not find - * the codec pendant (everything ist equal except the PT), we are of - * course unable to patch the payload type. A situation like this - * should not occur if transcoding is consequently avoided. Until - * we have transcoding support in osmo-mgw we can not resolve this. */ - LOGPENDP(endp, DRTP, LOGL_DEBUG, - "can not patch PT because no suitable egress codec was found.\n"); + if (mgcp_patch_pt(conn_dst, msg) < 0) { + LOGPENDP(endp, DRTP, LOGL_DEBUG, "unable to patch payload type RTP packet, discarding...\n"); + return -EINVAL; } } -- To view, visit https://gerrit.osmocom.org/c/osmo-mgw/+/32290 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-mgw Gerrit-Branch: master Gerrit-Change-Id: I013a24c1e0f853557257368cfab9192d4611aafa Gerrit-Change-Number: 32290 Gerrit-PatchSet: 1 Gerrit-Owner: dexter <pmaier(a)sysmocom.de> Gerrit-MessageType: newchange
1 0
0 0
[M] Change in libosmo-gprs[master]: gmm: Implement rx Attach Reject
by pespin 13 Apr '23

13 Apr '23
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/libosmo-gprs/+/32289 ) Change subject: gmm: Implement rx Attach Reject ...................................................................... gmm: Implement rx Attach Reject Relaed: OS#5501 Depends: libosmogore.git Change-Id I2d36d76ee6fe8ed1a36e37a7d74fbbdc9c27c2c7 Change-Id: Id4ad73ea25a380db9692892422e76ba44084649c --- M include/osmocom/gprs/gmm/gmm_ms_fsm.h M include/osmocom/gprs/gmm/gmm_private.h M src/gmm/gmm.c M src/gmm/gmm_ms_fsm.c M src/gmm/gmm_pdu.c 5 files changed, 66 insertions(+), 7 deletions(-) git pull ssh://gerrit.osmocom.org:29418/libosmo-gprs refs/changes/89/32289/1 diff --git a/include/osmocom/gprs/gmm/gmm_ms_fsm.h b/include/osmocom/gprs/gmm/gmm_ms_fsm.h index 38399b3..16bd022 100644 --- a/include/osmocom/gprs/gmm/gmm_ms_fsm.h +++ b/include/osmocom/gprs/gmm/gmm_ms_fsm.h @@ -28,7 +28,7 @@ GPRS_GMM_MS_EV_ENABLE_GPRS_MODE, GPRS_GMM_MS_EV_DISABLE_GPRS_MODE, GPRS_GMM_MS_EV_ATTACH_REQUESTED, - GPRS_GMM_MS_EV_ATTACH_REJECTED, + GPRS_GMM_MS_EV_ATTACH_REJECTED, /* data: ptr to "uint8_t cause" */ GPRS_GMM_MS_EV_ATTACH_ACCEPTED, GPRS_GMM_MS_EV_DETACH_REQUESTED, /* also network initiated. */ GPRS_GMM_MS_EV_DETACH_REQUESTED_POWEROFF, diff --git a/include/osmocom/gprs/gmm/gmm_private.h b/include/osmocom/gprs/gmm/gmm_private.h index 2f6eb8c..473c670 100644 --- a/include/osmocom/gprs/gmm/gmm_private.h +++ b/include/osmocom/gprs/gmm/gmm_private.h @@ -65,6 +65,9 @@ uint8_t gea; /* GEA/0 = 0, GEA/1 = 1, ... */ uint8_t kc[16]; /* max 16 * 8 = 128 bits */ + + unsigned long t3302; + unsigned long t3346; }; /* gmm_prim.c: */ diff --git a/src/gmm/gmm.c b/src/gmm/gmm.c index f9e2645..e97b398 100644 --- a/src/gmm/gmm.c +++ b/src/gmm/gmm.c @@ -149,6 +149,11 @@ return NULL; } + /* Initialize timers to default values. They may be overwritten by the + * network later on: */ + gmme->t3302 = osmo_tdef_get(g_ctx->T_defs, 3302, OSMO_TDEF_S, -1); + gmme->t3346 = osmo_tdef_get(g_ctx->T_defs, 3346, OSMO_TDEF_S, -1); + llist_add(&gmme->list, &g_ctx->gmme_list); return gmme; @@ -444,6 +449,9 @@ gmme->old_ptmsi = gmme->ptmsi; gmme->ptmsi = mi.tmsi; } + + if (TLVP_PRES_LEN(&tp, GSM48_IE_GMM_TIMER_T3302, 1)) + gmme->t3302 = *TLVP_VAL(&tp, GSM48_IE_GMM_TIMER_T3302); } /* Submit LLGMM-ASSIGN-REQ as per TS 24.007 Annex C.1 */ @@ -468,11 +476,45 @@ return -EINVAL; /* TODO: what to do on error? */ } - +/* Rx GMM Attach Reject, 9.4.4 */ static int gprs_gmm_rx_att_rej(struct gprs_gmm_entity *gmme, struct gsm48_hdr *gh, unsigned int len) { - LOGGMME(gmme, LOGL_ERROR, "Rx GMM ATTACH REJECT not implemented!\n"); - return 0; /* TODO */ + uint8_t *arej = &gh->data[0]; + struct tlv_parsed tp; + uint8_t cause; + int rc; + + if (len < sizeof(*gh) + 1) { + LOGGMME(gmme, LOGL_ERROR, "Rx GMM ATTACH REJECT with wrong size %u\n", len); + goto rejected; + } + + cause = *arej; + arej++; + + LOGGMME(gmme, LOGL_DEBUG, "Rx GMM ATTACH REJECT cause='%s' (%u)\n", + get_value_string(gsm48_gmm_cause_names, cause), cause); + + if (len > sizeof(*gh) + 1) { + rc = gprs_gmm_tlv_parse(&tp, arej, len - (sizeof(*gh) + 1)); + if (rc < 0) { + LOGGMME(gmme, LOGL_ERROR, "Rx GMM ATTACH REJECT: failed to parse TLVs %d\n", rc); + goto rejected; + } + + if (TLVP_PRES_LEN(&tp, GSM48_IE_GMM_TIMER_T3302, 1)) + gmme->t3302 = *TLVP_VAL(&tp, GSM48_IE_GMM_TIMER_T3302); + + if (TLVP_PRES_LEN(&tp, GSM48_IE_GMM_TIMER_T3302, 1)) + gmme->t3346 = *TLVP_VAL(&tp, GSM48_IE_GMM_TIMER_T3346); + } + + rc = osmo_fsm_inst_dispatch(gmme->ms_fsm.fi, GPRS_GMM_MS_EV_ATTACH_REJECTED, &cause); + + return rc; + +rejected: + return -EINVAL; } /* Rx GMM Detach Accept (mobile originating detach), 9.4.6.2 */ diff --git a/src/gmm/gmm_ms_fsm.c b/src/gmm/gmm_ms_fsm.c index f59e92e..92bf6f2 100644 --- a/src/gmm/gmm_ms_fsm.c +++ b/src/gmm/gmm_ms_fsm.c @@ -111,10 +111,11 @@ reinit_attach_proc(ctx); break; case GPRS_GMM_MS_EV_ATTACH_REJECTED: + cause = *(uint8_t *)data; + /* fall-through */ case GPRS_GMM_MS_EV_LOW_LVL_FAIL: - /* TODO: in AttachReject, take cause from rx msg. */ - cause = (event == GPRS_GMM_MS_EV_LOW_LVL_FAIL) ? - GMM_CAUSE_MAC_FAIL : GMM_CAUSE_NET_FAIL; + if (event == GPRS_GMM_MS_EV_LOW_LVL_FAIL) + cause = GMM_CAUSE_MAC_FAIL; if (ctx->attach.explicit_att) { /* Submit GMMREG-ATTACH-REJ as per TS 24.007 Annex C.1 */ rc = gprs_gmm_submit_gmmreg_attach_cnf(ctx->gmme, false, cause); diff --git a/src/gmm/gmm_pdu.c b/src/gmm/gmm_pdu.c index b8bea9d..4123e24 100644 --- a/src/gmm/gmm_pdu.c +++ b/src/gmm/gmm_pdu.c @@ -138,12 +138,14 @@ [GSM48_IE_GMM_AUTH_RAND] = { TLV_TYPE_FIXED, 16 }, [GSM48_IE_GMM_AUTH_SRES] = { TLV_TYPE_FIXED, 4 }, [GSM48_IE_GMM_AUTH_RES_EXT] = { TLV_TYPE_TLV, 0 }, + [GSM48_IE_GMM_TIMER_T3302] = { TLV_TYPE_TLV, 0 }, [GSM48_IE_GMM_AUTH_FAIL_PAR] = { TLV_TYPE_TLV, 0 }, [GSM48_IE_GMM_IMEISV] = { TLV_TYPE_TLV, 0 }, [GSM48_IE_GMM_DRX_PARAM] = { TLV_TYPE_FIXED, 2 }, [GSM48_IE_GMM_MS_NET_CAPA] = { TLV_TYPE_TLV, 0 }, [GSM48_IE_GMM_PDP_CTX_STATUS] = { TLV_TYPE_TLV, 0 }, [GSM48_IE_GMM_PS_LCS_CAPA] = { TLV_TYPE_TLV, 0 }, + [GSM48_IE_GMM_TIMER_T3346] = { TLV_TYPE_TLV, 0 }, [GSM48_IE_GMM_GMM_MBMS_CTX_ST] = { TLV_TYPE_TLV, 0 }, }, }; -- To view, visit https://gerrit.osmocom.org/c/libosmo-gprs/+/32289 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmo-gprs Gerrit-Branch: master Gerrit-Change-Id: Id4ad73ea25a380db9692892422e76ba44084649c Gerrit-Change-Number: 32289 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-MessageType: newchange
1 0
0 0
[S] Change in osmo-ttcn3-hacks[master]: pcu: Fix some tests missing proper tear down
by pespin 13 Apr '23

13 Apr '23
pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/32286 ) Change subject: pcu: Fix some tests missing proper tear down ...................................................................... pcu: Fix some tests missing proper tear down As a result, they sometimes end up in error during test tear down, and they show up as failed. Change-Id: I89047a57a508df5c18e0d7bd2366cf15cda055be --- M pcu/PCU_Tests.ttcn 1 file changed, 40 insertions(+), 0 deletions(-) Approvals: Jenkins Builder: Verified osmith: Looks good to me, but someone else must approve fixeria: Looks good to me, approved diff --git a/pcu/PCU_Tests.ttcn b/pcu/PCU_Tests.ttcn index 954216f..f859b9b 100644 --- a/pcu/PCU_Tests.ttcn +++ b/pcu/PCU_Tests.ttcn @@ -560,6 +560,8 @@ ms.ta, ", but received ", pkt_ta.val); f_shutdown(__BFILE__, __LINE__); } + + f_shutdown(__BFILE__, __LINE__, final := true); } /* Verify Timing Advance value(s) indicated during the packet Downlink assignment @@ -1143,6 +1145,8 @@ f_pcuvty_set_link_quality_ranges(); f_dl_data_exp_cs(f_rlcmac_block_int2cs_mcs(g_cs_max_dl, false)); + + f_shutdown(__BFILE__, __LINE__, final := true); } /* Check DL CS4 is used in good link conditions if allowed by config */ @@ -1162,6 +1166,8 @@ f_pcuvty_set_link_quality_ranges(); f_dl_data_exp_cs(f_rlcmac_block_int2cs_mcs(g_cs_max_dl, false)); + + f_shutdown(__BFILE__, __LINE__, final := true); } /* Test the initial UL MCS set by VTY works fine */ @@ -1341,6 +1347,8 @@ f_pcuvty_set_link_quality_ranges(); f_dl_data_exp_cs(f_rlcmac_block_int2cs_mcs(g_mcs_max_dl, true), bssgp_ms_racap_egprs_def); + + f_shutdown(__BFILE__, __LINE__, final := true); } /* Verify PCU drops TBF after some time of inactivity. */ @@ -2495,6 +2503,8 @@ { name := "TTCN3.bts.0.pkt.ul_assignment", mtype := "c", min := 1, max := 1 } }; f_statsd_expect(expect); + + f_shutdown(__BFILE__, __LINE__, final := true); } testcase TC_mo_ping_pong_with_ul_racap_egprs_only() runs on RAW_PCU_Test_CT { @@ -2516,6 +2526,8 @@ { name := "TTCN3.bts.0.pkt.ul_assignment", mtype := "c", min := 1, max := 1 } }; f_statsd_expect(expect); + + f_shutdown(__BFILE__, __LINE__, final := true); } testcase TC_force_two_phase_access() runs on RAW_PCU_Test_CT { @@ -2540,6 +2552,8 @@ { name := "TTCN3.bts.0.pkt.ul_assignment", mtype := "c", min := 1, max := 1 } }; f_statsd_expect(expect); + + f_shutdown(__BFILE__, __LINE__, final := true); } /* Test scenario where SGSN wants to send some data against MS and it is @@ -5972,6 +5986,8 @@ sched_fn := f_rrbp_ack_fn(sched_fn, dl_block.ctrl.mac_hdr.rrbp); f_ms_tx_ul_block(ms, ts_RLCMAC_CTRL_ACK(ms.tlli), sched_fn); } + + f_shutdown(__BFILE__, __LINE__, final := true); } /* Test MS sending Pkt Cell Change Notification twice (duplicate msg) while sending Pkt Cell Change Continue */ @@ -6039,6 +6055,8 @@ sched_fn := f_rrbp_ack_fn(sched_fn, dl_block.ctrl.mac_hdr.rrbp); f_ms_tx_ul_block(ms, ts_RLCMAC_CTRL_ACK(ms.tlli), sched_fn); } + + f_shutdown(__BFILE__, __LINE__, final := true); } /* Test MS sending Pkt Cell Change Notification twice (duplicate msg) while waiting for Pkt Cell Change Continue CTRL ACK */ @@ -6106,6 +6124,8 @@ sched_fn := f_rrbp_ack_fn(sched_fn, dl_block.ctrl.mac_hdr.rrbp); f_ms_tx_ul_block(ms, ts_RLCMAC_CTRL_ACK(ms.tlli), sched_fn); } + + f_shutdown(__BFILE__, __LINE__, final := true); } /* Test MS sending Pkt Cell Change Notify twice (different tgt cell each time) @@ -6342,6 +6362,8 @@ sched_fn := f_rrbp_ack_fn(sched_fn, dl_block.ctrl.mac_hdr.rrbp); f_ms_tx_ul_block(ms, ts_RLCMAC_CTRL_ACK(ms.tlli), sched_fn); } + + f_shutdown(__BFILE__, __LINE__, final := true); } /* Test MS sending Pkt Cell Change Notification twice (different tgt cell) while sending Pkt Cell Change Continue */ @@ -6421,6 +6443,8 @@ sched_fn := f_rrbp_ack_fn(sched_fn, dl_block.ctrl.mac_hdr.rrbp); f_ms_tx_ul_block(ms, ts_RLCMAC_CTRL_ACK(ms.tlli), sched_fn); } + + f_shutdown(__BFILE__, __LINE__, final := true); } /* Test MS sending Pkt Cell Change Notification twice (different tgt cell) while waiting for Pkt Cell Change Continue CTRL ACK*/ @@ -6527,6 +6551,8 @@ sched_fn := f_rrbp_ack_fn(sched_fn, dl_block.ctrl.mac_hdr.rrbp); f_ms_tx_ul_block(ms, ts_RLCMAC_CTRL_ACK(ms.tlli), sched_fn); } + + f_shutdown(__BFILE__, __LINE__, final := true); } /* Test MS sending Pkt Cell Change Notification on an MS with an existing but unassigned (no TFI) DL TBF */ @@ -6609,6 +6635,8 @@ f_acknackdesc_ack_block(ms.dl_tbf.acknack_desc, dl_block, '1'B); f_ms_tx_ul_block(ms, ts_RLCMAC_DL_ACK_NACK(ms.dl_tbf.tfi, ms.dl_tbf.acknack_desc), f_dl_block_ack_fn(dl_block, dl_fn)); + + f_shutdown(__BFILE__, __LINE__, final := true); } -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/32286 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: I89047a57a508df5c18e0d7bd2366cf15cda055be Gerrit-Change-Number: 32286 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: daniel <dwillmann(a)sysmocom.de> Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de> Gerrit-Reviewer: osmith <osmith(a)sysmocom.de> Gerrit-Reviewer: pespin <pespin(a)sysmocom.de> Gerrit-MessageType: merged
1 0
0 0
[S] Change in osmo-ttcn3-hacks[master]: pcu: Fix some tests missing proper tear down
by fixeria 13 Apr '23

13 Apr '23
Attention is currently required from: pespin, daniel. fixeria has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/32286 ) Change subject: pcu: Fix some tests missing proper tear down ...................................................................... Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/32286 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: I89047a57a508df5c18e0d7bd2366cf15cda055be Gerrit-Change-Number: 32286 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: daniel <dwillmann(a)sysmocom.de> Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de> Gerrit-Reviewer: osmith <osmith(a)sysmocom.de> Gerrit-Attention: pespin <pespin(a)sysmocom.de> Gerrit-Attention: daniel <dwillmann(a)sysmocom.de> Gerrit-Comment-Date: Thu, 13 Apr 2023 11:57:34 +0000 Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
1 0
0 0
[S] Change in libosmocore[master]: gsm_04_08_gprs.h: Add missing GMM IEs for T3302 and T3346
by pespin 13 Apr '23

13 Apr '23
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/libosmocore/+/32288 ) Change subject: gsm_04_08_gprs.h: Add missing GMM IEs for T3302 and T3346 ...................................................................... gsm_04_08_gprs.h: Add missing GMM IEs for T3302 and T3346 As specified in TS 24.008 9.4.4 "Attach reject" Change-Id: I2d36d76ee6fe8ed1a36e37a7d74fbbdc9c27c2c7 --- M include/osmocom/gsm/protocol/gsm_04_08_gprs.h 1 file changed, 13 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/88/32288/1 diff --git a/include/osmocom/gsm/protocol/gsm_04_08_gprs.h b/include/osmocom/gsm/protocol/gsm_04_08_gprs.h index 39f3b3e..3d18243 100644 --- a/include/osmocom/gsm/protocol/gsm_04_08_gprs.h +++ b/include/osmocom/gsm/protocol/gsm_04_08_gprs.h @@ -92,11 +92,13 @@ GSM48_IE_GMM_DRX_PARAM = 0x27, /* 10.5.5.6 */ GSM48_IE_GMM_AUTN = 0x28, /* 10.5.3.1.1 */ GSM48_IE_GMM_AUTH_RES_EXT = 0x29, /* 10.5.3.2.1 */ + GSM48_IE_GMM_TIMER_T3302 = 0x2A, /* 10.5.7.4 */ GSM48_IE_GMM_AUTH_FAIL_PAR = 0x30, /* 10.5.3.2.2 */ GSM48_IE_GMM_MS_NET_CAPA = 0x31, /* 10.5.5.12 */ GSM48_IE_GMM_PDP_CTX_STATUS = 0x32, /* 10.5.7.1 */ GSM48_IE_GMM_PS_LCS_CAPA = 0x33, /* 10.5.5.22 */ GSM48_IE_GMM_GMM_MBMS_CTX_ST = 0x35, /* 10.5.7.6 */ + GSM48_IE_GMM_TIMER_T3346 = 0x3A, /* 10.5.7.4 */ GSM48_IE_GMM_NET_FEAT_SUPPORT = 0xB0, /* 10.5.5.23 */ }; -- To view, visit https://gerrit.osmocom.org/c/libosmocore/+/32288 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-Change-Id: I2d36d76ee6fe8ed1a36e37a7d74fbbdc9c27c2c7 Gerrit-Change-Number: 32288 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-MessageType: newchange
1 0
0 0
[M] Change in libosmo-gprs[master]: gmm: Implement T3310 (Tattach)
by pespin 13 Apr '23

13 Apr '23
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/libosmo-gprs/+/32287 ) Change subject: gmm: Implement T3310 (Tattach) ...................................................................... gmm: Implement T3310 (Tattach) Related: OS#5501 Change-Id: I0ba24820f63c44b6dc7568e86fc36965a042d613 --- M include/osmocom/gprs/gmm/gmm_ms_fsm.h M src/gmm/gmm.c M src/gmm/gmm_ms_fsm.c 3 files changed, 93 insertions(+), 8 deletions(-) git pull ssh://gerrit.osmocom.org:29418/libosmo-gprs refs/changes/87/32287/1 diff --git a/include/osmocom/gprs/gmm/gmm_ms_fsm.h b/include/osmocom/gprs/gmm/gmm_ms_fsm.h index 3e6ac96..38399b3 100644 --- a/include/osmocom/gprs/gmm/gmm_ms_fsm.h +++ b/include/osmocom/gprs/gmm/gmm_ms_fsm.h @@ -55,6 +55,8 @@ /* Session Ids waiting for attach to happen during implicit_att: */ uint32_t sess_id[16]; uint8_t num_sess_id; + /* Retransmission of ATTACH REQUEST (T3310) */ + uint8_t req_attempts; } attach; /* Info about last initiated detach: */ diff --git a/src/gmm/gmm.c b/src/gmm/gmm.c index ed7b69f..f9e2645 100644 --- a/src/gmm/gmm.c +++ b/src/gmm/gmm.c @@ -59,11 +59,11 @@ /* TS 24.008 */ static struct osmo_tdef T_defs_gmm[] = { { .T=3302, .default_val=GSM0408_T3302_SECS, .desc = "" }, - { .T=3310, .default_val=GSM0408_T3310_SECS, .desc = "" }, + { .T=3310, .default_val=GSM0408_T3310_SECS, .desc = "Tattach" }, { .T=3311, .default_val=GSM0408_T3311_SECS, .desc = "" }, - { .T=3312, .default_val=GSM0408_T3312_SECS, .desc = "" }, - { .T=3314, .default_val=GSM0408_T3314_SECS, .desc="READY timer. Forced to STANDBY on expiry timer (s)" }, - { .T=3316, .default_val=GSM0408_T3316_SECS, .desc = "" }, + { .T=3312, .default_val=GSM0408_T3312_SECS, .desc = "Periodic RA Update timer (s)" }, + { .T=3314, .default_val=GSM0408_T3314_SECS, .desc = "READY timer. Forced to STANDBY on expiry timer (s)" }, + { .T=3316, .default_val=GSM0408_T3316_SECS, .desc = "AA-Ready timer (s)" }, { .T=3317, .default_val=GSM0408_T3317_SECS, .desc = "" }, { .T=3318, .default_val=GSM0408_T3318_SECS, .desc = "" }, { .T=3319, .default_val=GSM0408_T3319_SECS, .desc = "" }, diff --git a/src/gmm/gmm_ms_fsm.c b/src/gmm/gmm_ms_fsm.c index cdc2089..f59e92e 100644 --- a/src/gmm/gmm_ms_fsm.c +++ b/src/gmm/gmm_ms_fsm.c @@ -25,14 +25,40 @@ #include <osmocom/gprs/gmm/gmm_ms_fsm.h> #include <osmocom/gprs/gmm/gmm.h> #include <osmocom/gprs/gmm/gmm_private.h> +#include <osmocom/gsm/protocol/gsm_04_08_gprs.h> #define X(s) (1 << (s)) -static const struct osmo_tdef_state_timeout gmm_ms_fsm_timeouts[32] = {}; +static const struct osmo_tdef_state_timeout gmm_ms_fsm_timeouts[32] = { + [GPRS_GMM_MS_ST_NULL] = {}, + [GPRS_GMM_MS_ST_DEREGISTERED] = {}, + [GPRS_GMM_MS_ST_REGISTERED_INITIATED] = { .T = 3310 }, + [GPRS_GMM_MS_ST_REGISTERED] = {}, + [GPRS_GMM_MS_ST_DEREGISTERED_INITIATED] = {}, + [GPRS_GMM_MS_ST_RAU_INITIATED] = {}, + [GPRS_GMM_MS_ST_SR_INITIATED] = {}, + +}; #define gmm_ms_fsm_state_chg(fi, NEXT_STATE) \ osmo_tdef_fsm_inst_state_chg(fi, NEXT_STATE, gmm_ms_fsm_timeouts, g_ctx->T_defs, -1) + +static int reinit_attach_proc(struct gprs_gmm_ms_fsm_ctx *ctx) +{ + unsigned long val_sec; + + OSMO_ASSERT(ctx->fi->state == GPRS_GMM_MS_ST_REGISTERED_INITIATED); + + /* Rearm T3110 */ + OSMO_ASSERT(ctx->fi->T == 3110); + val_sec = osmo_tdef_get(g_ctx->T_defs, ctx->fi->T, OSMO_TDEF_S, -1); + osmo_timer_schedule(&ctx->fi->timer, val_sec, 0); + return gprs_gmm_tx_att_req(ctx->gmme, + ctx->attach.type, + ctx->attach.with_imsi); +} + static void st_gmm_ms_null(struct osmo_fsm_inst *fi, uint32_t event, void *data) { switch (event) { @@ -76,17 +102,36 @@ static void st_gmm_ms_registered_initiated(struct osmo_fsm_inst *fi, uint32_t event, void *data) { struct gprs_gmm_ms_fsm_ctx *ctx = (struct gprs_gmm_ms_fsm_ctx *)fi->priv; + uint8_t cause; int rc; switch (event) { case GPRS_GMM_MS_EV_ATTACH_REQUESTED: /* Upper layers request us to retry attaching: */ - rc = gprs_gmm_tx_att_req(ctx->gmme, - ctx->attach.type, - ctx->attach.with_imsi); + reinit_attach_proc(ctx); break; case GPRS_GMM_MS_EV_ATTACH_REJECTED: case GPRS_GMM_MS_EV_LOW_LVL_FAIL: + /* TODO: in AttachReject, take cause from rx msg. */ + cause = (event == GPRS_GMM_MS_EV_LOW_LVL_FAIL) ? + GMM_CAUSE_MAC_FAIL : GMM_CAUSE_NET_FAIL; + if (ctx->attach.explicit_att) { + /* Submit GMMREG-ATTACH-REJ as per TS 24.007 Annex C.1 */ + rc = gprs_gmm_submit_gmmreg_attach_cnf(ctx->gmme, false, cause); + if (rc < 0) + return; + } + if (ctx->attach.implicit_att) { + /* Submit GMMSM-ESTABLISH-CNF as per TS 24.007 Annex C.3 */ + unsigned int i; + for (i = 0; i < ctx->attach.num_sess_id; i++) { + rc = gprs_gmm_submit_gmmsm_establish_cnf(ctx->gmme, + ctx->attach.sess_id[i], + false, cause); + if (rc < 0) + return; + } + } gmm_ms_fsm_state_chg(fi, GPRS_GMM_MS_ST_DEREGISTERED); break; case GPRS_GMM_MS_EV_ATTACH_ACCEPTED: @@ -115,6 +160,13 @@ } } +static void st_gmm_ms_registered_on_enter(struct osmo_fsm_inst *fi, uint32_t prev_state) +{ + struct gprs_gmm_ms_fsm_ctx *ctx = (struct gprs_gmm_ms_fsm_ctx *)fi->priv; + + ctx->attach.req_attempts = 0; +} + static void st_gmm_ms_registered(struct osmo_fsm_inst *fi, uint32_t event, void *data) { switch (event) { @@ -234,6 +286,7 @@ X(GPRS_GMM_MS_ST_DEREGISTERED_INITIATED) | X(GPRS_GMM_MS_ST_DEREGISTERED), .name = "Registered", + .onenter = st_gmm_ms_registered_on_enter, .action = st_gmm_ms_registered, }, [GPRS_GMM_MS_ST_DEREGISTERED_INITIATED] = { @@ -291,6 +344,26 @@ int gmm_ms_fsm_timer_cb(struct osmo_fsm_inst *fi) { + struct gprs_gmm_ms_fsm_ctx *ctx = (struct gprs_gmm_ms_fsm_ctx *)fi->priv; + + switch (fi->T) { + case 3310: + /* TS 23.008 clause 4.7.3.1.5 c) */ + ctx->attach.req_attempts++; + LOGPFSML(ctx->fi, LOGL_INFO, "T3310 timeout attempts=%u\n", ctx->attach.req_attempts); + OSMO_ASSERT(fi->state == GPRS_GMM_MS_ST_REGISTERED_INITIATED); + if (ctx->attach.req_attempts == 4) { + /* "On the fifth expiry of timer T3310, the MS shall + * abort the GPRS attach procedure" */ + LOGPFSML(ctx->fi, LOGL_NOTICE, "GPRS attach procedure failure (T3310 timeout attempts=%u)\n", ctx->attach.req_attempts); + osmo_fsm_inst_dispatch(ctx->fi, GPRS_GMM_MS_EV_LOW_LVL_FAIL, NULL); + return 0; + } + reinit_attach_proc(ctx); + break; + default: + OSMO_ASSERT(0); + } return 0; } -- To view, visit https://gerrit.osmocom.org/c/libosmo-gprs/+/32287 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmo-gprs Gerrit-Branch: master Gerrit-Change-Id: I0ba24820f63c44b6dc7568e86fc36965a042d613 Gerrit-Change-Number: 32287 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-MessageType: newchange
1 0
0 0
[S] Change in docker-playground[master]: ttcn3-ggsn: Speed up tests by lowering retransmission T3,N3 timers
by osmith 13 Apr '23

13 Apr '23
Attention is currently required from: pespin, daniel. osmith has posted comments on this change. ( https://gerrit.osmocom.org/c/docker-playground/+/32284 ) Change subject: ttcn3-ggsn: Speed up tests by lowering retransmission T3,N3 timers ...................................................................... Patch Set 1: Code-Review+1 -- To view, visit https://gerrit.osmocom.org/c/docker-playground/+/32284 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: docker-playground Gerrit-Branch: master Gerrit-Change-Id: Ica346bd791a67b72fad597702d750383e8ac5895 Gerrit-Change-Number: 32284 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: daniel <dwillmann(a)sysmocom.de> Gerrit-Reviewer: osmith <osmith(a)sysmocom.de> Gerrit-Attention: pespin <pespin(a)sysmocom.de> Gerrit-Attention: daniel <dwillmann(a)sysmocom.de> Gerrit-Comment-Date: Thu, 13 Apr 2023 10:25:28 +0000 Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
1 0
0 0
  • ← Newer
  • 1
  • ...
  • 165
  • 166
  • 167
  • 168
  • 169
  • 170
  • 171
  • ...
  • 226
  • Older →

HyperKitty Powered by HyperKitty version 1.3.12.