diff options
Diffstat (limited to 'src/common/netif.h')
| -rw-r--r-- | src/common/netif.h | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/src/common/netif.h b/src/common/netif.h new file mode 100644 index 0000000..d3984df --- /dev/null +++ b/src/common/netif.h @@ -0,0 +1,30 @@ +#pragma once + +#include "fastfetch.h" + +#ifndef _WIN32 + #include <net/if.h> + #include <netinet/in.h> +#endif + +typedef enum FF_A_PACKED FFNetifDefaultRouteResultStatus { + FF_NETIF_UNINITIALIZED, + FF_NETIF_INVALID, + FF_NETIF_OK +} FFNetifDefaultRouteResultStatus; + +typedef struct FFNetifDefaultRouteResult { + uint32_t ifIndex; + +#ifndef _WIN32 + char ifName[IF_NAMESIZE + 1]; + uint32_t preferredSourceAddrV4; +#endif + enum FFNetifDefaultRouteResultStatus status; +} FFNetifDefaultRouteResult; + +bool ffNetifGetDefaultRouteImplV4(FFNetifDefaultRouteResult* result); +bool ffNetifGetDefaultRouteImplV6(FFNetifDefaultRouteResult* result); + +const FFNetifDefaultRouteResult* ffNetifGetDefaultRouteV4(void); +const FFNetifDefaultRouteResult* ffNetifGetDefaultRouteV6(void); |