#include"../network_protocol.h" /*从帧中获取UDP报源端口*/ uint16 get_srcport(byte *frame) { uint16 srcport = 0; /***************** Begin 1 *****************/ /***************** End 1 *******************/ return srcport; … bool is_udp=false; /***************** Begin 5 *****************/ /***************** End 5 *******************/ return is_udp; }
时间: 2023-06-29 08:11:35 浏览: 62
lm3s6965_demo.rar_DEMO_LM3S6965_inc/hw_types.h
根据代码中的函数名和注释,这段代码是从网络协议中获取UDP报文的源端口号,并判断是否为UDP协议。
其中,函数get_srcport()的参数是一个指向帧的指针,返回值是一个uint16类型的源端口号。
而变量is_udp则是一个bool类型的变量,用于表示这个报文是否为UDP协议。代码中的注释表明,在函数的第5个空白处,需要填写判断是否为UDP协议的代码。
因此,可以在第5个空白处填写以下代码:
```
if (frame[12] == 0x08 && frame[13] == 0x00) { // 判断是否为IP协议
byte *ip_header = frame + 14;
if (ip_header[9] == 0x11) { // 判断是否为UDP协议
is_udp = true;
}
}
```
以上代码中,首先判断帧是否为IP协议,如果是,则获取IP头部指针,并判断是否为UDP协议,如果是,则将is_udp赋值为true。
阅读全文