void ShowPkt(struct PACKET *pkt, struct sockaddr_in *from)

{

            if (from!=NULL)

                        printf("received packet from %s from port %d\n",inet_ntoa(from->sin_addr),ntohs(from->sin_port));

            printf("packet: DestIP = %s\n",pkt->DestIP);

            printf("        DestPort = %d\n",pkt->DestPort);

            printf("        SourceIP = %s\n",pkt->SourceIP);

            printf("        SourcePort = %d\n",pkt->SourcePort);

            printf("        Flags = %d\n",pkt->flags);

            printf("        Seq Num = %d\n",pkt->SeqNum);

            printf("        Data = %c\n",pkt->Data);

            printf("        NumHops = %d\n\n",pkt->NumHops);

            if (pkt->NumHops>0)

                        printf("        visited:\n");

            for (int i=0; i<pkt->NumHops; i++)     

                        printf("              %s:%d\n",pkt->IPsVisited[i],pkt->PortsVisited[i]);

 

}