Was playing with dumping packet contents to screen with pyogp when I found errors. Since we'd been testing with limited numbers of packets it only showed up after we started looking at larger numbers: packets would be coming in with no valid ID. E.G., byte 6 was NOT oxff.
This showed up with the pyogp library and with the normal OGP GPL viewer, when examing incoming packets using tcpdump. Examples:
time = 2008-10-20 10:43:43.912675 Counter = 29(<type 'exceptions.AttributeError'>, AttributeError("'NoneType' object has no attribute 'name'",))
packet == None, and msg_buf is: \0xc0\0x0\0x0\0x0\0x10\0x0\0xc\0x0\0x1\0xea\0x3\0x0\0x2\0xe6\0x3\0x0\0x1\0xc4\0xf3\0x3\0xa\0x5\0xbe\0x9\0x0\0x1\0x38\0xd0\0x39\0x11\0xa7\0xad\0xae\0x2f\0x8b\0xc2\0x45\0x57\0x46\0xd5\0x23\0xa\0xb3\0x3\0x0\0x2\0x9\0x3\0x0\0x3\0x20\0x41\0x0\0x2\0x20\0x41\0x0\0x3\0x3f\0x3c\0xd2\0x1\0x20\0x41\0x0\0x38\0xd\0x5\0xbe\0x9\0x50\0x8\0x2\0x10\0x10\0x1\0x0\0x4\0x64\0x64\0x0\0xf\0x54\0x0\0x1\0xf4\0x2f\0xbf\0x39\0xb7\0x5b\0x8d\0x55\0x54\0x97\0x66\0xf7\0x10\0x87\0x44\0xe3\0x1\0xbb\0x32\0x13\0xd5\0xfd\0x80\0xa8\0x5e\0xa9\0xc3\0xd5\0x93\0x64\0x2f\0xc7\0x4f\0x0\0x1\0xca\0xc4\0x95\0x0\0x1\0x1\0x0\0x7\0x20\0x41\0x1\0x0\0x3\0x3f\0x0\0x3\0x20\0x41\0x1f\0x0\0x3\0x3f\0x0\0x3\0x1\0x0\0x1\0x20\0x0\0x3\0x1\0x0\0x1\0x20\0x0\0x4\0x40\0x0\0x10\0x1\0x0\0x43\0xb\0x5\0xbe\0x9\0x0\0x1\0xb1\0x75\0x2d\0xf2\0x93\0xa3\0xe8\0x94\0x66\0xc7\0x67\0xad\0xbd\0x72\0x21\0xb4\0xbf\0x3\0x0\0x2\0x9\0x3\0x0\0x3\0x20\0x41\0x0\0x2\0x20\0x41\0x0\0x3\0x3f\0x3c\0xd2\0x1\0x20\0x41\0x3f\0x0\0x1\0x20\0xc1\0x0\0x34\0xd\0x5\0xbe\0x9\0x50\0x8\0x
2\0x10\0x10\0x1\0x0\0x4\0x64\0x64\0x0\0xf\0x54\0x0\0x1\0xf4\0x2f\0xbf\0x39\0xb7\0x5b\0x8d\0x55\0x54\0x97\0x66\0xf7\0x10\0x87\0x44\0xe3\0x1\0xbb\0x32\0x13\0xd5\0xfd\0x80\0xa8\0x5e\0xa9\0xc3\0xd5\0x93\0x64\0x2f\0xc7\0x4f\0x0\0x1\0xca\0xc4\0x95\0x0\0x1\0x1\0x0\0x7\0x20\0x41\0x1\0x0\0x3\0x3f\0x0\0x3\0x20\0x41\0x1f\0x0\0x3\0x3f\0x0\0x3\0x1\0x0\0x1\0x20\0x0\0x3\0x1\0x0\0x1\0xe0\0x0\0x4\0x40\0x0\0x10\0x1\0x0\0x43\0xc\0x5\0xbe\0x9\0x0\0x1\0x4e\0xe1\0xa0\0x8d\0x2d\0x6e\0x95\0xd9\0xf4\0xc0\0x4c\0x69\0x67\0x58\0x13\0xe9\0xb8\0x3\0x0\0x2\0x9\0x3\0x0\0x3\0x20\0x41\0x0\0x2\0x20\0x41\0x0\0x3\0x3f\0x3c\0x0\0x4\0x3f\0x0\0x1\0x20\0xc1\0x0\0x34\0xd\0x5\0xbe\0x9\0x50\0x8\0x2\0x10\0x10\0x1\0x0\0x4\0x64\0x64\0x0\0xf\0x54\0x0\0x1\0xf4\0x2f\0xbf\0x39\0xb7\0x5b\0x8d\0x55\0x54\0x97\0x66\0xf7\0x10\0x87\0x44\0xe3\0x1\0xbb\0x32\0x13\0xd5\0xfd\0x80\0xa8\0x5e\0xa9\0xc3\0xd5\0x93\0x64\0x2f\0xc7\0x4f\0x0\0x1\0xca\0xc4\0x95\0x0\0x1\0x1\0x0\0x7\0x20\0x41\0x1\0x0\0x3\0x3f\0x0\0x3\0x20\0x41\0x1f\0x0\0x3\0x3f\0x0\0x3\0x1\0
x0\0x1\0xe0\0x0\0x3\0x1\0x0\0x1\0xe0\0x0\0x4\0x40\0x0\0x10\0x1\0x0\0x43
time = 2008-10-20 10:43:44.021842 Counter = 30(<type 'exceptions.AttributeError'>, AttributeError("'NoneType' object has no attribute 'name'",))
packet == None, and msg_buf is: \0xc0\0x0\0x0\0x0\0x26\0x0\0xc\0x0\0x1\0xea\0x3\0x0\0x2\0xe6\0x3\0x0\0x1\0x54\0xff\0x9\0x4d\0xa6\0xd9\0xc\0x0\0x1\0xd5\0xf4\0x3\0xc7\0x79\0x81\0x42\0x5d\0xa0\0xb5\0xc6\0x5a\0x3d\0xa\0x46\0x93\0x52\0x0\0x3\0x2f\0x4\0x0\0x1\0x66\0x66\0xe6\0x3e\0x9a\0x99\0x19\0x3f\0x33\0x33\0xf3\0x3f\0x4c\0x9b\0xda\0x34\0x3f\0x89\0xe0\0x4d\0x3d\0x22\0xba\0x34\0x3f\0xbe\0x3b\0xa7\0x41\0x5e\0xd7\0xa6\0x40\0x70\0xcf\0x9f\0x40\0x99\0x9f\0xc9\0x41\0x0\0x20\0x74\0x75\0xb9\0x3d\0x0\0x8\0x56\0x3e\0xe1\0xbd\0x0\0x4\0x3d\0x9\0x2\0x10\0x10\0x1\0x0\0x4\0x64\0x64\0x0\0xf\0x2e\0x0\0x19\0x80\0x3f\0x0\0x3\0x80\0x3f\0x0\0x10\0x3d\0x0\0x1\0x46\0x69\0x72\0x73\0x74\0x4e\0x61\0x6d\0x65\0x20\0x53\0x54\0x52\0x49\0x4e\0x47\0x20\0x52\0x57\0x20\0x53\0x56\0x20\0x53\0x61\0x69\0x6a\0x61\0x6e\0x61\0x69\0xa\0x4c\0x61\0x73\0x74\0x4e\0x61\0x6d\0x65\0x20\0x53\0x54\0x52\0x49\0x4e\0x47\0x20\0x52\0x57\0x20\0x53\0x56\0x20\0x44\0x61\0x67\0x67\0x65\0x72\0x0\0xa\0x1\0x0\0x43\0x6\0xbc\0x8e\0xb\0x0\0x1\0x69\0x94\0x8c\0x6a\0x4d\0x22\0x1b\0x66\0xec
\0xe4\0xac\0x31\0x63\0x93\0xcb\0x4b\0xef\0x3f\0x90\0x1\0x9\0x3\0x0\0x1\0x51\0x40\0x88\0x3e\0x51\0x40\0x88\0x3e\0x51\0x40\0x88\0x3e\0x3c\0xa2\0x44\0xb3\0x42\0x9a\0x68\0x2b\0x42\0xc8\0x5b\0xd1\0x41\0x0\0x18\0x4b\0x8c\0xff\0x3e\0xbd\0x76\0xff\0xbe\0xc5\0x44\0x0\0x1\0xbf\0x0\0x10\0x50\0x4\0x0\0x1\0x10\0x20\0x5\0x0\0x4\0x64\0x64\0x0\0xf\0x2e\0x0\0x1\0xa1\0x33\0xdc\0x77\0xa\0x1a\0xbb\0x27\0xa7\0x2e\0x78\0x64\0x63\0xab\0x94\0xab\0x0\0x8\0x80\0x3f\0x0\0x3\0x80\0x3f\0x0\0xf\0x10\0x13\0xff\0x0\0x8\0x80\0x3f\0x8f\0xc2\0xf5\0x3d\0x0\0xa\0x56\0xbb\0x1e\0xc8\0x0\0x1\0x2\0x0\0x3\0x4\0x0\0x2\0x98\0x0\0x2\0x64\0x26\0x0\0x3\0xe\0x0\0x1\0xe\0x0\0x1\0x19\0x0\0x1\0x80\0x0\0x1\0x80\0x0\0x1\0x80\0x0\0x1\0x80\0x0\0x1\0x80\0x0\0x1\0x80\0x91\0x11\0xd2\0x5e\0x2f\0x12\0x8f\0x81\0x55\0xa7\0x40\0x3a\0x78\0xb3\0xe\0x2d\0x0\0x10\0x3\0x1\0x0\0x3\0x1e\0xe4\0x48\0xa2\0xff\0xd2\0x3a\0x43\0x0\0x1\0x6\0x0\0x1\0xd\0xd\0x1\0x0\0x11\0xe\0xdc\0x9b\0x83\0x98\0x9a\0x4a\0x76\0xac\0xc3\0xdb\0xbf\0x37\0x54\0x61\0x88\0x0\0x22\0x2b\0
xf6\0xf\0x0\0x2\0xb9\0x76\0x6\0xe8\0xde\0x93\0x58\0xbe\0x24\0xaf\0x33\0xd4\0x41\0x3c\0xa2\0xf9\0x9c\0x7\0x0\0x2\0x9\0x3\0x0\0x1\0x92\0xe\0x9\0x3d\0x92\0xe\0x9\0x3d\0x71\0x3d\0x3a\0x40\0x3c\0xff\0x61\0xa2\0x41\0x6e\0x2a\0x6b\0x41\0xf1\0x5d\0xc8\0x41\0x0\0x18\0x1d\0x6c\0xe5\0x37\0x58\0x5e\0x95\0xb8\0xfd\0x7b\0xb7\0x3e\0x0\0x10\0xd0\0x0\0x1\0x2\0x10\0x10\0x0\0x5\0x64\0x64\0x0\0xf\0x2e\0x0\0x1\0x89\0x55\0x67\0x47\0x24\0xcb\0x43\0xed\0x92\0xb\0x47\0xca\0xed\0x15\0x46\0x5f\0x0\0x2\0xff\0xff\0x0\0x4\0x80\0x3f\0x0\0x3\0x80\0x3f\0x0\0x1b\0x1\0x0\0x43\0x43\0x61\0xf4\0x4\0x0\0x1\0x5e\0x49\0x28\0x90\0x42\0xdd\0x8e\0xa\0x1b\0x57\0xef\0x1d\0xf4\0xbf\0xfa\0x95\0x94\0x16\0x0\0x2\0x9\0x3\0x0\0x1\0x9a\0x99\0xd9\0x3e\0xcd\0xcc\0xcc\0x3e\0xc0\0x51\0x80\0x3f\0x3c\0x0\0x2\0xd0\0x40\0x0\0x2\0x2e\0x42\0xf6\0x8e\0xbb\0x41\0x0\0x34\0xd0\0x0\0x1\0x2\0x10\0x10\0x30\0x0\0x4\0x32\0x32\0x0\0xd\0xa8\0x61\0x33\0x0\0x1\0x57\0x48\0xde\0xcc\0xf6\0x29\0x46\0x1c\0x9a\0x36\0xa3\0x5a\0x22\0x1f\0xe2\0x1f\0x0\0x1\0xbf\0xbf\0xb
f\0x0\0x1\0x4\0xe1\0xe1\0xe1\0x0\0x4\0x80\0x3f\0x0\0x3\0x80\0x3f\0x0\0x1b\0x1\0x0\0x43\0x44\0x61\0xf4\0x4\0x0\0x1\0x51\0x94\0xb3\0x5b\0x6f\0x50\0x9e\0x7b\0x36\0x51\0xc9\0x90\0x7f\0x73\0xba\0xc9\0xa9\0x12\0x0\0x2\0x9\0x3\0x0\0x4\0x3f\0x0\0x3\0x3f\0x0\0x3\0x3f\0x3c\0x0\0x9\0x56\0xff\0x3e\0x0\0x30\0x43\0x61\0xf4\0x4\0xd0\0x0\0x1\0x2\0x10\0x20\0x15\0x0\0x2\0xa8\0x61\0x64\0x64\0x0\0xf\0x2e\0x0\0x1\0x57\0x48\0xde\0xcc\0xf6\0x29\0x46\0x1c\0x9a\0x36\0xa3\0x5a\0x22\0x1f\0xe2\0x1f\0x0\0x1\0x40\0x40\0xbf\0x7f\0x0\0x3\0x80\0x3f\0x0\0x3\0x80\0x3f\0x0\0x1b\0x1\0x0\0x43\0x45\0x61\0xf4\0x4\0x0\0x1\0x6e\0xee\0xf9\0x1a\0x2b\0x5\0x3d\0x37\0xc3\0x11\0x9d\0x29\0xf0\0x56\0xda\0xaa\0x59\0x2\0x0\0x2\0x9\0x3\0x0\0x4\0x3f\0x0\0x3\0x3f\0x0\0x2\0x80\0x3f\0x3c\0x0\0x8\0x19\0x0\0x1\0xaa\0xba\0x0\0x30\0x43\0x61\0xf4\0x4\0xd0\0x8\0x2\0x10\0x10\0x0\0x5\0x32\0x32\0x0\0x9\0x60\0x9\0xf6\0x9\0xe\0x9c\0x2e\0x0\0x1\0x57\0x48\0xde\0xcc\0xf6\0x29\0x46\0x1c\0x9a\0x36\0xa3\0x5a\0x22\0x1f\0xe2\0x1f\0x0\0x1\0xe1\0xe1\0xe1\0x0\0x4
\0x80\0x3f\0x0\0x3\0x80\0x3f\0x0\0x1b\0x1\0x0\0x43\0x46\0x61\0xf4\0x4\0x0\0x1\0x92\0xcb\0xcc\0x8a\0x69\0x93\0xac\0xae\0x92\0x3b\0xcb\0x60\0xb8\0x9d\0xb9\0xe8\0x85\0x1\0x0\0x2\0x9\0x3\0x0\0x4\0x3f\0x0\0x3\0x3f\0x0\0x1\0x9e\0x7f\0x3e\0x3c\0x0\0x8\0xf4\0xc3\0xc0\0xbe\0x0\0x30\0x43\0x61\0xf4\0x4\0xd0\0x8\0x2\0x10\0x10\0x0\0x5\0x96\0x91\0x0\0x9\0x60\0x9\0xf6\0x9\0xb2\0x57\0x2e\0x0\0x1\0x57\0x48\0xde\0xcc\0xf6\0x29\0x46\0x1c\0x9a\0x36\0xa3\0x5a\0x22\0x1f\0xe2\0x1f\0x0\0x1\0xe1\0xe1\0xe1\0x0\0x4\0x80\0x3f\0x0\0x3\0x80\0x3f\0x0\0x1b\0x1\0x0\0x43\0x7e\0xf5\0x33\0x7\0x0\0x1\0xbe\0x84\0xa6\0x6a\0x43\0x47\0xb1\0xa5\0x47\0xf1\0x34\0x4d\0xcc\0xb\0x24\0x9f\0x7\0xf9\0x3\0x0\0x1\0x9\0x3\0x0\0x1\0xcd\0xcc\0x4c\0x3e\0xcd\0xcc\0x4c\0x3e\0xcd\0xcc\0x4c\0x3e\0x3c\0x64\0x8c\0x87\0x42\0xa7\0xba\0xe5\0x40\0x56\0x85\0xb8\0x41\0x0\0x18\0x9b\0xd5\0xa0\0x35\0x23\0xf0\0x3f\0xb8\0x72\0xc3\0x3c\0xbf\0x0\0x10\0xd0\0x4\0x0\0x2\0x20\0x5\0x0\0x4\0x64\0x64\0x0\0xf\0x2e\0x0\0x1\0x57\0x48\0xde\0xcc\0xf6\0x29\0x46\0x1c\0x9a\
0x36\0xa3\0x5a\0x22\0x1f\0xe2\0x1f\0x0\0x1\0x40\0x40\0x40\0x0\0x4\0x80\0x3f\0x0\0x3\0x80\0x3f\0x0\0x8\0xe0\0x0\0xb\0x2\0x20\0x0\0x1\0xff\0xff\0xff\0x0\0x3\0x1\0x0\0x43\0x70\0xf5\0x33\0x7\0x0\0x1\0x39\0x89\0xae\0x48\0x7a\0xba\0x64\0xb8\0x84\0x4f\0xf0\0xc6\0x3e\0xc\0x2c\0x71\0xaf\0x4\0x0\0x2\0x9\0x3\0x0\0x1\0xcd\0xcc\0x4c\0x3e\0xcd\0xcc\0x4c\0x3e\0xcd\0xcc\0x4c\0x3e\0x3c\0x3c\0x67\0xb\0xbf\0xfb\0x91\0x2a\0x3f\0x8a\0x3f\0x8a\0xbc\0x0\0x18\0x53\0x9a\0x84\0x37\0x61\0x87\0xb\0x37\0xe6\0xef\0xc3\0x3e\0x0\0xc\0x7e\0xf5\0x33\0x7\0xd0\0x4\0x0\0x2\0x20\0x5\0x0\0x4\0x64\0x64\0x0\0xf\0x2e\0x0\0x1\0x57\0x48\0xde\0xcc\0xf6\0x29\0x46\0x1c\0x9a\0x36\0xa3\0x5a\0x22\0x1f\0xe2\0x1f\0x0\0x1\0x40\0x40\0x40\0x0\0x4\0x80\0x3f\0x0\0x3\0x80\0x3f\0x0\0x8\0xe0\0x0\0xb\0x2\0x20\0x0\0x1\0xff\0xff\0xff\0x0\0x3\0x1\0x0\0x43