/*
 * This file contains some sample MSRP packets for testing purposes as
 * byte buffers. The buffers have been heavily annotated for
 * verification and analysis purposes.
 */

/* This is from a live capture; a device is sending a LeaveAll event */
unsigned char leave_all[] = {
	0x01, 0x80, 0xc2, 0x00, 0x00, 0x0e, /* Destination MAC */
	0xc0, 0x3f, 0x0e, 0x8c, 0xec, 0x44, /* Source MAC */
	0x22, 0xea,                         /* Ethertype */

	0x00,         /* Protocol Version */

	/* Message Start */
	0x01,         /* Attribute Type */
	0x19,         /* Attribute FirstValue Length */
	0x00, 0x1d,   /* Attribute ListLength */

	/* Vector Header */
	0x20, 0x00,
	/* FirstValue */
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
	0x00,

	0x00, 0x00,   /* EndMark */

	/* Message Start */
	0x02,         /* Attribute Type */
	0x22,         /* Attribute FirstValue Length */
	0x00, 0x26,   /* Attribute ListLength */

	/* Vector Header */
	0x20, 0x00,
	/* FirstValue */
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
	0x00, 0x00,

	0x00, 0x00,   /* EndMark */

	/* Message Start */
	0x03,         /* Attribute Type */
	0x08,         /* Attribute FirstValue Length */
	0x00, 0x0c,   /* Attribute ListLength */

	/* Vector Header */
	0x20, 0x00,
	/* FirstValue */
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

	0x00, 0x00,    /* EndMark */

	/* Message Start */
	0x04,          /* Attribute Type */
	0x04,          /* Attribute FirstValue Length */
	0x00, 0x08,    /* Attribute ListLength */

	/* Vector Header */
	0x20, 0x00,
	/* FirstValue */
	0x00, 0x00, 0x00, 0x00,

	0x00, 0x00,    /* EndMark */

	0x00, 0x00     /* EndMark */
};

/* This is from a live capture; it contains several messages with Mt
 * and JoinMt events for Talker Advertise, Listener, and Domain
 * VectorAttributes. */
unsigned char pkt2[] = {
	0x01, 0x80, 0xc2, 0x00, 0x00, 0x0e, /* Destination MAC */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x58, /* Source MAC */
	0x22, 0xea,                         /* Ethertype */

	0x00,         /* Protocol Version */

	/* Message Start */
	0x01,         /* Attribute Type */
	0x19,         /* Attribute FirstValue Length */
	0x00, 0xc4,   /* Attribute ListLength */

	/* Vector Header */
	0x00, 0x01,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x4d, 0x00, 0x00,
	0x91, 0xe0, 0xf0, 0x00, 0xb7, 0x1a, 0x00, 0x00,
	0x00, 0x38, 0x00, 0x01, 0x60, 0x00, 0x02, 0x1f,
	0xd8,
	/* ThreePackedEvents */
	0x90,

	/* Vector Header */
	0x00, 0x13,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x4d, 0x00, 0x03,
	0x91, 0xe0, 0xf0, 0x00, 0xb7, 0x1d, 0x00, 0x00,
	0x00, 0x38, 0x00, 0x01, 0x70, 0x00, 0x02, 0x1f,
	0xd8,
	/* ThreePackedEvents */
	0xac, 0xac, 0xac, 0xac, 0xac, 0xac, 0x90,

	/* Vector Header */
	0x00, 0x0d,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x58, 0x00, 0x01,
	0x91, 0xe0, 0xf0, 0x00, 0x88, 0x3d, 0x00, 0x00,
	0x00, 0x38, 0x00, 0x01, 0x70, 0x00, 0x00, 0x01,
	0xf4,
	/* ThreePackedEvents */
	0x81, 0x81, 0x81, 0x81, 0x6c,

	/* Vector Header */
	0x00, 0x13,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0xba, 0x00, 0x03,
	0x91, 0xe0, 0xf0, 0x00, 0x4c, 0x40, 0x00, 0x00,
	0x00, 0x38, 0x00, 0x01, 0x70, 0x00, 0x02, 0x1f,
	0xd8,
	/* ThreePackedEvents */
	0xac, 0xac, 0xac, 0xac, 0xac, 0xac, 0x90,

	/* Vector Header */
	0x00, 0x06,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x01, 0xa0, 0x05, 0x00, 0x01,
	0x91, 0xe0, 0xf0, 0x00, 0xdd, 0xd1, 0x00, 0x00,
	0x00, 0x38, 0x00, 0x01, 0x73, 0x00, 0x02, 0x1f,
	0xd8,
	/* ThreePackedEvents */
	0xac, 0xac,

	/* Vector Header */
	0x00, 0x1c,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x01, 0xa0, 0x16, 0x00, 0x03,
	0x91, 0xe0, 0xf0, 0x00, 0x6f, 0xdc, 0x00, 0x00,
	0x00, 0x38, 0x00, 0x01, 0x70, 0x00, 0x02, 0x1f,
	0xd8,
	/* ThreePackedEvents */
	0xac, 0xac, 0xac, 0xac, 0xac, 0xac, 0xac, 0xac,
	0xac, 0x90,

	0x00, 0x00, /* EndMark */

	/* Message Start */
	0x03,         /* Attribute Type */
	0x08,         /* Attribute FirstValue Length */
	0x00, 0x63,   /* Attribute ListLength */

	/* Vector Header */
	0x00, 0x01,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x4d, 0x00, 0x00,
	/* ThreePackedEvents */
	0x6c,
	/* FourPackedEvents */
	0x80,

	/* Vector Header */
	0x00, 0x13,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x4d, 0x00, 0x03,
	/* ThreePackedEvents */
	0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x6c,
	/* FourPackedEvents */
	0xaa, 0xaa, 0xaa, 0xaa, 0xa8,

	/* Vector Header */
	0x00, 0x13,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0xba, 0x00, 0x03,
	/* ThreePackedEvents */
	0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x6c,
	/* FourPackedEvents */
	0xaa, 0xaa, 0xaa, 0xaa, 0xa8,

	/* Vector Header */
	0x00, 0x06,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x01, 0xa0, 0x05, 0x00, 0x01,
	/* ThreePackedEvents */
	0x81, 0x81,
	/* FourPackedEvents */
	0xaa, 0xa0,

	/* Vector Header */
	0x00, 0x1c,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x01, 0xa0, 0x16, 0x00, 0x03,
	/* ThreePackedEvents */
	0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81,
	0x81, 0x6c,
	/* FourPackedEvents */
	0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,

	0x00, 0x00, /* EndMark */

	/* Message Start */
	0x04,          /* Attribute Type */
	0x04,          /* Attribute FirstValue Length */
	0x00, 0x09,    /* Attribute ListLength */

	/* Vector Header */
	0x00, 0x01,
	/* FirstValue */
	0x06, 0x03, 0x00, 0x02,
	/* ThreePackedEvents */
	0x6c,

	0x00, 0x00, /* EndMark */

	0x00, 0x00  /* EndMark */
};

unsigned char badDA[] = {
	0x01, 0x80, 0xc2, 0x00, 0x00, 0x00, /* Destination MAC (Invalid) */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x58, /* Source MAC */
	0x22, 0xea,                         /* Ethertype */

	0x00,         /* Protocol Version */
	/* Message Start */
	0x04,          /* Attribute Type */
	0x04,          /* Attribute FirstValue Length */
	0x00, 0x09,    /* Attribute ListLength */

	/* Vector Header */
	0x00, 0x01,
	/* FirstValue */
	0x06, 0x03, 0x00, 0x02,
	/* ThreePackedEvents */
	0x6c,

	0x00, 0x00, /* EndMark */

	0x00, 0x00  /* EndMark */
};

unsigned char badEthertype[] = {
	0x01, 0x80, 0xc2, 0x00, 0x00, 0x0e, /* Destination MAC */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x58, /* Source MAC */
	0x00, 0x00,                         /* Ethertype (Invalid) */

	0x00,         /* Protocol Version */
	/* Message Start */
	0x04,          /* Attribute Type */
	0x04,          /* Attribute FirstValue Length */
	0x00, 0x09,    /* Attribute ListLength */

	/* Vector Header */
	0x00, 0x01,
	/* FirstValue */
	0x06, 0x03, 0x00, 0x02,
	/* ThreePackedEvents */
	0x6c,

	0x00, 0x00, /* EndMark */

	0x00, 0x00  /* EndMark */
};

unsigned char badAttrType[] = {
	0x01, 0x80, 0xc2, 0x00, 0x00, 0x0e, /* Destination MAC */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x58, /* Source MAC */
	0x22, 0xea,                         /* Ethertype */

	0x00,         /* Protocol Version */
	/* Message Start */
	0x05,          /* Attribute Type (Invalid) */
	0x04,          /* Attribute FirstValue Length */
	0x00, 0x09,    /* Attribute ListLength */

	/* Vector Header */
	0x00, 0x01,
	/* FirstValue */
	0x06, 0x03, 0x00, 0x02,
	/* ThreePackedEvents */
	0x6c,

	0x00, 0x00, /* EndMark */

	0x00, 0x00  /* EndMark */
};

unsigned char badAttrType2[] = {
	0x01, 0x80, 0xc2, 0x00, 0x00, 0x0e, /* Destination MAC */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x58, /* Source MAC */
	0x22, 0xea,                         /* Ethertype */

	0x00,         /* Protocol Version */
	/* Message Start */
	0x00,          /* Attribute Type (Invalid) */
	0x04,          /* Attribute FirstValue Length */
	0x00, 0x09,    /* Attribute ListLength */

	/* Vector Header */
	0x00, 0x01,
	/* FirstValue */
	0x06, 0x03, 0x00, 0x02,
	/* ThreePackedEvents */
	0x6c,

	0x00, 0x00, /* EndMark */

	0x00, 0x00  /* EndMark */
};

unsigned char onlyIgnore[] = {
	0x01, 0x80, 0xc2, 0x00, 0x00, 0x0e, /* Destination MAC */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x58, /* Source MAC */
	0x22, 0xea,                         /* Ethertype */

	0x00,         /* Protocol Version */

	/* Message Start */
	0x03,         /* Attribute Type */
	0x08,         /* Attribute FirstValue Length */
	0x00, 0x0e,   /* Attribute ListLength */

	/* Vector Header */
	0x00, 0x01,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x4d, 0x00, 0x00,
	/* ThreePackedEvents */
	0x00,
	/* FourPackedEvents */
	0x00,

	0x00, 0x00, /* EndMark */

	0x00, 0x00  /* EndMark */
};

unsigned char someIgnore[] = {
	0x01, 0x80, 0xc2, 0x00, 0x00, 0x0e, /* Destination MAC */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x58, /* Source MAC */
	0x22, 0xea,                         /* Ethertype */

	0x00,         /* Protocol Version */

	/* Message Start */
	0x03,         /* Attribute Type */
	0x08,         /* Attribute FirstValue Length */
	0x00, 0x0f,   /* Attribute ListLength */

	/* Vector Header */
	0x00, 0x04,   /* 4 values */
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x4d, 0x00, 0x00,
	/* ThreePackedEvents */
	0x00, 0x00,   /* All are New */
	/* FourPackedEvents */
	0x82,         /* Ready, Ignore, Ignore, Ready */

	0x00, 0x00, /* EndMark */

	0x00, 0x00  /* EndMark */
};

unsigned char wrongTalkerAdvertiseLength[] = {
	0x01, 0x80, 0xc2, 0x00, 0x00, 0x0e, /* Destination MAC */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x58, /* Source MAC */
	0x22, 0xea,                         /* Ethertype */

	0x00,         /* Protocol Version */

	/* Message Start */
	0x01,         /* Attribute Type */
	0x1a,         /* Attribute FirstValue Length (wrong) */
	0x00, 0x1f,   /* Attribute ListLength */

	/* Vector Header */
	0x00, 0x01,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x4d, 0x00, 0x00,
	0x91, 0xe0, 0xf0, 0x00, 0xb7, 0x1a, 0x00, 0x00,
	0x00, 0x38, 0x00, 0x01, 0x60, 0x00, 0x02, 0x1f,
	0xd8, 0x00,   /* <- 1 extra byte */
	/* ThreePackedEvents */
	0x6c,

	0x00, 0x00, /* EndMark */

	0x00, 0x00  /* EndMark */
};

unsigned char wrongTalkerFailedLength[] = {
	0x01, 0x80, 0xc2, 0x00, 0x00, 0x0e, /* Destination MAC */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x58, /* Source MAC */
	0x22, 0xea,                         /* Ethertype */

	0x00,         /* Protocol Version */

	/* Message Start */
	0x02,         /* Attribute Type */
	0x23,         /* Attribute FirstValue Length (wrong) */
	0x00, 0x28,   /* Attribute ListLength */

	/* Vector Header */
	0x00, 0x01,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x4d, 0x00, 0x00,
	0x91, 0xe0, 0xf0, 0x00, 0xb7, 0x1a, 0x00, 0x00,
	0x00, 0x38, 0x00, 0x01, 0x60, 0x00, 0x02, 0x1f,
	0xd8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
	0x00, 0x00, 0x00,  /* <- 1 extra byte */

	/* ThreePackedEvents */
	0x6c,

	0x00, 0x00, /* EndMark */

	0x00, 0x00  /* EndMark */
};

unsigned char wrongListenerLength[] = {
	0x01, 0x80, 0xc2, 0x00, 0x00, 0x0e, /* Destination MAC */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x58, /* Source MAC */
	0x22, 0xea,                         /* Ethertype */

	0x00,         /* Protocol Version */

	/* Message Start */
	0x03,         /* Attribute Type */
	0x09,         /* Attribute FirstValue Length (wrong) */
	0x00, 0x0f,   /* Attribute ListLength */

	/* Vector Header */
	0x00, 0x01,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x4d, 0x00, 0x00,
	0x00,         /* <- 1 extra byte */
	/* ThreePackedEvents */
	0x6c,
	/* FourPackedEvents */
	0x80,

	0x00, 0x00, /* EndMark */

	0x00, 0x00  /* EndMark */
};

unsigned char wrongDomainAttributeLength[] = {
	0x01, 0x80, 0xc2, 0x00, 0x00, 0x0e, /* Destination MAC */
	0xc0, 0x3f, 0x0e, 0x8c, 0xec, 0x44, /* Source MAC */
	0x22, 0xea,                         /* Ethertype */

	0x00,         /* Protocol Version */

	/* Message Start */
	0x04,         /* Attribute Type */
	0x05,         /* Attribute FirstValue Length (wrong) */
	0x00, 0x0a,   /* Attribute ListLength */

	/* Vector Header */
	0x20, 0x00,
	/* FirstValue */
	0x00, 0x00, 0x00, 0x00, 0x00, /* <- 1 extra byte */
	/* ThreePackedEvents */
	0x6c,

	0x00, 0x00,   /* EndMark */

	0x00, 0x00    /* EndMark */
};

/*
 * LeaveAll test packets
 */

unsigned char laTalker[] = {
	0x01, 0x80, 0xc2, 0x00, 0x00, 0x0e, /* Destination MAC */
	0xc0, 0x3f, 0x0e, 0x8c, 0xec, 0x44, /* Source MAC */
	0x22, 0xea,                         /* Ethertype */

	0x00,         /* Protocol Version */

	/* Message Start */
	0x01,         /* Attribute Type */
	0x19,         /* Attribute FirstValue Length */
	0x00, 0x1d,   /* Attribute ListLength */

	/* Vector Header */
	0x20, 0x00,
	/* FirstValue */
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
	0x00,

	0x00, 0x00,   /* EndMark */

	0x00, 0x00    /* EndMark */
};

unsigned char laTalkerFail[] = {
	0x01, 0x80, 0xc2, 0x00, 0x00, 0x0e, /* Destination MAC */
	0xc0, 0x3f, 0x0e, 0x8c, 0xec, 0x44, /* Source MAC */
	0x22, 0xea,                         /* Ethertype */

	0x00,         /* Protocol Version */

	/* Message Start */
	0x02,         /* Attribute Type */
	0x22,         /* Attribute FirstValue Length */
	0x00, 0x26,   /* Attribute ListLength */

	/* Vector Header */
	0x20, 0x00,
	/* FirstValue */
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
	0x00, 0x00,

	0x00, 0x00,   /* EndMark */

	0x00, 0x00    /* EndMark */
};

unsigned char laListener[] = {
	0x01, 0x80, 0xc2, 0x00, 0x00, 0x0e, /* Destination MAC */
	0xc0, 0x3f, 0x0e, 0x8c, 0xec, 0x44, /* Source MAC */
	0x22, 0xea,                         /* Ethertype */

	0x00,         /* Protocol Version */

	/* Message Start */
	0x03,         /* Attribute Type */
	0x08,         /* Attribute FirstValue Length */
	0x00, 0x0c,   /* Attribute ListLength */

	/* Vector Header */
	0x20, 0x00,
	/* FirstValue */
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

	0x00, 0x00,   /* EndMark */

	0x00, 0x00    /* EndMark */
};

unsigned char laDomain[] = {
	0x01, 0x80, 0xc2, 0x00, 0x00, 0x0e, /* Destination MAC */
	0xc0, 0x3f, 0x0e, 0x8c, 0xec, 0x44, /* Source MAC */
	0x22, 0xea,                         /* Ethertype */

	0x00,         /* Protocol Version */

	/* Message Start */
	0x04,         /* Attribute Type */
	0x04,         /* Attribute FirstValue Length */
	0x00, 0x08,   /* Attribute ListLength */

	/* Vector Header */
	0x20, 0x00,
	/* FirstValue */
	0x00, 0x00, 0x00, 0x00,

	0x00, 0x00,   /* EndMark */

	0x00, 0x00    /* EndMark */
};

/*
 * Tests for packets truncated in various ways
 */

unsigned char partialMsgFullAttribute[] = {
	0x01, 0x80, 0xc2, 0x00, 0x00, 0x0e, /* Destination MAC */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x58, /* Source MAC */
	0x22, 0xea,                         /* Ethertype */

	0x00,         /* Protocol Version */

	/* Message Start */
	0x01,         /* Attribute Type */
	0x19,         /* Attribute FirstValue Length */
	0x00, 0xc4,   /* Attribute ListLength */

	/* Vector Header */
	0x00, 0x01,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x4d, 0x00, 0x00,
	0x91, 0xe0, 0xf0, 0x00, 0xb7, 0x1a, 0x00, 0x00,
	0x00, 0x38, 0x00, 0x01, 0x60, 0x00, 0x02, 0x1f,
	0xd8,
	/* ThreePackedEvents */
	0x90
};

unsigned char fullMsgNoEndmark[] = {
	0x01, 0x80, 0xc2, 0x00, 0x00, 0x0e, /* Destination MAC */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x58, /* Source MAC */
	0x22, 0xea,                         /* Ethertype */

	0x00,         /* Protocol Version */

	/* Message Start */
	0x01,         /* Attribute Type */
	0x19,         /* Attribute FirstValue Length */
	0x00, 0xc4,   /* Attribute ListLength */

	/* Vector Header */
	0x00, 0x01,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x4d, 0x00, 0x00,
	0x91, 0xe0, 0xf0, 0x00, 0xb7, 0x1a, 0x00, 0x00,
	0x00, 0x38, 0x00, 0x01, 0x60, 0x00, 0x02, 0x1f,
	0xd8,
	/* ThreePackedEvents */
	0x90,

	/* Vector Header */
	0x00, 0x13,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x4d, 0x00, 0x03,
	0x91, 0xe0, 0xf0, 0x00, 0xb7, 0x1d, 0x00, 0x00,
	0x00, 0x38, 0x00, 0x01, 0x70, 0x00, 0x02, 0x1f,
	0xd8,
	/* ThreePackedEvents */
	0xac, 0xac, 0xac, 0xac, 0xac, 0xac, 0x90,

	/* Vector Header */
	0x00, 0x0d,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x58, 0x00, 0x01,
	0x91, 0xe0, 0xf0, 0x00, 0x88, 0x3d, 0x00, 0x00,
	0x00, 0x38, 0x00, 0x01, 0x70, 0x00, 0x00, 0x01,
	0xf4,
	/* ThreePackedEvents */
	0x81, 0x81, 0x81, 0x81, 0x6c,

	/* Vector Header */
	0x00, 0x13,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0xba, 0x00, 0x03,
	0x91, 0xe0, 0xf0, 0x00, 0x4c, 0x40, 0x00, 0x00,
	0x00, 0x38, 0x00, 0x01, 0x70, 0x00, 0x02, 0x1f,
	0xd8,
	/* ThreePackedEvents */
	0xac, 0xac, 0xac, 0xac, 0xac, 0xac, 0x90,

	/* Vector Header */
	0x00, 0x06,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x01, 0xa0, 0x05, 0x00, 0x01,
	0x91, 0xe0, 0xf0, 0x00, 0xdd, 0xd1, 0x00, 0x00,
	0x00, 0x38, 0x00, 0x01, 0x73, 0x00, 0x02, 0x1f,
	0xd8,
	/* ThreePackedEvents */
	0xac, 0xac,

	/* Vector Header */
	0x00, 0x1c,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x01, 0xa0, 0x16, 0x00, 0x03,
	0x91, 0xe0, 0xf0, 0x00, 0x6f, 0xdc, 0x00, 0x00,
	0x00, 0x38, 0x00, 0x01, 0x70, 0x00, 0x02, 0x1f,
	0xd8,
	/* ThreePackedEvents */
	0xac, 0xac, 0xac, 0xac, 0xac, 0xac, 0xac, 0xac,
	0xac, 0x90,
};

unsigned char fullMsgOneEndmark[] = {
	0x01, 0x80, 0xc2, 0x00, 0x00, 0x0e, /* Destination MAC */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x58, /* Source MAC */
	0x22, 0xea,                         /* Ethertype */

	0x00,         /* Protocol Version */

	/* Message Start */
	0x01,         /* Attribute Type */
	0x19,         /* Attribute FirstValue Length */
	0x00, 0xc4,   /* Attribute ListLength */

	/* Vector Header */
	0x00, 0x01,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x4d, 0x00, 0x00,
	0x91, 0xe0, 0xf0, 0x00, 0xb7, 0x1a, 0x00, 0x00,
	0x00, 0x38, 0x00, 0x01, 0x60, 0x00, 0x02, 0x1f,
	0xd8,
	/* ThreePackedEvents */
	0x90,

	/* Vector Header */
	0x00, 0x13,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x4d, 0x00, 0x03,
	0x91, 0xe0, 0xf0, 0x00, 0xb7, 0x1d, 0x00, 0x00,
	0x00, 0x38, 0x00, 0x01, 0x70, 0x00, 0x02, 0x1f,
	0xd8,
	/* ThreePackedEvents */
	0xac, 0xac, 0xac, 0xac, 0xac, 0xac, 0x90,

	/* Vector Header */
	0x00, 0x0d,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0x58, 0x00, 0x01,
	0x91, 0xe0, 0xf0, 0x00, 0x88, 0x3d, 0x00, 0x00,
	0x00, 0x38, 0x00, 0x01, 0x70, 0x00, 0x00, 0x01,
	0xf4,
	/* ThreePackedEvents */
	0x81, 0x81, 0x81, 0x81, 0x6c,

	/* Vector Header */
	0x00, 0x13,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x00, 0x23, 0xba, 0x00, 0x03,
	0x91, 0xe0, 0xf0, 0x00, 0x4c, 0x40, 0x00, 0x00,
	0x00, 0x38, 0x00, 0x01, 0x70, 0x00, 0x02, 0x1f,
	0xd8,
	/* ThreePackedEvents */
	0xac, 0xac, 0xac, 0xac, 0xac, 0xac, 0x90,

	/* Vector Header */
	0x00, 0x06,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x01, 0xa0, 0x05, 0x00, 0x01,
	0x91, 0xe0, 0xf0, 0x00, 0xdd, 0xd1, 0x00, 0x00,
	0x00, 0x38, 0x00, 0x01, 0x73, 0x00, 0x02, 0x1f,
	0xd8,
	/* ThreePackedEvents */
	0xac, 0xac,

	/* Vector Header */
	0x00, 0x1c,
	/* FirstValue */
	0x00, 0x0f, 0xd7, 0x01, 0xa0, 0x16, 0x00, 0x03,
	0x91, 0xe0, 0xf0, 0x00, 0x6f, 0xdc, 0x00, 0x00,
	0x00, 0x38, 0x00, 0x01, 0x70, 0x00, 0x02, 0x1f,
	0xd8,
	/* ThreePackedEvents */
	0xac, 0xac, 0xac, 0xac, 0xac, 0xac, 0xac, 0xac,
	0xac, 0x90,

	0x00, 0x00, /* EndMark */
};
