diff options
| author | Jeroen van Rijn <Kelimion@users.noreply.github.com> | 2023-03-02 13:45:12 +0100 |
|---|---|---|
| committer | Jeroen van Rijn <Kelimion@users.noreply.github.com> | 2023-03-02 13:45:12 +0100 |
| commit | c02ff3af27afc013336de24570bbbaf1d66643d0 (patch) | |
| tree | 22eac140af10f5227cc718eb1a82c83337abdf4a /core/net/common.odin | |
| parent | 13c6352b8e7302f741ac76f86863b416dd04a14a (diff) | |
Update comments
Diffstat (limited to 'core/net/common.odin')
| -rw-r--r-- | core/net/common.odin | 74 |
1 files changed, 25 insertions, 49 deletions
diff --git a/core/net/common.odin b/core/net/common.odin index 9e980e88e..6be377aad 100644 --- a/core/net/common.odin +++ b/core/net/common.odin @@ -22,10 +22,8 @@ package net import "core:runtime" /* - TUNEABLES -*/ + TUNEABLES - See also top of `dns.odin` for DNS configuration. -/* Determines the default value for whether dial_tcp() and accept_tcp() will set TCP_NODELAY on the new socket, and the client socket, respectively. This can also be set on a per-socket basis using the 'options' optional parameter to those procedures. @@ -44,25 +42,17 @@ import "core:runtime" However, you can avoid this by buffering things up yourself if you wish to send a lot of short data chunks, when TCP_NODELAY is enabled on that socket. */ -ODIN_NET_TCP_NODELAY_DEFAULT :: #config(ODIN_NET_TCP_NODELAY_DEFAULT, true) - -/* - See also top of `dns.odin` for DNS configuration. -*/ -/* - COMMON DEFINITIONS -*/ +ODIN_NET_TCP_NODELAY_DEFAULT :: #config(ODIN_NET_TCP_NODELAY_DEFAULT, true) +// COMMON DEFINITIONS Maybe :: runtime.Maybe General_Error :: enum { Unable_To_Enumerate_Network_Interfaces = 1, } -/* - `Platform_Error` is used to wrap errors returned by the different platforms that defy translation into a common error. -*/ +// `Platform_Error` is used to wrap errors returned by the different platforms that don't fit a common error. Platform_Error :: enum u32 {} /* @@ -93,7 +83,6 @@ Network_Error :: union { DNS_Error, } - Resolve_Error :: enum { Unable_To_Resolve = 1, } @@ -107,10 +96,7 @@ DNS_Error :: enum { System_Error, } -/* - SOCKET OPTIONS & DEFINITIONS -*/ - +// SOCKET OPTIONS & DEFINITIONS TCP_Options :: struct { no_delay: bool, } @@ -195,9 +181,7 @@ Network_Interface :: struct { }, } -/* - Empty bit set is unknown state. -*/ +// Empty bit set is unknown state. Link_States :: enum u32 { Up = 1, Down = 2, @@ -261,18 +245,14 @@ Address_Duplication :: enum i32 { Preferred = 4, } -/* - DNS DEFINITIONS -*/ - +// DNS DEFINITIONS DNS_Configuration :: struct { - /* - Configuration files. - */ + // Configuration files. resolv_conf: string, hosts_file: string, - // TODO: Allow loading these up with `reload_configuration()` call or the like so we don't have to do it each call. + // TODO: Allow loading these up with `reload_configuration()` call or the like, + // so we don't have to do it each call. name_servers: []Endpoint, hosts_file_entries: []DNS_Record, } @@ -295,25 +275,19 @@ DNS_Record_Type :: enum u16 { SRV = DNS_TYPE_SRV, } -/* - Base DNS Record. All DNS responses will carry a hostname and TTL (time to live) field. -*/ +// Base DNS Record. All DNS responses will carry a hostname and TTL (time to live) field. DNS_Record_Base :: struct { record_name: string, - ttl_seconds: u32, // The time in seconds that this service will take to update, after the record is updated. + ttl_seconds: u32, // The time in seconds that this service will take to update, after the record is updated. } -/* - An IP4 address that the domain name maps to. There can be any number of these. -*/ +// An IP4 address that the domain name maps to. There can be any number of these. DNS_Record_IP4 :: struct { using base: DNS_Record_Base, address: IP4_Address, } -/* - An IPv6 address that the domain name maps to. There can be any number of these. -*/ +// An IPv6 address that the domain name maps to. There can be any number of these. DNS_Record_IP6 :: struct { using base: DNS_Record_Base, address: IP6_Address, @@ -356,15 +330,17 @@ DNS_Record_MX :: struct { preference: int, } -// An endpoint for a service that is available through the domain name. -// This is the way to discover the services that a domain name provides. -// -// Clients MUST attempt to contact the host with the lowest priority that they can reach. -// If two hosts have the same priority, they should be contacted in the order according to their weight. -// Hosts with larger weights should have a proportionally higher chance of being contacted by clients. -// A weight of zero indicates a very low weight, or, when there is no choice (to reduce visual noise). -// -// The host may be "." to indicate that it is "decidedly not available" on this domain. +/* + An endpoint for a service that is available through the domain name. + This is the way to discover the services that a domain name provides. + + Clients MUST attempt to contact the host with the lowest priority that they can reach. + If two hosts have the same priority, they should be contacted in the order according to their weight. + Hosts with larger weights should have a proportionally higher chance of being contacted by clients. + A weight of zero indicates a very low weight, or, when there is no choice (to reduce visual noise). + + The host may be "." to indicate that it is "decidedly not available" on this domain. +*/ DNS_Record_SRV :: struct { // base contains the full name of this record. // e.g: _sip._tls.example.com |