Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Websocket 网袋式树桩机_Websocket_Network Programming_Webserver - Fatal编程技术网

Websocket 网袋式树桩机

Websocket 网袋式树桩机,websocket,network-programming,webserver,Websocket,Network Programming,Webserver,我正在编写一个嵌入式WebSocket服务器,并直接从相关的RFC进行工作 我的服务器正确响应来自浏览器的升级请求,浏览器(在其示例javascript中)继续通过新建立的套接字发送短消息。所以一切正常 消息很短(完整的帧只有21个字节),包含我的服务器乐于解码的所有相关字段 测桩机位于第9位至第15位,其应包含有效载荷的长度 以下是WireShark上捕获的消息的十六进制转储: 81 8f 11 ab d5 0b 5c ce a6 78 70 cc b0 2b 65 c4 f5 78 74 c

我正在编写一个嵌入式WebSocket服务器,并直接从相关的RFC进行工作

我的服务器正确响应来自浏览器的升级请求,浏览器(在其示例javascript中)继续通过新建立的套接字发送短消息。所以一切正常

消息很短(完整的帧只有21个字节),包含我的服务器乐于解码的所有相关字段

测桩机位于第9位至第15位,其应包含有效载荷的长度

以下是WireShark上捕获的消息的十六进制转储:

81 8f 11 ab d5 0b 5c ce a6 78 70 cc b0 2b 65 c4 f5 78 74 c5 b1

如您所见,第一个字节包含FIN(1位)、RSVD1(1位)、RSVD2(1位)、RSVD3(1位)和操作码的4位。到目前为止还不错

8f是stumper:包含掩码位和有效负载长度,掩码位设置为1,这很好,但当整个帧只有21字节长,有效负载只有15字节长时,其余7位的值为71(0x47)

那么我做错了什么

我可以通过将XOR掩码应用于有效负载来解码消息,但长度是个问题,因为它控制解码循环,并进行71次迭代,而不是应该进行的15次迭代

我很感激任何关于我做错了什么的线索


谢谢

问题是我的结构没有考虑AMD64处理器的耐久性!!!有时答案就在那里;-)