nat: Keep the state (CRCX,MDCX,DLCX) of the operation..
This will allow to have additional debug information and to use the state inside the forwarding code.
This commit is contained in:
parent
b84b5f61ac
commit
5b2726e6b5
|
@ -121,6 +121,8 @@ struct bsc_config {
|
|||
* BSCs point of view of endpoints
|
||||
*/
|
||||
struct bsc_endpoint {
|
||||
/* the operation that is carried out */
|
||||
int transaction_state;
|
||||
/* the pending transaction id */
|
||||
char *transaction_id;
|
||||
/* the bsc we are talking to */
|
||||
|
|
|
@ -94,6 +94,7 @@ static void bsc_mgcp_free_endpoint(struct bsc_nat *nat, int i)
|
|||
nat->bsc_endpoints[i].transaction_id = NULL;
|
||||
}
|
||||
|
||||
nat->bsc_endpoints[i].transaction_state = 0;
|
||||
nat->bsc_endpoints[i].bsc = NULL;
|
||||
}
|
||||
|
||||
|
@ -202,6 +203,7 @@ int bsc_mgcp_policy_cb(struct mgcp_config *cfg, int endpoint, int state, const c
|
|||
endpoint, bsc_endp->transaction_id);
|
||||
talloc_free(bsc_endp->transaction_id);
|
||||
bsc_endp->transaction_id = NULL;
|
||||
bsc_endp->transaction_state = 0;
|
||||
}
|
||||
bsc_endp->bsc = NULL;
|
||||
|
||||
|
@ -237,6 +239,7 @@ int bsc_mgcp_policy_cb(struct mgcp_config *cfg, int endpoint, int state, const c
|
|||
|
||||
|
||||
bsc_endp->transaction_id = talloc_strdup(nat, transaction_id);
|
||||
bsc_endp->transaction_state = state;
|
||||
bsc_endp->bsc = sccp->bsc;
|
||||
|
||||
/* we need to update some bits */
|
||||
|
@ -325,6 +328,7 @@ void bsc_mgcp_forward(struct bsc_connection *bsc, struct msgb *msg)
|
|||
/* free some stuff */
|
||||
talloc_free(bsc_endp->transaction_id);
|
||||
bsc_endp->transaction_id = NULL;
|
||||
bsc_endp->transaction_state = 0;
|
||||
|
||||
/*
|
||||
* rewrite the information. In case the endpoint was deleted
|
||||
|
|
Loading…
Reference in New Issue