-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
net.conv: rename functions to match other langs, making them easier t… (
- Loading branch information
1 parent
bf00ac6
commit c3ff4b2
Showing
4 changed files
with
95 additions
and
59 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,66 +1,102 @@ | ||
module conv | ||
|
||
// htn64 converts a the 64 bit value `host` to the net format (htonll) | ||
// htn64 - DON'T USE, use hton64 instead | ||
[deprecated: 'use hton64() instead'] | ||
[deprecated_after: '2023-12-31'] | ||
pub fn htn64(host u64) u64 { | ||
return hton64(host) | ||
} | ||
|
||
// hton64 converts the 64 bit value `host` to the net format (htonll) | ||
pub fn hton64(host u64) u64 { | ||
$if little_endian { | ||
// vfmt off | ||
return ( | ||
((host >> 56) & 0x00000000_000000FF) | | ||
((host >> 40) & 0x00000000_0000FF00) | | ||
((host >> 24) & 0x00000000_00FF0000) | | ||
((host >> 8) & 0x00000000_FF000000) | | ||
((host << 8) & 0x000000FF_00000000) | | ||
((host << 24) & 0x0000FF00_00000000) | | ||
((host << 40) & 0x00FF0000_00000000) | | ||
((host << 56) & 0xFF000000_00000000) | ||
) | ||
return ((host >> 56) & 0x00000000_000000FF) | | ||
((host >> 40) & 0x00000000_0000FF00) | | ||
((host >> 24) & 0x00000000_00FF0000) | | ||
((host >> 8) & 0x00000000_FF000000) | | ||
((host << 8) & 0x000000FF_00000000) | | ||
((host << 24) & 0x0000FF00_00000000) | | ||
((host << 40) & 0x00FF0000_00000000) | | ||
((host << 56) & 0xFF000000_00000000) | ||
// vfmt on | ||
} $else { | ||
return host | ||
} | ||
} | ||
|
||
// htn32 converts the 32 bit value `host` to the net format (htonl) | ||
// htn32 - DON'T USE, use hton32 instead | ||
[deprecated: 'use hton32() instead'] | ||
[deprecated_after: '2023-12-31'] | ||
pub fn htn32(host u32) u32 { | ||
return hton32(host) | ||
} | ||
|
||
// hton32 converts the 32 bit value `host` to the net format (htonl) | ||
pub fn hton32(host u32) u32 { | ||
$if little_endian { | ||
// vfmt off | ||
return ( | ||
((host >> 24) & 0x0000_00FF) | | ||
((host >> 8) & 0x0000_FF00) | | ||
((host << 8) & 0x00FF_0000) | | ||
((host << 24) & 0xFF00_0000) | ||
) | ||
return ((host >> 24) & 0x0000_00FF) | | ||
((host >> 8) & 0x0000_FF00) | | ||
((host << 8) & 0x00FF_0000) | | ||
((host << 24) & 0xFF00_0000) | ||
// vfmt on | ||
} $else { | ||
return host | ||
} | ||
} | ||
|
||
// htn16 converts the 16 bit value `host` to the net format (htons) | ||
// htn16 - DON'T USE, use hton16 instead | ||
[deprecated: 'use hton16() instead'] | ||
[deprecated_after: '2023-12-31'] | ||
pub fn htn16(host u16) u16 { | ||
return hton16(host) | ||
} | ||
|
||
// hton16 converts the 16 bit value `host` to the net format (htons) | ||
pub fn hton16(host u16) u16 { | ||
$if little_endian { | ||
// vfmt off | ||
return ( | ||
((host >> 8) & 0x00FF) | | ||
((host << 8) & 0xFF00) | ||
) | ||
return ((host >> 8) & 0x00FF) | | ||
((host << 8) & 0xFF00) | ||
// vfmt on | ||
} $else { | ||
return host | ||
} | ||
} | ||
|
||
// nth64 converts the 64 bit value `net` to the host format (ntohll) | ||
// nth64 - DON'T USE, use ntoh64 instead | ||
[deprecated: 'use ntoh64() instead'] | ||
[deprecated_after: '2023-12-31'] | ||
pub fn nth64(net u64) u64 { | ||
return htn64(net) | ||
return ntoh64(net) | ||
} | ||
|
||
// nth32 converts the 32 bit value `net` to the host format (ntohl) | ||
// ntoh64 converts the 64 bit value `net` to the host format (ntohll) | ||
pub fn ntoh64(net u64) u64 { | ||
return hton64(net) | ||
} | ||
|
||
// nth32 - DON'T USE, use ntoh32 instead | ||
[deprecated: 'use ntoh32() instead'] | ||
[deprecated_after: '2023-12-31'] | ||
pub fn nth32(net u32) u32 { | ||
return htn32(net) | ||
return ntoh32(net) | ||
} | ||
|
||
// ntoh32 converts the 32 bit value `net` to the host format (ntohl) | ||
pub fn ntoh32(net u32) u32 { | ||
return hton32(net) | ||
} | ||
|
||
// nth16 converts the 16 bit value `net` to the host format (ntohs) | ||
// nth16 - DON'T USE, use ntoh16 instead | ||
[deprecated: 'use ntoh16() instead'] | ||
[deprecated_after: '2023-12-31'] | ||
pub fn nth16(net u16) u16 { | ||
return htn16(net) | ||
return ntoh16(net) | ||
} | ||
|
||
// ntoh16 converts the 16 bit value `net` to the host format (ntohs) | ||
pub fn ntoh16(net u16) u16 { | ||
return hton16(net) | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters