Hi, I guess what you are describing is the same as this bug report: https://sourceforge.net/tracker/?func=detail&aid=2941492&group_id=232389&atid=1086410
Am I right ? Regards, Bogdan liuf wrote: > I'm sorry. My real question is about where to set dialog pointer to the new > transaction of sequential request, so that opensips can retrieve the correct > dialog pointer in the correspond reply. > > My actions as below, please help me check: > > 1. I used fetch_dlg_value function in onreply_route, when opensips received > 100/200 reply of INVITE, I can get dialog stored value, but in 200 reply of > BYE, I can't get any data. > > 2. First, I found opensips had not get dialog pointer in w_fetch_dlg_value > function. > > 3. In get_current_dialog function, if 200 reply, ONREPLY_ROUTE, > trans->dialog_ctx will be return. > > 4. I found dialog_ctx seem only can be set in function dlg_onreq when > opensips received BYE. > > 5. According my addtion debug info, I found when opensips received BYE, > dlg_onreq will be exec. > > 6. I guess when opensips received sequential request (BYE), it will create > new transaction, then set current dialog pointer to this new transaction in > dlg_onreq function. Then when reply of these requests (200) be received, > current dialog pointer can be get via get_current_dialog function. > > 7. So I consider in function dlg_onreq, move t->dialog_ctx = > (void*)current_dlg_pointer; to the position that before "if ( > current_dlg_pointer->flags & DLG_FLAG_ISINIT )". > > =========================================================== > void dlg_onreq(struct cell* t, int type, struct tmcb_params *param) > { > /* is the dialog already created? */ > if (current_dlg_pointer!=NULL) { > > t->dialog_ctx = (void*)current_dlg_pointer; > > /* new, un-initialized dialog ? */ > if ( current_dlg_pointer->flags & DLG_FLAG_ISINIT ) > return; > > /* dialog was previously created by create_dialog() > -> just do the last settings */ > run_create_callbacks( current_dlg_pointer, param->req); > .......... > =========================================================== > -- Bogdan-Andrei Iancu www.voice-system.ro _______________________________________________ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users