107 static unsigned short send_tid(
unsigned short tid);
122 pdu->
u.Invoke.con = 0;
123 pdu->
u.Invoke.gtr = 1;
124 pdu->
u.Invoke.ttr = 1;
125 pdu->
u.Invoke.rid = 0;
126 pdu->
u.Invoke.version = 0;
127 pdu->
u.Invoke.tid =
send_tid(machine->tid);
128 pdu->
u.Invoke.tidnew = machine->tidnew;
129 pdu->
u.Invoke.user_data =
131 pdu->
u.Invoke.class =
event->
u.TR_Invoke_Req.tcl;
132 pdu->
u.Invoke.uack =
event->
u.TR_Invoke_Req.up_flag;
135 dgram->
u.T_DUnitdata_Req.addr_tuple =
150 pdu->
u.Result.con = 0;
151 pdu->
u.Result.gtr = 1;
152 pdu->
u.Result.ttr = 1;
153 pdu->
u.Result.rid = 0;
154 pdu->
u.Result.tid =
send_tid(machine->tid);
155 pdu->
u.Result.user_data =
159 dgram->
u.T_DUnitdata_Req.addr_tuple =
174 gw_assert(machine->sar && machine->sar->data);
176 if (psn > machine->sar->nsegm)
179 ttr = psn == machine->sar->nsegm ? 1 : 0;
183 machine->sar->tr = 1;
189 pdu->
u.Result.con = 0;
190 pdu->
u.Result.gtr = gtr;
191 pdu->
u.Result.ttr = ttr;
192 pdu->
u.Result.rid = 0;
193 pdu->
u.Result.tid =
send_tid(machine->tid);
194 pdu->
u.Result.user_data = data;
197 pdu->
u.Segmented_result.con = 0;
198 pdu->
u.Segmented_result.gtr = gtr;
199 pdu->
u.Segmented_result.ttr = ttr;
200 pdu->
u.Segmented_result.rid = 0;
201 pdu->
u.Segmented_result.tid =
send_tid(machine->tid);
202 pdu->
u.Segmented_result.psn = psn;
203 pdu->
u.Segmented_result.user_data = data;
207 dgram->
u.T_DUnitdata_Req.addr_tuple =
230 pdu->
u.Abort.con = 0;
231 pdu->
u.Abort.abort_type = abort_type;
233 pdu->
u.Abort.abort_reason = abort_reason;
251 pdu->
u.Ack.tidverify = ack_type;
252 pdu->
u.Ack.rid = rid_flag;
267 unsigned char cpsn = psn;
271 pdu->
u.Ack.tidverify = ack_type;
WAPEvent * wtp_pack_sar_result(WTPRespMachine *machine, int psn)
WTP_PDU * wtp_pdu_create(int type)
void wtp_pdu_append_tpi(WTP_PDU *pdu, int type, Octstr *data)
gw_assert(wtls_machine->packet_to_send !=NULL)
static unsigned short send_tid(unsigned short tid)
void octstr_set_bits(Octstr *ostr, long bitpos, int numbits, unsigned long value)
void wtp_pack_set_rid(WAPEvent *dgram, long rid)
#define octstr_copy(ostr, from, len)
WAPAddrTuple * wap_addr_tuple_duplicate(WAPAddrTuple *tuple)
WAPEvent * wtp_pack_sar_ack(long ack_type, long tid, WAPAddrTuple *address, int psn)
WAPEvent * wtp_pack_result(WTPRespMachine *machine, WAPEvent *event)
#define octstr_duplicate(ostr)
#define wap_event_create(type)
WAPEvent * wtp_pack_ack(long ack_type, int rid_flag, long tid, WAPAddrTuple *address)
WAPEvent * wtp_pack_invoke(WTPInitMachine *machine, WAPEvent *event)
Octstr * wtp_pdu_pack(WTP_PDU *pdu)
WAPEvent * wtp_pack_abort(long abort_type, long abort_reason, long tid, WAPAddrTuple *address)
void wtp_pdu_destroy(WTP_PDU *pdu)
#define octstr_create_from_data(data, len)