
工作随笔
文章平均质量分 71
工作随笔-记录工作中解决问题的技巧
dlz0836
这个作者很懒,什么都没留下…
展开
-
OpenSSL编译安装(二)
说明 OpenSSL 工作正常。编辑用户配置文件(如。原创 2025-04-02 16:07:54 · 141 阅读 · 0 评论 -
编译和安装openssl-1.0.2 (一)
通过以上修正和验证,可以确保 OpenSSL 1.0.2u 正确编译并隔离于系统库,同时支持 zlib 压缩功能。原创 2025-04-02 14:35:58 · 236 阅读 · 0 评论 -
OpenSSH 移植方案
以下是针对 OpenSSH 移植方案的潜在遗漏点和优化方向,涵盖 、、和。原创 2025-04-01 17:55:12 · 689 阅读 · 0 评论 -
笔记-移植 libssh2 到新的平台
如果一切顺利,这个过程会自动生成合适的 Makefile,完成构建。通常已经适配了多种平台和配置,可以自动为你生成正确的构建环境。的源码包通常已经包含了 CMakeLists.txt。文件,而不是自己编写。到新的平台,通常你会选择使用。文件,这个文件定义了如何构建。原创 2025-03-27 10:20:52 · 174 阅读 · 0 评论 -
代码移植 libssh2,通常步骤:
代码中的一个 SSH 代理示例,展示了如何建立 SSH 连接、认证等流程。编译并测试,确保 SSH 连接、认证、命令执行功能正常。编写 SSH 客户端,处理认证、命令执行等逻辑。如果你的移植目标是一个嵌入式系统,可能需要调整。目录包含头文件,确保你的代码能正确包含。的 socket 处理方式,如。的核心源代码,必须移植。的逻辑,修改代码,使用。目录中的测试代码,比如。相关代码也被正确编译。进行 SSH 登录。原创 2025-03-27 10:17:02 · 21 阅读 · 0 评论 -
libssh2 源代码梳理
跟踪 libssh2.c → session.c → transport.c → channel.c,了解 SSH 连接的完整流程。从 example/ 目录入手,看 ssh2_exec.c 和 ssh2_simple.c,了解 API 调用顺序。测试代码:修改 example/ssh2_exec.c 让它运行你自己的 SSH 连接,打印更多日志,看看执行流程。深入 userauth.c、kex.c、sftp.c,查看具体实现细节。阅读 libssh2.h,掌握 API 提供的功能和参数。原创 2025-03-26 16:26:00 · 366 阅读 · 0 评论 -
ubuntu fatal: unable to access ‘https://github.com/libssh2/libssh2.git/‘: gnutls_handshake() failed:
导致 GnuTLS 兼容性问题。ubuntu从git下载源码报错。,无法正确建立 SSL 连接。,导致 HTTPS 连接失败。尝试切换 Git 使用。原创 2025-03-26 15:31:03 · 122 阅读 · 0 评论 -
锁-随笔笔记
临界区临界区(Critical Section)是指一段代码或资源的访问区域,这段代码在多线程或多进程环境下被多个线程或进程同时访问时,会导致数据不一致或不可预期的问题。因此,临界区需要保护,保证同一时间只有一个线程或进程能够进入执行。原创 2025-01-24 17:59:30 · 807 阅读 · 0 评论 -
C实现检查和过滤非法字符的函数
【代码】C实现检查和过滤非法字符的函数。原创 2025-01-23 15:29:05 · 173 阅读 · 0 评论 -
c++类型转换编译报错解决
类型参数的函数,而两者类型不匹配。的数据内容确实可以安全地作为。,原因是在代码中尝试将类型为。中的内容可以被安全地视为。原创 2025-01-14 10:49:06 · 294 阅读 · 0 评论 -
svn update 代码冲突,怎么处理
选择“我的修改”版本,即保留本地的更改。:自动选择当前版本的修改。原创 2025-01-09 15:51:17 · 327 阅读 · 0 评论 -
git大文件中断失败
根据错误信息,问题可能与网络连接中断或 Git 配置有关。原创 2025-01-03 10:33:42 · 329 阅读 · 0 评论 -
Windows Qt 6.5.x 源码编译
它可能已作为 Visual Studio 或 Qt 的组件安装。如果是这种情况,您可以跳过此步骤。如果您确实想要或需要安装 CMake,您可以从官网获取它Git - 下载软件包Perl 下载 - www.perl.orgIndex of /qt/archive/qt/6.5/6.5.3/single/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror解压到一个合适的目录。例如:D:\wireshark\qt-everywhere-src-6.5.3。原创 2025-01-02 17:20:15 · 1049 阅读 · 0 评论 -
git安装
装 Git 时,你可以根据自己的需求选择不同的选项。在 Windows 上安装 Git 时,Git 提供了一些常见的安装选项,你可以在安装过程中根据需要选择。以下是安装 Git 时常见的选项及其说明:你可以从 Git 官方网站下载安装程序: 点击下载后,执行安装程序并按照以下步骤进行配置。在安装过程中,Git 会提示你进行多个选项的配置。以下是每个选项的详细解释:对于大多数用户,以下是推荐的安装选项:选择这些选项可以确保 Git 在 Windows 上的正常使用,并提供较好的跨平台开发体验。原创 2025-01-01 11:32:22 · 981 阅读 · 0 评论 -
git clone git@github失败怎么办
遇到类似这样的错误,通常是因为网络连接问题。原创 2025-01-01 11:26:02 · 1175 阅读 · 0 评论 -
windows 怎么使用git 命令
在上执行。原创 2025-01-01 11:15:32 · 1771 阅读 · 0 评论 -
工作笔记-Minicom
是一个功能强大的基于文本的串口通信软件,主要用于在 Linux/Unix 系统中与串口设备通信。它类似于 Windows 下的,常用于调试嵌入式设备、路由器、交换机等支持串口接口的设备。原创 2024-12-20 13:20:03 · 330 阅读 · 0 评论 -
工作笔记-组播业务流量经过路由器源mac是否发生变化
交换机:组播业务流量的源 MAC 地址不会发生变化,因为交换机只是基于目的 MAC 地址转发帧,并不修改源地址。路由器:组播业务流量的源 MAC 地址会发生变化,因为路由器会重新封装数据包,使用自己的出接口 MAC 地址作为新的源地址。多层交换机:类似于路由器,源 MAC 地址会发生变化,尤其是跨越多个子网时。因此,组播业务流量的源 MAC 地址是否变化取决于经过的设备。如果经过的是交换机(Layer 2),源 MAC 地址一般不会变化;原创 2024-12-20 11:15:32 · 521 阅读 · 0 评论 -
工作笔记-receive RsT for a non-existent connection, drop it.
标志用于立即中断一个连接。非存在连接是指接收到的 RST 包对应的连接在系统中不存在。丢弃 RST 包意味着忽略那些没有对应现有连接的 RST 包,因为没有有效连接需要重置。丢弃它们是为了避免系统陷入错误状态或浪费资源。在网络应用(如防火墙、代理、网络监控软件等)中,丢弃不可识别或不需要的 RST 包是一种常见的防御机制,能够确保系统的稳定性和安全性。总结来说,接收到一个针对不存在连接的 RST 包,意味着发生了错误或不正常的网络行为,正确的响应是丢弃这个包,因为没有连接需要重置。原创 2024-12-19 16:13:18 · 264 阅读 · 0 评论 -
syslog和log有什么区别
特性LogSyslog定义一般的日志记录一个标准化的日志传输和记录协议格式没有固定格式有统一的格式:PRI、HEADER、MSG使用场景本地记录事件集中式记录和远程收集日志协议不依赖协议,通常写入文件使用标准协议(UDP、TCP)进行日志传输日志级别自定义,应用程序可以自由定义定义了标准的日志级别(如DEBUGINFO等)工具tailcatless等查看日志工具专门的syslog服务和客户端,如rsyslog等简而言之,syslog。原创 2024-12-17 17:51:23 · 798 阅读 · 0 评论 -
查看线程命令
ps -eLf或:查看所有线程或某个进程的线程。top -H或htop:实时查看进程及线程信息。pstree -pT:树状显示进程及线程关系。:查看进程及其线程的详细信息。这些工具和命令可以帮助查看并管理系统中的线程信息。原创 2024-12-16 15:25:38 · 1206 阅读 · 0 评论 -
工作笔记-IDB
idb_t结构体包含了对象的索引、数据缓冲区、ID、标志以及一些其他的元数据,通常用于管理和操作系统中的对象。这些字段允许对对象进行存储、读取、操作和标识,适用于需要管理大量对象的系统,比如通信协议、设备管理或 SNMP 代理等。/* 定义返回状态,默认设置为 OK *//* 在此声明局部变量 *//* 变量,用于存储计数器值 *//* 一些用于索引和处理的临时变量 *//* 验证当前对象是否有效 */= OK) /* 如果验证失败 *//* 返回错误请求映射 */原创 2024-12-12 14:05:06 · 979 阅读 · 0 评论 -
工作随笔-MIB Browser读取IP地址时显示值为负值
问题现象下:wireshark抓包 分析报文找到对应的IDB 将 INTEGER 改为 IpAddress发现字符串反序了网络字节序转换即可原创 2024-12-03 20:16:33 · 145 阅读 · 0 评论 -
工作随笔-避免程序短时间内重复执行同一个任务
需求: 一个函数接口具有记录日志的功能,日志记录登录失败者的ip地址,但是这个接口在短时间内会多次被调用,会重复记录地址同一个地址,为了避免短时间内重复记录日志怎么解决?原创 2024-12-02 16:36:16 · 564 阅读 · 0 评论 -
工作笔记-系统调用
操作系统内核运行在特权模式(Ring 0),而用户程序运行在用户模式(Ring 3)。为了确保系统的安全性和稳定性,用户程序无法直接访问硬件资源或执行特权操作。系统调用正是用户程序与内核交互的一种机制,通过它,用户程序能够请求操作系统提供特定的服务,如打开文件、创建进程、分配内存等。系统调用是操作系统提供给用户程序的接口,用户通过系统调用请求操作系统执行一些特权操作。了解系统调用的原理和常见类型,能帮助我们更高效地编写程序,特别是在需要直接与操作系统底层交互的场景中。原创 2024-12-04 12:46:43 · 520 阅读 · 0 评论 -
工作笔记-什么是 I/O 向量?
I/O 向量,简单来说,就是一种处理多个数据块的方式,特别是用来进行输入(读)或输出(写)操作时。一次性操作多个数据块,而不需要多次重复执行操作。I/O 向量(I/O vector)是通过一个数组结构,将多个缓冲区的数据一次性传递给系统调用(如readv和writev)进行处理。通过这种方式,操作系统能够高效地在多个缓冲区之间进行数据的输入输出,避免了多次调用系统函数,提高了性能,尤其适用于大数据块的读写操作。在网络编程、文件操作等场景中非常有用。原创 2024-12-03 23:54:12 · 1048 阅读 · 0 评论