| 237 | } |
| 238 | |
| 239 | int b2be_db_insert(b2b_dlg_t* dlg, int type) |
| 240 | { |
| 241 | dlg_leg_t* leg; |
| 242 | int cols_no; |
| 243 | |
| 244 | qvals[0].val.int_val = type; |
| 245 | qvals[1].val.str_val = dlg->tag[0]; |
| 246 | qvals[2].val.str_val = dlg->tag[1]; |
| 247 | qvals[3].val.str_val = dlg->callid; |
| 248 | qvals[4].val.str_val = dlg->ruri; |
| 249 | qvals[5].val.str_val = dlg->from_uri; |
| 250 | qvals[6].val.str_val = dlg->from_dname; |
| 251 | qvals[7].val.str_val = dlg->to_uri; |
| 252 | qvals[8].val.str_val = dlg->to_dname; |
| 253 | qvals[9].val.str_val = dlg->route_set[0]; |
| 254 | qvals[10].val.str_val= dlg->route_set[1]; |
| 255 | if(dlg->send_sock) |
| 256 | qvals[11].val.str_val= dlg->send_sock->sock_str; |
| 257 | else |
| 258 | { |
| 259 | qvals[11].val.str_val.s = 0; |
| 260 | qvals[11].val.str_val.len = 0; |
| 261 | } |
| 262 | qvals[12].val.str_val = dlg->logic_key; |
| 263 | qvals[13].val.str_val= dlg->mod_name; |
| 264 | |
| 265 | if (!dlg->storage.len) { |
| 266 | VAL_NULL(qvals+14) = 1; |
| 267 | } else { |
| 268 | VAL_NULL(qvals+14) = 0; |
| 269 | VAL_BLOB(qvals+14) = dlg->storage; |
| 270 | } |
| 271 | |
| 272 | qvals[15].val.int_val = dlg->state; |
| 273 | qvals[16].val.int_val = dlg->cseq[0]; |
| 274 | qvals[17].val.int_val = dlg->cseq[1]; |
| 275 | qvals[18].val.int_val = dlg->last_method; |
| 276 | qvals[19].val.int_val = dlg->last_reply_code; |
| 277 | qvals[20].val.int_val = dlg->last_invite_cseq; |
| 278 | qvals[21].val.str_val = dlg->contact[0]; |
| 279 | qvals[22].val.str_val = dlg->contact[1]; |
| 280 | cols_no = 23; |
| 281 | |
| 282 | |
| 283 | leg = dlg->legs; |
| 284 | if(leg) /* there can only be one leg as we do not deal with dialogs in early state */ |
| 285 | { |
| 286 | qvals[23].val.str_val= leg->tag; |
| 287 | qvals[24].val.int_val= leg->cseq; |
| 288 | qvals[25].val.str_val= leg->contact; |
| 289 | qvals[26].val.str_val= leg->route_set; |
| 290 | cols_no = 27; |
| 291 | } |
| 292 | |
| 293 | if (b2be_cdb_url.s) { |
| 294 | if (b2be_cdb_insert(type, dlg, cols_no)) |
| 295 | return -1; |
| 296 | } else { |
no test coverage detected