在Marvell 平台上使用os_mem_alloc 时需要注意,如果申请的空间用来存放字符串是,申请的长度需要strlen + 1,然后bzero,
否则可能出现存储的字符串由于没有0的分割而取值越界问题!
这个问题的出现:在利用emqqt作为mqtt broken时,由于我们在填入mac地址做为clientID时,mac地址串取到了malloc之外的空间导致mac地址串尾部出现乱码,而emqtt对clientID的字符做了过滤导致不合法的字符串传入时emqtt断开连接!
在Marvell 平台上使用os_mem_alloc 时需要注意,如果申请的空间用来存放字符串是,申请的长度需要strlen + 1,然后bzero,
否则可能出现存储的字符串由于没有0的分割而取值越界问题!
这个问题的出现:在利用emqqt作为mqtt broken时,由于我们在填入mac地址做为clientID时,mac地址串取到了malloc之外的空间导致mac地址串尾部出现乱码,而emqtt对clientID的字符做了过滤导致不合法的字符串传入时emqtt断开连接!