typedef struct {
  u_short	ipSrc;
  u_short	ipDst;
  u_short	sport;
  u_short	dport;
} IdType;  

typedef struct {
  u_char 	inPort;
  u_char	outPort;
  u_char	prot;
  u_char	flags;
  u_char	type;
  IdType	id;
  u_short	len;
  u_short	queueCnt;
  u_long	queueLen;
  u_long	time;
} PktType;

#define PKT_LEN_ARRAY 1024  /* must be power of 2 */

/* Globals
   -------*/
extern PktType		PktArray[2][1000];
extern PktType		*PktArrayEnd[2];
extern int		PktArrayIndx;
extern PktType		*CurPkt;
extern PktType		*MaxCntPkt;
extern PktType		*MaxLenPkt;
extern int		PktIndx[2];
extern PktType		*PktSavedArray[1000];
extern int		PktSavedArrayIndx;
extern int		PktLenArray[PKT_LEN_ARRAY];
extern int		PktLenArrayBeg;
extern int		PktLenArrayEnd;
extern int		PktLenArraySize;
extern int		PktQueueCnt;
extern int		PktQueueLen;
extern int		PktQueueDropCntArg;	/* arg */
extern int		PktTimeBegArg;		/* arg */
extern int		PktTimeEndArg;		/* arg */
extern int		PktTimeNext;
extern int		PktTimeIncArg;		/* arg */
extern int		PktMaxQueueCntArg;
extern int		PktMaxQueueLenArg;


/* Functions
   ---------*/
void	pktInit(int, char **);
void 	pktTrace(int);
void 	pktPrint(void);

