--- ssp.c.old Thu Nov 15 15:56:12 2001 +++ ssp.c Thu Nov 15 15:56:41 2001 @@ -388,8 +388,8 @@ fails, it returns a negative value. -----------------------------------------------------------------------------------------------*/ static int handle_reg_msg(SSP_Grp *grp, SSP_Msg *msg) { - int ret = msg->msg_len; - + int ret = msg->msg_len; + DEBUG_enter(f_dbg, "handle_reg_msg"); if(Is_encrypt_mess_type(msg->msg_type)) { @@ -578,13 +578,14 @@ if(deliv_msg == DELIV_MSG) { /* deliver message in user's buffer */ ret = glb_2_usr(max_grps, num_grps, grps, ret, scat, msg->grps, msg->scat); + *msg_type = msg->msg_type; SSP_Msg_free(&msg); } else { ret = SSP_NOTHING_TO_DELIVER; if(deliv_msg == DONT_DELIV_AND_FREE_MSG) { SSP_Msg_free(&msg); - } + } } end: @@ -828,7 +829,7 @@ else if (SSP_Is_illegal_mess_type(m_type)) { ret = ILLEGAL_MESSAGE; } - else if (!(((grp = SSP_Con_getGrp(con, grp_name))) || Is_private_group(grp_name))) { + else if (!(grp = SSP_Con_getGrp(con, grp_name)) || Is_private_group(grp_name)) { ret = ILLEGAL_GROUP; } else { @@ -857,7 +858,7 @@ goto end; } m_type = SSP_ENCRYPT_MESS_TYPE; - serv &= ~ENCRYPT_MESS; + serv &= ~ENCRYPT_MESS; diff_size = new_size - org_size; } }