Fix some typos

Fix typos and common misspellings in code comments and log messages.

Change-Id: Ie66b89065f2100c1d2125ce5a6c9b1d58df7c8ad
This commit is contained in:
Martin Hauke 2019-11-14 17:49:08 +01:00 committed by laforge
parent 8a50cfbc4e
commit 3f07daceef
27 changed files with 50 additions and 50 deletions

View File

@ -27,7 +27,7 @@ These counters and their description based on OsmoMSC 1.4.0 (OsmoMSC).
| sms:rp_err_other | <<msc_sms:rp_err_other>> | Other error of MS responses on a sms delive attempt. | sms:rp_err_other | <<msc_sms:rp_err_other>> | Other error of MS responses on a sms delive attempt.
| sms:deliver_unknown_error | <<msc_sms:deliver_unknown_error>> | Unknown error occurred during sms delivery. | sms:deliver_unknown_error | <<msc_sms:deliver_unknown_error>> | Unknown error occurred during sms delivery.
| call:mo_setup | <<msc_call:mo_setup>> | Received setup requests from a MS to init a MO call. | call:mo_setup | <<msc_call:mo_setup>> | Received setup requests from a MS to init a MO call.
| call:mo_connect_ack | <<msc_call:mo_connect_ack>> | Received a connect ack from MS of a MO call. Call is now succesful connected up. | call:mo_connect_ack | <<msc_call:mo_connect_ack>> | Received a connect ack from MS of a MO call. Call is now successful connected up.
| call:mt_setup | <<msc_call:mt_setup>> | Sent setup requests to the MS (MT). | call:mt_setup | <<msc_call:mt_setup>> | Sent setup requests to the MS (MT).
| call:mt_connect | <<msc_call:mt_connect>> | Sent a connect to the MS (MT). | call:mt_connect | <<msc_call:mt_connect>> | Sent a connect to the MS (MT).
| call:active | <<msc_call:active>> | Count total amount of calls that ever reached active state. | call:active | <<msc_call:active>> | Count total amount of calls that ever reached active state.

View File

@ -44,7 +44,7 @@ arguments:
Same as option -M (deprecated). Same as option -M (deprecated).
*-C, --no-dbcounter*:: *-C, --no-dbcounter*::
Deprecated. DB statistics and counter has been removed. Deprecated. DB statistics and counter has been removed.
This option is only valid for compatiblity and does nothing. This option is only valid for compatibility and does nothing.
=== Multiple instances === Multiple instances

View File

@ -713,7 +713,7 @@ if __name__ == '__main__':
help='Pick output format: mscgen format or libosmocore/contrib/ladder_to_msc.py format') help='Pick output format: mscgen format or libosmocore/contrib/ladder_to_msc.py format')
parser.add_argument('-m', '--mask-values', dest='mask_values', action='store_true', parser.add_argument('-m', '--mask-values', dest='mask_values', action='store_true',
help='Do not output specific values like IP address, port, endpoint CI, instead just indicate that a value is' help='Do not output specific values like IP address, port, endpoint CI, instead just indicate that a value is'
' present. This makes the output reproducable across various logs.') ' present. This makes the output reproducible across various logs.')
parser.add_argument('-s', '--start-with', dest='start_with_re', default=None, parser.add_argument('-s', '--start-with', dest='start_with_re', default=None,
help='Skip until the first message with this label (regex), e.g. -s "CC SETUP"') help='Skip until the first message with this label (regex), e.g. -s "CC SETUP"')

View File

@ -83,7 +83,7 @@ static const struct rate_ctr_desc msc_ctr_description[] = {
[MSC_CTR_SMS_DELIVER_UNKNOWN_ERROR] = {"sms:deliver_unknown_error", "Unknown error occurred during sms delivery."}, [MSC_CTR_SMS_DELIVER_UNKNOWN_ERROR] = {"sms:deliver_unknown_error", "Unknown error occurred during sms delivery."},
/* FIXME: count also sms delivered */ /* FIXME: count also sms delivered */
[MSC_CTR_CALL_MO_SETUP] = {"call:mo_setup", "Received setup requests from a MS to init a MO call."}, [MSC_CTR_CALL_MO_SETUP] = {"call:mo_setup", "Received setup requests from a MS to init a MO call."},
[MSC_CTR_CALL_MO_CONNECT_ACK] = {"call:mo_connect_ack", "Received a connect ack from MS of a MO call. Call is now succesful connected up."}, [MSC_CTR_CALL_MO_CONNECT_ACK] = {"call:mo_connect_ack", "Received a connect ack from MS of a MO call. Call is now successful connected up."},
[MSC_CTR_CALL_MT_SETUP] = {"call:mt_setup", "Sent setup requests to the MS (MT)."}, [MSC_CTR_CALL_MT_SETUP] = {"call:mt_setup", "Sent setup requests to the MS (MT)."},
[MSC_CTR_CALL_MT_CONNECT] = {"call:mt_connect", "Sent a connect to the MS (MT)."}, [MSC_CTR_CALL_MT_CONNECT] = {"call:mt_connect", "Sent a connect to the MS (MT)."},
[MSC_CTR_CALL_ACTIVE] = {"call:active", "Count total amount of calls that ever reached active state."}, [MSC_CTR_CALL_ACTIVE] = {"call:active", "Count total amount of calls that ever reached active state."},

View File

@ -53,7 +53,7 @@ struct gsm_call {
#define MNCC_SETUP_CNF 0x0104 #define MNCC_SETUP_CNF 0x0104
#define MNCC_SETUP_COMPL_REQ 0x0105 #define MNCC_SETUP_COMPL_REQ 0x0105
#define MNCC_SETUP_COMPL_IND 0x0106 #define MNCC_SETUP_COMPL_IND 0x0106
/* MNCC_REJ_* is perfomed via MNCC_REL_* */ /* MNCC_REJ_* is performed via MNCC_REL_* */
#define MNCC_CALL_CONF_IND 0x0107 #define MNCC_CALL_CONF_IND 0x0107
#define MNCC_CALL_PROC_REQ 0x0108 #define MNCC_CALL_PROC_REQ 0x0108
#define MNCC_PROGRESS_REQ 0x0109 #define MNCC_PROGRESS_REQ 0x0109
@ -132,7 +132,7 @@ struct gsm_mncc {
/* which fields are present */ /* which fields are present */
uint32_t fields; uint32_t fields;
/* data derived informations (MNCC_F_ based) */ /* data derived information (MNCC_F_ based) */
struct gsm_mncc_bearer_cap bearer_cap; struct gsm_mncc_bearer_cap bearer_cap;
struct gsm_mncc_number called; struct gsm_mncc_number called;
struct gsm_mncc_number calling; struct gsm_mncc_number calling;

View File

@ -236,7 +236,7 @@ enum msc_a_events {
MSC_A_EV_FROM_T_SEND_END_SIGNAL_REQUEST, MSC_A_EV_FROM_T_SEND_END_SIGNAL_REQUEST,
/* gsm_04_08.c has successfully received a valid Complete Layer 3 message, i.e. Location Updating, CM Service /* gsm_04_08.c has successfully received a valid Complete Layer 3 message, i.e. Location Updating, CM Service
* Request, Paging Reponse or IMSI Detach. */ * Request, Paging Response or IMSI Detach. */
MSC_A_EV_COMPLETE_LAYER_3_OK, MSC_A_EV_COMPLETE_LAYER_3_OK,
/* Received a Classmark Update -- during GERAN ciphering, msc_a may have to wait for Classmark information to /* Received a Classmark Update -- during GERAN ciphering, msc_a may have to wait for Classmark information to

View File

@ -44,7 +44,7 @@ struct sgs_state {
char vlr_name[SGS_VLR_NAME_MAXLEN]; char vlr_name[SGS_VLR_NAME_MAXLEN];
/* timers on VLR side */ /* timers on VLR side */
unsigned int timer[_NUM_SGS_STATE_TIMERS]; unsigned int timer[_NUM_SGS_STATE_TIMERS];
/* countrs on VLR side */ /* counters on VLR side */
unsigned int counter[_NUM_SGS_STATE_COUNTERS]; unsigned int counter[_NUM_SGS_STATE_COUNTERS];
} cfg; } cfg;
}; };

View File

@ -40,7 +40,7 @@ struct log_target;
/* VLR subscriber authentication state */ /* VLR subscriber authentication state */
enum vlr_subscr_auth_state { enum vlr_subscr_auth_state {
/* subscriber needs to be autenticated */ /* subscriber needs to be authenticated */
VLR_SUB_AS_NEEDS_AUTH, VLR_SUB_AS_NEEDS_AUTH,
/* waiting for AuthInfo from HLR/AUC */ /* waiting for AuthInfo from HLR/AUC */
VLR_SUB_AS_NEEDS_AUTH_WAIT_AI, VLR_SUB_AS_NEEDS_AUTH_WAIT_AI,
@ -66,7 +66,7 @@ enum vlr_lu_event {
VLR_ULA_E_SEND_ID_NACK, /* Result of Send-ID from PVLR */ VLR_ULA_E_SEND_ID_NACK, /* Result of Send-ID from PVLR */
VLR_ULA_E_AUTH_RES, /* Result of auth procedure */ VLR_ULA_E_AUTH_RES, /* Result of auth procedure */
VLR_ULA_E_CIPH_RES, /* Result of Ciphering Mode Command */ VLR_ULA_E_CIPH_RES, /* Result of Ciphering Mode Command */
VLR_ULA_E_ID_IMSI, /* IMSI recieved from MS */ VLR_ULA_E_ID_IMSI, /* IMSI received from MS */
VLR_ULA_E_ID_IMEI, /* IMEI received from MS */ VLR_ULA_E_ID_IMEI, /* IMEI received from MS */
VLR_ULA_E_ID_IMEISV, /* IMEISV received from MS */ VLR_ULA_E_ID_IMEISV, /* IMEISV received from MS */
VLR_ULA_E_HLR_IMEI_ACK, /* Check_IMEI_VLR result from HLR */ VLR_ULA_E_HLR_IMEI_ACK, /* Check_IMEI_VLR result from HLR */
@ -420,7 +420,7 @@ void vlr_subscr_cancel_attach_fsm(struct vlr_subscr *vsub,
void vlr_subscr_enable_expire_lu(struct vlr_subscr *vsub); void vlr_subscr_enable_expire_lu(struct vlr_subscr *vsub);
/* Process Acccess Request FSM */ /* Process Access Request FSM */
enum proc_arq_vlr_event { enum proc_arq_vlr_event {
PR_ARQ_E_START, PR_ARQ_E_START,

View File

@ -341,7 +341,7 @@ static int mm_rx_loc_upd_req(struct msc_a *msc_a, struct msgb *msg)
} }
/* TODO: 10.5.1.6 MS Classmark for UMTS / Classmark 2 */ /* TODO: 10.5.1.6 MS Classmark for UMTS / Classmark 2 */
/* TODO: 10.5.3.14 Aditional update parameters (CS fallback calls) */ /* TODO: 10.5.3.14 Additional update parameters (CS fallback calls) */
/* TODO: 10.5.7.8 Device properties */ /* TODO: 10.5.7.8 Device properties */
/* TODO: 10.5.1.15 MS network feature support */ /* TODO: 10.5.1.15 MS network feature support */
@ -676,7 +676,7 @@ accept_reuse:
/* /*
* Handle CM Service Requests * Handle CM Service Requests
* a) Verify that the packet is long enough to contain the information * a) Verify that the packet is long enough to contain the information
* we require otherwsie reject with INCORRECT_MESSAGE * we require otherwise reject with INCORRECT_MESSAGE
* b) Try to parse the TMSI. If we do not have one reject * b) Try to parse the TMSI. If we do not have one reject
* c) Check that we know the subscriber with the TMSI otherwise reject * c) Check that we know the subscriber with the TMSI otherwise reject
* with a HLR cause * with a HLR cause

View File

@ -280,7 +280,7 @@ void _gsm48_cc_trans_free(struct gsm_trans *trans)
mncc_set_cause(&rel, GSM48_CAUSE_LOC_PRN_S_LU, GSM48_CC_CAUSE_RESOURCE_UNAVAIL); mncc_set_cause(&rel, GSM48_CAUSE_LOC_PRN_S_LU, GSM48_CC_CAUSE_RESOURCE_UNAVAIL);
gsm48_cc_tx_release(trans, &rel); gsm48_cc_tx_release(trans, &rel);
} }
/* Ressource unavailable */ /* Resource unavailable */
if (trans->cc.mncc_initiated) if (trans->cc.mncc_initiated)
mncc_release_ind(trans->net, trans, trans->callref, mncc_release_ind(trans->net, trans, trans->callref,
GSM48_CAUSE_LOC_PRN_S_LU, GSM48_CAUSE_LOC_PRN_S_LU,
@ -1922,7 +1922,7 @@ static int mncc_tx_to_gsm_cc(struct gsm_network *net, const union mncc_msg *msg)
if (!trans) { if (!trans) {
LOG_TRANS(trans, LOGL_ERROR, "No memory for trans.\n"); LOG_TRANS(trans, LOGL_ERROR, "No memory for trans.\n");
vlr_subscr_put(vsub, __func__); vlr_subscr_put(vsub, __func__);
/* Ressource unavailable */ /* Resource unavailable */
mncc_release_ind(net, NULL, data->callref, mncc_release_ind(net, NULL, data->callref,
GSM48_CAUSE_LOC_PRN_S_LU, GSM48_CAUSE_LOC_PRN_S_LU,
GSM48_CC_CAUSE_RESOURCE_UNAVAIL); GSM48_CC_CAUSE_RESOURCE_UNAVAIL);

View File

@ -265,7 +265,7 @@ static void ss_paging_cb(struct msc_a *msc_a, struct gsm_trans *trans)
if (trans->msc_a) { if (trans->msc_a) {
LOG_MSC_A_CAT(msc_a, DPAG, LOGL_ERROR, LOG_MSC_A_CAT(msc_a, DPAG, LOGL_ERROR,
"Handle paging error: transaction already associated with subsciber," "Handle paging error: transaction already associated with subscriber,"
" apparently it was already handled. Skip.\n"); " apparently it was already handled. Skip.\n");
return; return;
} }

View File

@ -192,7 +192,7 @@ int mncc_call_set_rtp_stream(struct mncc_call *mncc_call, struct rtp_stream *rtp
/* Disassociate the rtp_stream from this MNCC call instance, and clear the remote RTP IP:port info. /* Disassociate the rtp_stream from this MNCC call instance, and clear the remote RTP IP:port info.
* When the MNCC FSM ends for any reason, it will release the RTP stream (which usually triggers complete tear down of * When the MNCC FSM ends for any reason, it will release the RTP stream (which usually triggers complete tear down of
* the call_leg and CC transaction). If the RTP stream should still remain in use, e.g. during Subseqent inter-MSC * the call_leg and CC transaction). If the RTP stream should still remain in use, e.g. during Subsequent inter-MSC
* Handover where this MNCC was a forwarding to a remote MSC that is no longer needed, this function must be called * Handover where this MNCC was a forwarding to a remote MSC that is no longer needed, this function must be called
* before the MNCC FSM instance terminates. Call this *before* setting a new remote RTP address on the rtp_stream, since * before the MNCC FSM instance terminates. Call this *before* setting a new remote RTP address on the rtp_stream, since
* this clears the rtp_stream->remote ip:port information. */ * this clears the rtp_stream->remote ip:port information. */

View File

@ -82,7 +82,7 @@ static void mncc_sock_close(struct mncc_sock_state *state)
/* re-enable the generation of ACCEPT for new connections */ /* re-enable the generation of ACCEPT for new connections */
state->listen_bfd.when |= BSC_FD_READ; state->listen_bfd.when |= BSC_FD_READ;
/* release all exisitng calls */ /* release all existing calls */
gsm0408_clear_all_trans(state->net, TRANS_CC); gsm0408_clear_all_trans(state->net, TRANS_CC);
/* flush the queue */ /* flush the queue */

View File

@ -1323,7 +1323,7 @@ static void msc_a_up_classmark_update(struct msc_a *msc_a, const struct osmo_gsm
dst = &vsub->classmark; dst = &vsub->classmark;
} }
LOG_MSC_A(msc_a, LOGL_DEBUG, "A5 capabilities recived from Classmark Update: %s\n", LOG_MSC_A(msc_a, LOGL_DEBUG, "A5 capabilities received from Classmark Update: %s\n",
osmo_gsm48_classmark_a5_name(classmark)); osmo_gsm48_classmark_a5_name(classmark));
osmo_gsm48_classmark_update(dst, classmark); osmo_gsm48_classmark_update(dst, classmark);
@ -1643,7 +1643,7 @@ static int msc_a_start_assignment(struct msc_a *msc_a, struct gsm_trans *cc_tran
MSC_EV_CALL_LEG_RTP_COMPLETE); MSC_EV_CALL_LEG_RTP_COMPLETE);
OSMO_ASSERT(cl); OSMO_ASSERT(cl);
/* HACK: We put the connection in loopback mode at the beginnig to /* HACK: We put the connection in loopback mode at the beginning to
* trick the hNodeB into doing the IuUP negotiation with itself. * trick the hNodeB into doing the IuUP negotiation with itself.
* This is a hack we need because osmo-mgw does not support IuUP yet, see OS#2459. */ * This is a hack we need because osmo-mgw does not support IuUP yet, see OS#2459. */
if (msc_a->c.ran->type == OSMO_RAT_UTRAN_IU) if (msc_a->c.ran->type == OSMO_RAT_UTRAN_IU)

View File

@ -1929,7 +1929,7 @@ DEFUN(cfg_hlr_ipa_name,
{ {
if (vty->type != VTY_FILE) { if (vty->type != VTY_FILE) {
vty_out(vty, "The IPA name cannot be changed at run-time; " vty_out(vty, "The IPA name cannot be changed at run-time; "
"It can only be set in the configuraton file.%s", VTY_NEWLINE); "It can only be set in the configuration file.%s", VTY_NEWLINE);
return CMD_WARNING; return CMD_WARNING;
} }

View File

@ -514,7 +514,7 @@ static int ran_a_decode_handover_request(struct ran_dec *ran_dec, const struct m
int i; int i;
if (gsm0808_dec_encrypt_info(&encr_info, ie_encryption_information->val, ie_encryption_information->len) if (gsm0808_dec_encrypt_info(&encr_info, ie_encryption_information->val, ie_encryption_information->len)
<= 0) { <= 0) {
LOG_RAN_A_DEC_MSG(LOGL_ERROR, "Failed to decode Encryption Informaiton IE\n"); LOG_RAN_A_DEC_MSG(LOGL_ERROR, "Failed to decode Encryption Information IE\n");
return -EINVAL; return -EINVAL;
} }
@ -524,7 +524,7 @@ static int ran_a_decode_handover_request(struct ran_dec *ran_dec, const struct m
} }
if (encr_info.key_len > sizeof(geran_encr.key)) { if (encr_info.key_len > sizeof(geran_encr.key)) {
LOG_RAN_A_DEC_MSG(LOGL_ERROR, "Failed to decode Encryption Informaiton IE:" LOG_RAN_A_DEC_MSG(LOGL_ERROR, "Failed to decode Encryption Information IE:"
" encryption key is too long: %u\n", geran_encr.key_len); " encryption key is too long: %u\n", geran_encr.key_len);
return -EINVAL; return -EINVAL;
} }

View File

@ -650,7 +650,7 @@ int ran_peers_down_paging(struct sccp_ran_inst *sri, enum CELL_IDENT page_where,
switch (page_where) { switch (page_where) {
case CELL_IDENT_NO_CELL: case CELL_IDENT_NO_CELL:
LOG_SCCP_RAN_CAT(sri, DPAG, LOGL_ERROR, "Asked to page on NO_CELL, wich doesn't make sense.\n"); LOG_SCCP_RAN_CAT(sri, DPAG, LOGL_ERROR, "Asked to page on NO_CELL, which doesn't make sense.\n");
return 0; return 0;
case CELL_IDENT_UTRAN_PLMN_LAC_RNC: case CELL_IDENT_UTRAN_PLMN_LAC_RNC:

View File

@ -336,7 +336,7 @@ const char *subscr_info(const char *imsi)
} }
/* Comfortable status message generator that also generates some basic /* Comfortable status message generator that also generates some basic
* context-dependent dependand log output */ * context-dependent log output */
static int sgs_tx_status(struct sgs_connection *sgc, const char *imsi, enum sgsap_sgs_cause cause, struct msgb *msg, static int sgs_tx_status(struct sgs_connection *sgc, const char *imsi, enum sgsap_sgs_cause cause, struct msgb *msg,
int sgsap_iei) int sgsap_iei)
{ {
@ -352,7 +352,7 @@ static int sgs_tx_status(struct sgs_connection *sgc, const char *imsi, enum sgsa
LOGSGC_VSUB(sgc, subscr_info(imsi), LOGL_ERROR, "Rx %s with invalid mandatory %s IEI!\n", LOGSGC_VSUB(sgc, subscr_info(imsi), LOGL_ERROR, "Rx %s with invalid mandatory %s IEI!\n",
sgsap_msg_type_name(msg->data[0]), sgsap_iei_name(sgsap_iei)); sgsap_msg_type_name(msg->data[0]), sgsap_iei_name(sgsap_iei));
} else if (cause == SGSAP_SGS_CAUSE_COND_IE_ERROR) { } else if (cause == SGSAP_SGS_CAUSE_COND_IE_ERROR) {
LOGSGC_VSUB(sgc, subscr_info(imsi), LOGL_ERROR, "Rx %s with errornous conditional %s IEI!\n", LOGSGC_VSUB(sgc, subscr_info(imsi), LOGL_ERROR, "Rx %s with erroneous conditional %s IEI!\n",
sgsap_msg_type_name(msg->data[0]), sgsap_iei_name(sgsap_iei)); sgsap_msg_type_name(msg->data[0]), sgsap_iei_name(sgsap_iei));
} else { } else {
LOGSGC_VSUB(sgc, subscr_info(imsi), LOGL_ERROR, "Rx %s failed with cause %s at %s IEI!\n", LOGSGC_VSUB(sgc, subscr_info(imsi), LOGL_ERROR, "Rx %s failed with cause %s at %s IEI!\n",
@ -860,7 +860,7 @@ static int sgs_rx_ul_ud(struct sgs_connection *sgc, struct msgb *msg, const stru
vlr_subscr_put(vsub, __func__); vlr_subscr_put(vsub, __func__);
/* If we do not find an existing connection and allocating a new one /* If we do not find an existing connection and allocating a new one
* faild, give up and return status. */ * failed, give up and return status. */
if (!msc_a) if (!msc_a)
return sgs_tx_status(sgc, imsi, SGSAP_SGS_CAUSE_MSG_INCOMP_STATE, msg, 0); return sgs_tx_status(sgc, imsi, SGSAP_SGS_CAUSE_MSG_INCOMP_STATE, msg, 0);
@ -1278,7 +1278,7 @@ void sgs_iface_tx_serv_abrt(struct vlr_subscr *vsub)
sgs_tx(mme->conn, msg_sgs); sgs_tx(mme->conn, msg_sgs);
} }
/*! initalize SGs new interface /*! initialize SGs new interface
* \param[in] ctx talloc context * \param[in] ctx talloc context
* \param[in] network associated gsm network * \param[in] network associated gsm network
* \returns returns allocated sgs_stae, NULL in case of error. */ * \returns returns allocated sgs_stae, NULL in case of error. */

View File

@ -319,7 +319,7 @@ static void alert_all_esme(struct smsc *smsc, struct vlr_subscr *vsub,
llist_for_each_entry(esme, &smsc->esme_list, list) { llist_for_each_entry(esme, &smsc->esme_list, list) {
/* we currently send an alert notification to each ESME that is /* we currently send an alert notification to each ESME that is
* connected, and do not require a (non-existant) delivery * connected, and do not require a (non-existent) delivery
* pending flag to be set before. */ * pending flag to be set before. */
if (!esme->bind_flags) { if (!esme->bind_flags) {
LOGP(DSMPP, LOGL_DEBUG, LOGP(DSMPP, LOGL_DEBUG,
@ -367,7 +367,7 @@ static int smpp_sms_cb(unsigned int subsys, unsigned int signal,
* to the ESME */ * to the ESME */
case S_SMS_UNKNOWN_ERROR: case S_SMS_UNKNOWN_ERROR:
if (sms->smpp.transaction_mode) { if (sms->smpp.transaction_mode) {
/* Send back the SUBMIT-SM response with apropriate error */ /* Send back the SUBMIT-SM response with appropriate error */
LOGP(DLSMS, LOGL_INFO, "SMPP SUBMIT-SM: Error\n"); LOGP(DLSMS, LOGL_INFO, "SMPP SUBMIT-SM: Error\n");
rc = smpp_tx_submit_r(sms->smpp.esme, rc = smpp_tx_submit_r(sms->smpp.esme,
sms->smpp.sequence_nr, sms->smpp.sequence_nr,

View File

@ -1,4 +1,4 @@
/* SMS queue to continously attempt to deliver SMS */ /* SMS queue to continuously attempt to deliver SMS */
/* /*
* (C) 2010 by Holger Hans Peter Freyther <zecke@selfish.org> * (C) 2010 by Holger Hans Peter Freyther <zecke@selfish.org>
* All Rights Reserved * All Rights Reserved

View File

@ -360,7 +360,7 @@ int vlr_subscr_alloc_tmsi(struct vlr_subscr *vsub)
} }
/* Find subscriber by IMSI, or create new subscriber if not found. /* Find subscriber by IMSI, or create new subscriber if not found.
* \param[in] vlr VLR instace. * \param[in] vlr VLR instance.
* \param[in] imsi IMSI string. * \param[in] imsi IMSI string.
* \param[out] created if non-NULL, returns whether a new entry was created. */ * \param[out] created if non-NULL, returns whether a new entry was created. */
struct vlr_subscr *_vlr_subscr_find_or_create_by_imsi(struct vlr_instance *vlr, struct vlr_subscr *_vlr_subscr_find_or_create_by_imsi(struct vlr_instance *vlr,
@ -390,7 +390,7 @@ struct vlr_subscr *_vlr_subscr_find_or_create_by_imsi(struct vlr_instance *vlr,
} }
/* Find subscriber by TMSI, or create new subscriber if not found. /* Find subscriber by TMSI, or create new subscriber if not found.
* \param[in] vlr VLR instace. * \param[in] vlr VLR instance.
* \param[in] tmsi TMSI. * \param[in] tmsi TMSI.
* \param[out] created if non-NULL, returns whether a new entry was created. */ * \param[out] created if non-NULL, returns whether a new entry was created. */
struct vlr_subscr *_vlr_subscr_find_or_create_by_tmsi(struct vlr_instance *vlr, struct vlr_subscr *_vlr_subscr_find_or_create_by_tmsi(struct vlr_instance *vlr,
@ -730,7 +730,7 @@ void vlr_subscr_update_tuples(struct vlr_subscr *vsub,
if (key_seq >= ARRAY_SIZE(vsub->auth_tuples)) { if (key_seq >= ARRAY_SIZE(vsub->auth_tuples)) {
LOGVSUBP(LOGL_NOTICE, vsub, LOGVSUBP(LOGL_NOTICE, vsub,
"Skipping auth tuple wih invalid cksn %zu\n", "Skipping auth tuple with invalid cksn %zu\n",
key_seq); key_seq);
continue; continue;
} }

View File

@ -1,4 +1,4 @@
/* Osmocom Visitor Location Register (VLR) Autentication FSM */ /* Osmocom Visitor Location Register (VLR) Authentication FSM */
/* (C) 2016 by Harald Welte <laforge@gnumonks.org> /* (C) 2016 by Harald Welte <laforge@gnumonks.org>
* *

View File

@ -688,7 +688,7 @@ struct lu_fsm_priv {
static bool lai_in_this_vlr(struct vlr_instance *vlr, static bool lai_in_this_vlr(struct vlr_instance *vlr,
const struct osmo_location_area_id *lai) const struct osmo_location_area_id *lai)
{ {
/* TODO: VLR needs to keep a locally configued list of LAIs */ /* TODO: VLR needs to keep a locally configured list of LAIs */
return true; return true;
} }

View File

@ -44,7 +44,7 @@ const struct value_string sgs_state_counter_names[] = {
}; };
/* Reset all SGs-Associations back to zero. /* Reset all SGs-Associations back to zero.
* \param[in] vlr VLR instace. */ * \param[in] vlr VLR instance. */
void vlr_sgs_reset(struct vlr_instance *vlr) void vlr_sgs_reset(struct vlr_instance *vlr)
{ {
struct vlr_subscr *vsub; struct vlr_subscr *vsub;
@ -59,11 +59,11 @@ void vlr_sgs_reset(struct vlr_instance *vlr)
} }
/*! Perform an SGs location update. /*! Perform an SGs location update.
* \param[in] vlr VLR instace. * \param[in] vlr VLR instance.
* \param[in] cfg SGs interface configuration parameters. * \param[in] cfg SGs interface configuration parameters.
* \param[in] response_cb calback function that is called when LU is done. * \param[in] response_cb callback function that is called when LU is done.
* \param[in] paging_cb calback function that is called when LU needs to page. * \param[in] paging_cb callback function that is called when LU needs to page.
* \param[in] mminfo_cb calback function that is called to provide MM info to the UE. * \param[in] mminfo_cb callback function that is called to provide MM info to the UE.
* \param[in] mme_name fqdn of the requesting MME (mme-name). * \param[in] mme_name fqdn of the requesting MME (mme-name).
* \param[in] type location update type (normal or IMSI attach). * \param[in] type location update type (normal or IMSI attach).
* \param[in] imsi mobile identity (IMSI). * \param[in] imsi mobile identity (IMSI).
@ -299,7 +299,7 @@ static void Ts5_timeout_cb(void *arg)
{ {
struct vlr_subscr *vsub = arg; struct vlr_subscr *vsub = arg;
/* 3GPP TS 29.118 does not specify a specif action that has to happen /* 3GPP TS 29.118 does not specify a specific action that has to happen
* in case Ts5 times out. The timeout just indicates that the paging * in case Ts5 times out. The timeout just indicates that the paging
* failed. Other actions may check the status of Ts5 to see if a paging * failed. Other actions may check the status of Ts5 to see if a paging
* is still ongoing or not. */ * is still ongoing or not. */
@ -327,7 +327,7 @@ void vlr_sgs_pag(struct vlr_subscr *vsub, enum sgsap_service_ind serv_ind)
/* Note: 3GPP TS 29.118, chapter 4.2.2 mentions paging in the FSM /* Note: 3GPP TS 29.118, chapter 4.2.2 mentions paging in the FSM
* diagram, but paging never causes a state transition except when * diagram, but paging never causes a state transition except when
* an explicit failure is indicated (MME actively rejects paging). * an explicit failure is indicated (MME actively rejects paging).
* Apparantly it is also possible that an LU happens while the paging * Apparently it is also possible that an LU happens while the paging
* is still ongoing and Ts5 is running. (chapter 5.1.2.3). This means * is still ongoing and Ts5 is running. (chapter 5.1.2.3). This means
* that the paging procedure is intended to run in parallel to the * that the paging procedure is intended to run in parallel to the
* SGs FSM and given that the benaviour around Ts5 must be implemented * SGs FSM and given that the benaviour around Ts5 must be implemented

View File

@ -54,7 +54,7 @@ static void to_null(struct osmo_fsm_inst *fi)
struct vlr_subscr *vsub = fi->priv; struct vlr_subscr *vsub = fi->priv;
osmo_fsm_inst_state_chg(fi, SGS_UE_ST_NULL, 0, 0); osmo_fsm_inst_state_chg(fi, SGS_UE_ST_NULL, 0, 0);
/* Note: This is only relevent for cases where we are in the middle /* Note: This is only relevant for cases where we are in the middle
* of an TMSI reallocation procedure. Should a failure of some sort * of an TMSI reallocation procedure. Should a failure of some sort
* put us to NULL state, we have to free the pending TMSI */ * put us to NULL state, we have to free the pending TMSI */
vsub->tmsi_new = GSM_RESERVED_TMSI; vsub->tmsi_new = GSM_RESERVED_TMSI;
@ -156,7 +156,7 @@ static void sgs_ue_fsm_lau_present(struct osmo_fsm_inst *fi, uint32_t event, voi
/* Check if we expect a TMSI REALLOCATION COMPLETE message from the MME /* Check if we expect a TMSI REALLOCATION COMPLETE message from the MME
* by checking the tmsi_new flag. If this flag is not GSM_RESERVED_TMSI * by checking the tmsi_new flag. If this flag is not GSM_RESERVED_TMSI
* we know that we have a TMSI pending and need to wait for the MME * we know that we have a TMSI pending and need to wait for the MME
* to acknowlege first */ * to acknowledge first */
if (vsub->tmsi_new != GSM_RESERVED_TMSI) { if (vsub->tmsi_new != GSM_RESERVED_TMSI) {
osmo_fsm_inst_state_chg(fi, SGS_UE_ST_ASSOCIATED, vsub->sgs.cfg.timer[SGS_STATE_TS6_2], osmo_fsm_inst_state_chg(fi, SGS_UE_ST_ASSOCIATED, vsub->sgs.cfg.timer[SGS_STATE_TS6_2],
SGS_STATE_TS6_2); SGS_STATE_TS6_2);
@ -355,7 +355,7 @@ static struct osmo_fsm sgs_ue_fsm = {
.event_names = sgs_ue_fsm_event_names, .event_names = sgs_ue_fsm_event_names,
}; };
/*! Initalize/Register SGs FSM in osmo-fsm subsystem */ /*! Initialize/Register SGs FSM in osmo-fsm subsystem */
void vlr_sgs_fsm_init(void) void vlr_sgs_fsm_init(void)
{ {
if (osmo_fsm_find_by_name(sgs_ue_fsm.name) != &sgs_ue_fsm) if (osmo_fsm_find_by_name(sgs_ue_fsm.name) != &sgs_ue_fsm)

View File

@ -1267,7 +1267,7 @@ static void test_a5_3_supported()
} }
/* During CM Service Request or Paging Response we already have Classmark 2 that indicates A5/3 /* During CM Service Request or Paging Response we already have Classmark 2 that indicates A5/3
* availablity. Here, in a hacky way remove the knowledge of Classmark 2 to tickle a code path where * availability. Here, in a hacky way remove the knowledge of Classmark 2 to tickle a code path where
* proc_arq_fsm needs a Classmark Update during Ciphering. Shouldn't happen in reality though. */ * proc_arq_fsm needs a Classmark Update during Ciphering. Shouldn't happen in reality though. */
static void test_cm_service_needs_classmark_update() static void test_cm_service_needs_classmark_update()
{ {

View File

@ -2995,7 +2995,7 @@ DREF msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: - r
lu_result_sent == 0 lu_result_sent == 0
- BSC sends back a BSSMAP Classmark Update, that triggers the Ciphering Mode Command in A5/3 - BSC sends back a BSSMAP Classmark Update, that triggers the Ciphering Mode Command in A5/3
DBSSAP msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: RAN decode: CLASSMARK_UPDATE DBSSAP msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: RAN decode: CLASSMARK_UPDATE
DBSSAP msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: A5 capabilities recived from Classmark Update: no-cm1 no-cm2 no-cm3 DBSSAP msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: A5 capabilities received from Classmark Update: no-cm1 no-cm2 no-cm3
DMSC msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: Received Event MSC_A_EV_CLASSMARK_UPDATE DMSC msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: Received Event MSC_A_EV_CLASSMARK_UPDATE
DMSC msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: state_chg to MSC_A_ST_AUTH_CIPH DMSC msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: state_chg to MSC_A_ST_AUTH_CIPH
DMSC msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_AUTH_CIPH}: RAN encode: CIPHER_MODE_COMMAND on GERAN-A DMSC msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_AUTH_CIPH}: RAN encode: CIPHER_MODE_COMMAND on GERAN-A
@ -3639,7 +3639,7 @@ DREF msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: - r
lu_result_sent == 0 lu_result_sent == 0
- BSC sends back a BSSMAP Classmark Update, that triggers the Ciphering Mode Command in A5/3 - BSC sends back a BSSMAP Classmark Update, that triggers the Ciphering Mode Command in A5/3
DBSSAP msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: RAN decode: CLASSMARK_UPDATE DBSSAP msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: RAN decode: CLASSMARK_UPDATE
DBSSAP msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: A5 capabilities recived from Classmark Update: no-cm1 no-cm2 no-cm3 DBSSAP msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: A5 capabilities received from Classmark Update: no-cm1 no-cm2 no-cm3
DMSC msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: Received Event MSC_A_EV_CLASSMARK_UPDATE DMSC msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: Received Event MSC_A_EV_CLASSMARK_UPDATE
DMSC msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: state_chg to MSC_A_ST_AUTH_CIPH DMSC msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: state_chg to MSC_A_ST_AUTH_CIPH
DMSC msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_AUTH_CIPH}: RAN encode: CIPHER_MODE_COMMAND on GERAN-A DMSC msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_AUTH_CIPH}: RAN encode: CIPHER_MODE_COMMAND on GERAN-A
@ -3990,7 +3990,7 @@ DVLR VLR_Authenticate(IMSI-901700000004620:MSISDN-42342:GERAN-A:PAGING_RESP){VLR
DREF msc_a(IMSI-901700000004620:MSISDN-42342:GERAN-A:PAGING_RESP){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: - rx_from_ms: now used by 1 (paging-response) DREF msc_a(IMSI-901700000004620:MSISDN-42342:GERAN-A:PAGING_RESP){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: - rx_from_ms: now used by 1 (paging-response)
- BSC sends back a BSSMAP Classmark Update, that triggers the Ciphering Mode Command in A5/3 - BSC sends back a BSSMAP Classmark Update, that triggers the Ciphering Mode Command in A5/3
DBSSAP msc_a(IMSI-901700000004620:MSISDN-42342:GERAN-A:PAGING_RESP){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: RAN decode: CLASSMARK_UPDATE DBSSAP msc_a(IMSI-901700000004620:MSISDN-42342:GERAN-A:PAGING_RESP){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: RAN decode: CLASSMARK_UPDATE
DBSSAP msc_a(IMSI-901700000004620:MSISDN-42342:GERAN-A:PAGING_RESP){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: A5 capabilities recived from Classmark Update: no-cm1 no-cm2 no-cm3 DBSSAP msc_a(IMSI-901700000004620:MSISDN-42342:GERAN-A:PAGING_RESP){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: A5 capabilities received from Classmark Update: no-cm1 no-cm2 no-cm3
DMSC msc_a(IMSI-901700000004620:MSISDN-42342:GERAN-A:PAGING_RESP){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: Received Event MSC_A_EV_CLASSMARK_UPDATE DMSC msc_a(IMSI-901700000004620:MSISDN-42342:GERAN-A:PAGING_RESP){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: Received Event MSC_A_EV_CLASSMARK_UPDATE
DMSC msc_a(IMSI-901700000004620:MSISDN-42342:GERAN-A:PAGING_RESP){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: state_chg to MSC_A_ST_AUTH_CIPH DMSC msc_a(IMSI-901700000004620:MSISDN-42342:GERAN-A:PAGING_RESP){MSC_A_ST_WAIT_CLASSMARK_UPDATE}: state_chg to MSC_A_ST_AUTH_CIPH
DMSC msc_a(IMSI-901700000004620:MSISDN-42342:GERAN-A:PAGING_RESP){MSC_A_ST_AUTH_CIPH}: RAN encode: CIPHER_MODE_COMMAND on GERAN-A DMSC msc_a(IMSI-901700000004620:MSISDN-42342:GERAN-A:PAGING_RESP){MSC_A_ST_AUTH_CIPH}: RAN encode: CIPHER_MODE_COMMAND on GERAN-A