- 博客(7)
- 资源 (16)
- 收藏
- 关注
原创 md5、sha1实例
md5、sha1都是一种hash算法,对于任意长度的数据,经过运算之后得到结果长度都是固定的,并且是不可逆的,也就是说在不知道原始数据的情况下破解是非常困难的,通常用于密码的加密存储、数字签名、文件完整性校验等等,代码如下:#include #include #include void bufdump(char *buf, int len){ while (len--) { pri
2015-12-30 16:07:41 1737
原创 mqtt协议理解(结合libemqtt,subscribe部分)
1. connect在libemqtt代码中,客户端的connect代码是调用的mqtt_connect函数,代码如下:int mqtt_connect(mqtt_broker_handle_t* broker){ uint8_t flags = 0x00; uint16_t clientidlen = strlen(broker->clientid); uint16_t usern
2015-12-29 17:54:59 9368 2
原创 JSON
1. JSON简介JSON是JavaScript Object Notation的缩写,是JavaScript语法的一个子集,类似于XML,用来存储文本信息的一种语法,例如:{ "employees": [ { "firstName":"Bill" , "lastName":"Gates" }, { "firstName":"George" , "lastName":"Bush" }
2015-12-28 10:18:36 539
原创 Linux域名解析得到ip地址
Linux下域名解析得到ip地址代码如下:#include #include #include #include #include int main(int argc, char *argv[]){ struct hostent *p; int i; if (argc < 2) return -1; p = gethostbyname(argv[1]); print
2015-12-10 17:23:25 6569
原创 mqtt协议理解
mqtt协议包格式控制包最多由3部分组成:固定头部、可变头部和payload。1. 固定头部固定头部只有两个字节,格式如下:byte1的高4位就是包的类型,包的类型定义如下:低4位为flag位,有的包需要,有的包不需要:byte2为剩余数据的长度,数据是包含可变头部和payload的。这个长度如果是单个字节的话,最多只能是127,如果数值大于12
2015-12-10 17:12:14 2364
原创 mqtt协议
mqtt即Message Queue Telemetry Transport,是基于服务器端、客户端的一个消息传输协议,那么自然分为服务器端和客户端,github主页:https://github.com/mqtt/mqtt.github.io/wiki/software?id=software,这里有很多服务器端、客户端的实现。1. 服务器端mosquittomosquitto源代码
2015-12-04 17:00:37 1952
原创 关于磁盘分区
首先来看几个概念,主分区、扩展分区、逻辑分区。主分区:主分区通常是硬盘的启动分区,通常是硬盘的第一个分区,例如我们常说的"C"盘就是硬盘的主分区。扩展分区:除去主分区外,剩下的分区都被称为扩展分区。逻辑分区:扩展分区是相对于主分区而言的,只是一个概念,并不能直接拿来使用,必须再划分成为逻辑分区,通常的"D"、"E"、"F"盘都是硬盘的逻辑分区,而他们又属于扩展分区。例如,在
2015-12-03 10:24:00 522
ARM Architecture Reference Manual
2011-12-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人