Go语言技术文章
-
Go netlink 中,Execute 是 Send、Receive 和 Validate 的请求-回复封装;拆成 Send 加 Receive 后,可以在收发之间设置边界、读取已填充的消息头或自行决定校验时机。本文用原创代码和静态结构图说明两种写法的职责、multipart 回复、错误处理与选择场景。347 收藏 -
Go netlink的AttributeDecoder.Type返回基础类型,TypeFlags返回高位标志。通过离线属性示例说明位掩码、网络字节序、Nested与Flag的区别,以及载荷解析约束。442 收藏 -
Go netlink 的 Sequence 用来关联消息,PID 字段实际表示 netlink port ID。本文用请求、回包和多段消息说明两者的判断边界。495 收藏 -
Go netlink的Execute可收集多部分响应,应用再逐条解码协议载荷。结合Linux接口列表只读示例,说明Done处理、固定头与属性边界,以及超时和不完整结果的处理。172 收藏 -
Go netlink 的 AttributeEncoder.Nested 用嵌套编码器封装一组子属性,并自动设置 Nested 标志。本文从属性编号、字节序、编码错误到 Nested 解码,给出一套可维护的嵌套字段写法和发布前检查清单。456 收藏 -
Go netlink 发送只读查询消息时,重点是正确组合 family、消息类型和 Request、Dump 标志。本文用 mdlayher/netlink 说明 Dial、Message、Execute、分段回复与权限边界。356 收藏 -
Go gopacket 的 CaptureLength 是实际读入的字节数,Length 是原始报文长度。本文用 CaptureInfo、PacketMetadata 和 pcapgo Reader 说明两者的关系、截断判断与代码用法。319 收藏 -
gopacket 的 ErrorLayer 不是“截断”这个单一状态,而是解码链在某个位置失败后的错误层。本文区分 CaptureInfo 长度、Metadata().Truncated、协议长度字段和未知解码器,给出一套可落地的排查写法。405 收藏 -
gopacket 的 Lazy 控制解码时机,NoCopy 控制输入复制。结合缓冲区复用、按需取层和异步交付示例,说明四种配置及所有权、并发边界。335 收藏 -
用 gopacket/layers 构造 Ethernet、IPv4、UDP 和 Payload 层,开启长度与校验和修复,再通过 pcapgo.Writer 写入带文件头和捕获信息的离线 PCAP 文件。150 收藏 -
Go gopacket可通过LayerTypeTCP查询已有数据包,再受检断言为TCP层。本文给出完整离线示例,区分非TCP、解码错误和有效字段,并说明解码起点与负载生命周期。144 收藏 -
Go gopacket 可以直接把内存中的 []byte 按指定起始层解码成 Packet,再通过 Layers、Layer 和具体协议层读取以太网、IP、TCP 或 UDP 字段。本文给出一套可复用的内存帧解码写法,并说明错误层、Lazy、NoCopy 与批量解析的边界。217 收藏 -
gofpdf 调用 AddUTF8Font 成功后仍可能缺字。本文按字体目录、家族样式、字符覆盖和 UTF8CutFont 子集四层排查,并给出可复用的 Go 检查顺序。249 收藏 -
gofpdf 的 Cell 默认把当前位置移到右侧,MultiCell 输出多行后回到左边距并进入下一行。本文用坐标记录、CellFormat 和表格布局示例说明如何选择与排查。398 收藏 -
Go gofpdf 中,SetMargins 负责左、上、右三侧的内容边界,SetAutoPageBreak 的 margin 负责距离页底的自动分页触发线。本文用页面模型和最小代码说明两者的区别、组合方式与常见误区。142 收藏