diff -u -r --exclude=CVS gnokii-cvs/common/data/at-emulator.c gnokii-devel/common/data/at-emulator.c --- gnokii-cvs/common/data/at-emulator.c 2003-03-25 11:28:10.000000000 +0100 +++ gnokii-devel/common/data/at-emulator.c 2003-10-14 02:10:25.000000000 +0200 @@ -297,7 +297,6 @@ data.call_info->type = GN_CALL_NonDigitalData; data.call_info->send_number = GN_CALL_Default; CommandMode = false; - rlp_user_request_set(Conn_Req, true); if (gn_sm_functions(GN_OP_MakeCall, &data, sm) != GN_ERR_NONE) { CommandMode = true; dp_CallPassup(GN_CALL_RemoteHangup, NULL, NULL); diff -u -r --exclude=CVS gnokii-cvs/common/data/datapump.c gnokii-devel/common/data/datapump.c --- gnokii-cvs/common/data/datapump.c 2003-03-25 11:28:10.000000000 +0100 +++ gnokii-devel/common/data/datapump.c 2003-10-14 02:11:19.000000000 +0200 @@ -159,6 +159,7 @@ switch (CallStatus) { case GN_CALL_Established: if (CommandMode == false) gn_atem_modem_result(MR_CARRIER); + rlp_user_request_set(Conn_Req, true); connected = true; break; case GN_CALL_LocalHangup: diff -u -r --exclude=CVS gnokii-cvs/common/data/rlp-common.c gnokii-devel/common/data/rlp-common.c --- gnokii-cvs/common/data/rlp-common.c 2003-03-25 11:28:10.000000000 +0100 +++ gnokii-devel/common/data/rlp-common.c 2003-10-10 18:59:32.000000000 +0200 @@ -1371,7 +1371,7 @@ break; default: - if (T == RLP_Timeout1_Limit) { + if (T == RLP_Timeout1_Limit || T == 0) { Poll_xchg = _idle; if (SABM_Count > RLP_N2) NextState = RLP_S8; @@ -1388,7 +1388,7 @@ SABM_State = _wait; SABM_Count++; Poll_xchg = _wait; - T = 1; + RLP_SetTimer(&T); } else RLP_SendF96Frame(RLP_FT_U_NULL, false, false, 0, 0, NULL, false); }