/*************************************************************************** * Sends the TCP SYN probe packet. * * Step 1: format the packet * Step 2: send it in a portable manner ***************************************************************************/ void rawsock_send_probe( struct Adapter *adapter, unsigned ip_them, unsigned port_them, unsigned ip_me, unsigned port_me, unsigned seqno, unsigned flush, struct TemplateSet *tmplset) { /* * Construct the destination packet */ template_set_target(tmplset, ip_them, port_them, ip_me, port_me, seqno); if (tmplset->length < 60) tmplset->length = 60; /* * Send it */ rawsock_send_packet(adapter, tmplset->px, tmplset->length, flush); }
/*************************************************************************** * Sends the TCP SYN probe packet. * * Step 1: format the packet * Step 2: send it in a portable manner ***************************************************************************/ void rawsock_send_probe( struct Adapter *adapter, unsigned ip_them, unsigned port_them, unsigned ip_me, unsigned port_me, unsigned seqno, unsigned flush, struct TemplateSet *tmplset) { unsigned char px[2048]; size_t packet_length; /* * Construct the destination packet */ template_set_target(tmplset, ip_them, port_them, ip_me, port_me, seqno, px, sizeof(px), &packet_length); /* * Send it */ rawsock_send_packet(adapter, px, (unsigned)packet_length, flush); }