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 在 网络编程
每月 108 次下载
在 7 个crate中使用了(直接使用5个)
39KB
622 行
NetGauze IANA包
收集了非特定于单一协议的通用IANA定义。
开发者文档
添加对新地址及其后续地址族的支持
添加对地址族(AFI)或后续地址族(SAFI)的支持
- 将新的地址族添加到位于
src/address_family.rs
的pub enum AddressFamily
或pub enum SubsequentAddressFamily
。 - 我们使用地址族的驼峰命名法。
- 请记录地址族的相关RFC和IANA代码。
添加对地址类型的支持
由于并非所有 AddressFamily
和 SubsequentAddressFamily
都是有效的组合,我们引入了一个名为 pub enum AddressType
的枚举,用于定义一组有效组合,以确保在编译时只使用有效的AFI/SAFI。
- 将名称添加到位于
src/address_family.rs
的pub enum AddressType
。 - 命名约定如下:
{$AddressFamily}}{$SubsequentAddressFamily}
。 - 在
impl AddressType
中调整pub const fn address_family
和pub const fn subsequent_address_family
,使其返回新类型的正确 AddressFamily 和 $SubsequentAddressFamily。如果不这样做,编译器将抛出错误。 - 在
impl AddressType
中调整from_afi_safi
,使其为给定的 AFI 和 SAFI 返回新定义的{$AddressFamily}{$SubsequentAddressFamily}
。 - 编写测试!请参阅
test_address_type_check_ret_afi_safi
和test_address_type_try_from
。
依赖关系
~0.8–1.7MB
~36K SLoC