自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(77)
  • 问答 (1)
  • 收藏
  • 关注

原创 出现 gpg: cancelled by user时的处理方法

处理gpg问题

2023-11-03 16:09:42 360

原创 将SDP里面crypto 字段的key salt值转成16进制

sdp crypto

2023-07-13 09:56:15 155

翻译 SIP 加密呼叫(TLS+SRTP)抓包后获取媒体内容备忘

decode sip tls srtp

2023-07-09 11:10:46 1559

原创 SIP 抓包后获取媒体内容备忘(解析RTP)

sip 呼叫抓包后,查看音视频内容

2023-07-09 10:20:39 1056

原创 c++ std::string 数据buffer的学习

std::string 数据buffer

2022-11-02 10:40:37 854 1

原创 GPG 导致的You need a passphrase to unlock the secret key for user 处理方法

git gpg linux

2022-08-29 15:41:35 556

转载 NALU和FU-A

NALU, FU-A 及RTP

2022-06-02 13:56:02 187

转载 (转)系统架构的一些原则

目录:原则一:关注于真正的收益而不是技术本身原则二:以应用服务和 API 为视角,而不是以资源和技术为视角原则三:选择最主流和成熟的技术原则四:完备性会比性能更重要原则五:制定并遵循服从标准、规范和最佳实践原则六:重视架构扩展性和可运维性原则七:对控制逻辑进行全面收口原则八:不要迁就老旧系统的技术债务原则九:不要依赖自己的经验,要依赖于数据和学习原则十:千万要小心 X – Y 问题,要追问原始需求原则十一:激进胜于保守,创新与实用并不冲突原文传送门:传送门:https://cool

2022-03-29 09:47:58 208

原创 状态机编程的一点心得

状态机抽象后, 其实就是state与event的处理:1.方案一,可以每个state创建一个class, 该class针对每个event有一个处理函数, 处理后返回一个下一个state的对象。2. 方案二, 状态机其实本质上是处理每个state & event的组合, 简单的实现方式是switch state:{ case state1: switch event: { case event1:

2022-03-22 09:55:26 425

原创 Python 实现一个简单的照片播放器,遍历播放一个目录及其子目录下所有的jpg

import cv2import filetypeimport osimport timefrom tkinter import *from tkinter.filedialog import askdirectoryimport threadingexitFlag = 0def select_path(): path_ = askdirectory() #return file location if path_ == "": path.get()

2022-02-19 16:45:12 1742

转载 Makefile 中的 ifeq 的缩进导致无法编译

stackoverflow转送门源地址

2021-12-28 13:20:54 205

转载 iptables详解

源地址: https://www.jianshu.com/p/ee4ee15d3658

2021-12-21 13:56:30 358

原创 Linux nm 命令查找符号

显示所有符号:nm -C execute_file查找是否存在目标符号nm -C execute_file | grep target_symbolnm命令除了对可执行文件使用,还可以对符号文件和静态库使用。

2021-12-21 10:09:34 1542

转载 Python pyautogui 实现自动化鼠标点击

源地址:https://blog.csdn.net/ooowwq/article/details/103825291?utm_source=app&app_version=4.20.0应用场景:软件模拟按键测试游戏自动投降降分脚本

2021-12-12 14:30:15 514

转载 git rebase合并多个commit 备忘

git rebase合并多个commit 备忘

2021-11-08 13:39:12 101

转载 git rebase和merge的区别,以及为什么不能在common branch做git rebase的原因

original link:

2021-11-04 10:10:26 159

原创 GDB 插件memo

GEF: https://gef.readthedocs.io/en/master/PEDA: https://github.com/longld/peda

2021-10-14 15:48:00 104

转载 深入学习linux内存知识备忘

内存管理与分页机制, 及malloc(0) 实际获取内存的大小:https://blog.csdn.net/apollon_krj/article/details/53869173sbrk、brk、mmap、munmap, sbrk/brk 控制heap;mmap/munmap控制heap与stack之间的区域:https://blog.csdn.net/Apollon_krj/article/details/54565768mmap深入:https://www.cnblogs.com/huxiao-.

2021-10-13 14:56:00 122

原创 使用第三方静态库产生crash的处理思路

确认编译器是否一致, 调用代码编译器和第三方静态库的编译器不一致, 可能会导致内存布局不同。确认引用的系统头文件是否一致,有些头文件包含了声明和定义,实现不同会导致问题。确认编译选项是否一致,有很多编译选项会导致内存偏移量改变,如果第三方的代码在头文件实现,且调用方和第三方代码编译选项不同,会导致调用方调用该内联函数的时候,按照自己这边编译选项分析出来的偏移量找第三方的成员变量的位置,从而导致crash。.........

2021-09-27 09:52:27 410

转载 std::mem_fn, std::mem_fun和 std::mem_fun_ref

https://elloop.github.io/c++/2015-12-21/learning-using-stl-23-std-mem-fn

2021-08-09 17:56:18 249

转载 std::thread 传参陷阱学习

https://www.cnblogs.com/5iedu/p/11633683.html

2021-08-05 16:54:30 183

转载 右值及右值引用备忘

https://liam.page/2016/12/11/rvalue-reference-in-Cpp/

2021-08-05 16:46:42 88

转载 Linux 32bit 进程内存分布结构图备忘

转载地址:https://www.huaweicloud.com/articles/d2f713c50043fdd695ae36e266d9a2b2.html

2021-05-13 13:45:35 144

转载 perf 工具与htop学习

perf入门学习:https://blog.csdn.net/qq_34556414/article/details/107181155htop学习:https://blog.csdn.net/zisefeizhu/article/details/78995694

2021-05-11 16:01:23 99

转载 C++标准类型转换模板表

摘自C++ primier 5th

2021-04-09 09:40:47 140

转载 c++ 虚函数及虚表的学习备忘

虚函数:https://www.cnblogs.com/malecrab/p/5572730.html虚表:https://www.cnblogs.com/malecrab/p/5573368.html

2021-03-24 16:06:47 78

转载 UNIX Domain Socket (IPC socket) Memo

https://beej.us/guide/bgipc/html/multi/unixsock.html

2021-02-05 17:53:16 100

转载 学习std::random_device

https://www.cnblogs.com/egmkang/archive/2012/09/06/2673253.html

2020-11-25 18:49:18 2017

原创 gdb 关闭pretty-printer来获得更多内容, 比如string的_M_dataplus和_M_p

gdb 默认开启pretty-printer, 这样导致一个问题,在debug 一个string对象的时候,这样就看不到string内部的一些结构在gdb terminal中可以用下面命令实现开关pretty-printerdisable pretty-printerenable pretty-printer......

2020-09-30 11:17:57 818

转载 【转】几种常见开源协议的介绍

原文地址:https://www.xlaoyu.info/2014/11/09/open-source-license-introduction/本文首发于https://www.xlaoyu.info/BSDBSD开源协议是一个给于使用者很大自由的协议。基本上使用者可以”为所欲为”,可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。但“为所欲为”的前提当你发布使用了BSD协议的代码,或则以BSD协议代码为基础做二次开发自己的产品时,需要满足三个条件:如果再发布的产品中包

2020-07-28 17:19:46 129

原创 AES-GCM加密算法概念学习笔记

资料:https://blog.csdn.net/T0mato_/article/details/53160772通过学习链接中的文章:1.密码本(ECB)模式有两个缺点,一是明文密文对应关系明显, 一是无法进行完整性校验。2.GCM在ECB模式的基础上, 加了计数器解决对应关系问题,另外加了Galois Authentication Code解决完整性校验的缺陷。......

2020-04-08 18:54:13 2169

原创 H.323抓包学习

抓一个最基本的包分析一下:H.323 链接建立包含H.225和H.245两部分, H.225主要用来交互H.245地址, 这样设计主要因为在实际环境中,经常会部署h.323 gatekeeper,GK可以用来做呼叫控制等功能,h.323 终端和GK之间用h.225 实现注册和控制等功能, h.245主要用来交换媒体能力,确定主从关系和打开媒体通道。这里抓的包是两个h.323 终端直连的case......

2019-08-11 15:18:28 3779 1

原创 linux ss 命令学习

ss命令用来查看socket的统计信息, 它显示的信息和netstat类似,它能显示更多的tcp和状态相关的信息。使用例子:可以看到ss命令会将进程pid也显示出来...

2019-08-11 14:57:50 393

转载 mac地址表,arp缓存表和路由表

源地址:https://blog.51cto.com/dengqi/1223132学习总结:1.mac地址表是交换机维护的,用来在数据链路层转发数据。2.arp缓存表是每个主机维护的ip与mac的对应表。3.路由表是网关维护的,用来在网络层转发数据。...

2019-08-07 17:57:01 1249

原创 SIP 协议抓包学习笔记

SIP(Session Initiation Protocol,会话初始协议)是由IETF(Internet Engineering Task Force,因特网工程任务组)制定的多媒体通信协议。它是一个基于文本的应用层控制协议,用于创建、修改和释放一个或多个参与者的会话。SIP 是一种源于互联网的IP 语音会话控制协议,具有灵活、易于实现、便于扩展等特点 [1]。想要完整的学习sip协议, 可以......

2019-07-21 13:12:38 6868

原创 关于server状态机编程的memo

假设状态流程为enum{STATUS_IDLE,,STATUS_CONNECTING,STATUS_OPEN,STATUS_CLOSING,STATUS_CLOSED};所有带ING的中间状态都需要有time out的保护

2019-03-12 13:41:53 131

原创 Git 创建本地分支并指定关联的远程分支备忘

git checkout -b local_branch origin/remote_branch //create a branch and switchgit fetch origin remote_branch:local_branch //create a branch

2019-01-16 17:03:47 862 1

转载 (转)用C++11的std::async代替线程的创建, 以及std::future,std::promise和std::packaged_task的使用

转载地址:https://www.cnblogs.com/qicosmos/p/3534211.htmlc++11中增加了线程,使得我们可以非常方便的创建线程,它的基本用法是这样的:void f(int n);std::thread t(f, n + 1);t.join();但是线程毕竟是属于比较低层次的东西,有时候使用有些不便,比如我希望获取线程函数的返回结果的时候,我就不能直接通过...

2018-09-19 23:18:58 280

转载 Linux /proc/pid目录下各文件含义

转载地址: https://www.cnblogs.com/youxin/p/4980058.html 详细描述 http://blog.sina.com.cn/s/blog_6b3765230100lcim.html

2018-09-10 15:50:36 380

原创 信号处理函数编码原则备忘

很多服务器都会涉及suspend, resume等操作,这个时候都要用到信号: $kill -l 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1 ...

2018-08-03 16:42:21 539

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除