#iana #protocols

netgauze-iana

收集了非特定于单一协议的通用互联网名称及编号分配机构(IANA)定义

5个版本 (3个重大变更)

新增 0.4.1 2024年8月8日
0.4.0 2024年8月7日
0.3.0 2024年1月31日
0.2.0 2023年10月9日
0.1.0 2023年3月5日

#478网络编程

Download history 3/week @ 2024-04-18 1/week @ 2024-04-25 2/week @ 2024-05-02 2/week @ 2024-05-09 7/week @ 2024-05-16 17/week @ 2024-05-23 15/week @ 2024-05-30 12/week @ 2024-06-06 13/week @ 2024-06-13 14/week @ 2024-06-20 3/week @ 2024-06-27 5/week @ 2024-07-11 8/week @ 2024-07-18 14/week @ 2024-07-25 75/week @ 2024-08-01

每月 108 次下载
7 个crate中使用了(直接使用5个)

Apache-2.0

39KB
622

NetGauze IANA包

收集了非特定于单一协议的通用IANA定义。

开发者文档

添加对新地址及其后续地址族的支持

添加对地址族(AFI)或后续地址族(SAFI)的支持

  1. 将新的地址族添加到位于 src/address_family.rspub enum AddressFamilypub enum SubsequentAddressFamily
  2. 我们使用地址族的驼峰命名法。
  3. 请记录地址族的相关RFC和IANA代码。

添加对地址类型的支持

由于并非所有 AddressFamilySubsequentAddressFamily 都是有效的组合,我们引入了一个名为 pub enum AddressType 的枚举,用于定义一组有效组合,以确保在编译时只使用有效的AFI/SAFI。

  1. 将名称添加到位于 src/address_family.rspub enum AddressType
  2. 命名约定如下: {$AddressFamily}}{$SubsequentAddressFamily}
  3. impl AddressType 中调整 pub const fn address_familypub const fn subsequent_address_family,使其返回新类型的正确 AddressFamily 和 $SubsequentAddressFamily。如果不这样做,编译器将抛出错误。
  4. impl AddressType 中调整 from_afi_safi,使其为给定的 AFI 和 SAFI 返回新定义的 {$AddressFamily}{$SubsequentAddressFamily}
  5. 编写测试!请参阅 test_address_type_check_ret_afi_safitest_address_type_try_from

依赖关系

~0.8–1.7MB
~36K SLoC