aboutsummaryrefslogtreecommitdiffstats
path: root/gtp/gtp.c
diff options
context:
space:
mode:
Diffstat (limited to 'gtp/gtp.c')
-rw-r--r--gtp/gtp.c38
1 files changed, 20 insertions, 18 deletions
diff --git a/gtp/gtp.c b/gtp/gtp.c
index 08a9d61..2a39934 100644
--- a/gtp/gtp.c
+++ b/gtp/gtp.c
@@ -305,19 +305,19 @@ static uint32_t get_tei(void *pack)
* requires the receiving GSN to send a response, with the same information
* as in the original response. For most messages this happens automatically:
*
- * Echo: Automatically dublicates the original response
+ * Echo: Automatically duplicates the original response
* Create pdp context: The SGSN may send create context request even if
- * a context allready exist (imsi+nsapi?). This means that the reply will
- automatically dublicate the original response. It might however have
+ * a context already exist (imsi+nsapi?). This means that the reply will
+ * automatically duplicate the original response. It might however have
* side effects in the application which is asked twice to validate
* the login.
- * Update pdp context: Automatically dublicates the original response???
+ * Update pdp context: Automatically duplicates the original response???
* Delete pdp context. Automatically in gtp0, but in gtp1 will generate
* a nonexist reply message.
*
* The correct solution will be to make a queue containing response messages.
* This queue should be checked whenever a request is received. If the
- * response is allready in the queue that response should be transmitted.
+ * response is already in the queue that response should be transmitted.
* It should be possible to find messages in this queue on the basis of
* the sequence number and peer GSN IP address (The sequense number is unique
* within each path). This need to be implemented by a hash table. Furthermore
@@ -614,7 +614,7 @@ int gtp_notification(struct gsn_t *gsn, int version,
return 0;
}
-int gtp_dublicate(struct gsn_t *gsn, int version,
+int gtp_duplicate(struct gsn_t *gsn, int version,
struct sockaddr_in *peer, uint16_t seq)
{
struct qmsg_t *qmsg;
@@ -873,8 +873,8 @@ int gtp_echo_ind(struct gsn_t *gsn, int version, struct sockaddr_in *peer,
int fd, void *pack, unsigned len)
{
- /* Check if it was a dublicate request */
- if (!gtp_dublicate(gsn, 0, peer, get_seq(pack)))
+ /* Check if it was a duplicate request */
+ if (!gtp_duplicate(gsn, 0, peer, get_seq(pack)))
return 0;
/* Send off reply to request */
@@ -1258,13 +1258,15 @@ int gtp_create_pdp_ind(struct gsn_t *gsn, int version,
uint8_t linked_nsapi = 0;
struct pdp_t *linked_pdp = NULL;
- if (!gtp_dublicate(gsn, version, peer, seq))
+ /* TODO describe what this is all about: */
+ if (!gtp_duplicate(gsn, version, peer, seq))
return 0;
pdp = &pdp_buf;
memset(pdp, 0, sizeof(struct pdp_t));
if (version == 0) {
+ /* TODO code dup: get_tid() */
uint64_t tid = be64toh(((union gtp_packet *)pack)->gtp0.h.tid);
pdp_set_imsi_nsapi(pdp, tid);
@@ -1511,7 +1513,7 @@ int gtp_create_pdp_ind(struct gsn_t *gsn, int version,
if (!pdp_getimsi(&pdp_old, pdp->imsi, pdp->nsapi)) {
/* Found old pdp with same tid. Now the voodoo begins! */
/* 09.60 / 29.060 allows create on existing context to "steal" */
- /* the context which was allready established */
+ /* the context which was already established */
/* We check that the APN, selection mode and MSISDN is the same */
DEBUGP(DLGTP, "gtp_create_pdp_ind: Old context found\n");
if ((pdp->apn_req.l == pdp_old->apn_req.l)
@@ -1953,9 +1955,9 @@ int gtp_update_pdp_ind(struct gsn_t *gsn, int version,
uint64_t imsi;
uint8_t nsapi;
- /* Is this a dublicate ? */
- if (!gtp_dublicate(gsn, version, peer, seq)) {
- return 0; /* We allready send of response once */
+ /* Is this a duplicate ? */
+ if (!gtp_duplicate(gsn, version, peer, seq)) {
+ return 0; /* We already sent of response once */
}
/* Decode information elements */
@@ -2085,7 +2087,7 @@ int gtp_update_pdp_ind(struct gsn_t *gsn, int version,
}
/* TEIC (conditional) */
- /* If TEIC is not included it means that we have allready received it */
+ /* If TEIC is not included it means that we have already received it */
/* TODO: From 29.060 it is not clear if TEI_C MUST be included for */
/* all updated contexts, or only for one of the linked contexts */
gtpie_gettv4(ie, GTPIE_TEI_C, 0, &pdp->teic_gn);
@@ -2424,9 +2426,9 @@ int gtp_delete_pdp_ind(struct gsn_t *gsn, int version,
int n;
int count = 0;
- /* Is this a dublicate ? */
- if (!gtp_dublicate(gsn, version, peer, seq)) {
- return 0; /* We allready send off response once */
+ /* Is this a duplicate ? */
+ if (!gtp_duplicate(gsn, version, peer, seq)) {
+ return 0; /* We already sent off response once */
}
/* Find the linked context in question */
@@ -2638,7 +2640,7 @@ int gtp_gpdu_ind(struct gsn_t *gsn, int version,
return 0;
}
-/* Receives GTP packet and sends off for further processing
+/* Receives GTP packet and sends off for further processing.
* Function will check the validity of the header. If the header
* is not valid the packet is either dropped or a version not
* supported is returned to the peer.