Skip to content

Commit

Permalink
topos_redis: store and load local side contacts for branch
Browse files Browse the repository at this point in the history
(cherry picked from commit 98a9936)
  • Loading branch information
miconda committed Jan 19, 2018
1 parent 171e3b9 commit 5a03a7a
Showing 1 changed file with 11 additions and 0 deletions.
11 changes: 11 additions & 0 deletions src/modules/topos_redis/topos_redis_storage.c
Expand Up @@ -472,6 +472,11 @@ int tps_redis_insert_branch(tps_data_t *td)
TPS_REDIS_SET_ARGS(&td->s_method, argc, &tt_key_s_method, argv, argvlen);
TPS_REDIS_SET_ARGS(&td->s_cseq, argc, &tt_key_s_cseq, argv, argvlen);

TPS_REDIS_SET_ARGS(&td->a_contact, argc, &tt_key_a_contact, argv, argvlen);
TPS_REDIS_SET_ARGS(&td->b_contact, argc, &tt_key_b_contact, argv, argvlen);
TPS_REDIS_SET_ARGS(&td->as_contact, argc, &tt_key_as_contact, argv, argvlen);
TPS_REDIS_SET_ARGS(&td->bs_contact, argc, &tt_key_bs_contact, argv, argvlen);

rrpl = _tps_redis_api.exec_argv(rsrv, argc, (const char **)argv, argvlen);
if(rrpl==NULL) {
LM_ERR("failed to execute redis command\n");
Expand Down Expand Up @@ -858,6 +863,12 @@ int tps_redis_load_branch(sip_msg_t *msg, tps_data_t *md, tps_data_t *sd,
} else if(skey.len==tt_key_b_contact.len
&& strncmp(skey.s, tt_key_b_contact.s, skey.len)==0) {
TPS_REDIS_DATA_APPEND(sd, &skey, &sval, &sd->b_contact);
} else if(skey.len==tt_key_as_contact.len
&& strncmp(skey.s, tt_key_as_contact.s, skey.len)==0) {
TPS_REDIS_DATA_APPEND(sd, &skey, &sval, &sd->as_contact);
} else if(skey.len==tt_key_bs_contact.len
&& strncmp(skey.s, tt_key_bs_contact.s, skey.len)==0) {
TPS_REDIS_DATA_APPEND(sd, &skey, &sval, &sd->bs_contact);
} else {
LM_WARN("unknow key[%.*s]\n", skey.len, skey.s);
}
Expand Down

0 comments on commit 5a03a7a

Please sign in to comment.