2023-09-26 16:26:15 +08:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
#include "fastfetch.h"
|
|
|
|
|
|
2025-08-07 16:35:42 +08:00
|
|
|
#ifndef _WIN32
|
2026-04-15 16:16:46 +08:00
|
|
|
#include <net/if.h>
|
|
|
|
|
#include <netinet/in.h>
|
2025-08-07 16:35:42 +08:00
|
|
|
#endif
|
|
|
|
|
|
2026-07-10 16:35:46 +08:00
|
|
|
typedef enum FFNetifDefaultRouteResultStatus: uint8_t {
|
2025-08-07 16:35:42 +08:00
|
|
|
FF_NETIF_UNINITIALIZED,
|
|
|
|
|
FF_NETIF_INVALID,
|
|
|
|
|
FF_NETIF_OK
|
|
|
|
|
} FFNetifDefaultRouteResultStatus;
|
|
|
|
|
|
|
|
|
|
typedef struct FFNetifDefaultRouteResult {
|
|
|
|
|
uint32_t ifIndex;
|
|
|
|
|
|
2026-03-29 09:28:49 +08:00
|
|
|
#ifndef _WIN32
|
2025-08-07 16:35:42 +08:00
|
|
|
char ifName[IF_NAMESIZE + 1];
|
|
|
|
|
uint32_t preferredSourceAddrV4;
|
2026-03-29 09:28:49 +08:00
|
|
|
#endif
|
2025-08-07 16:35:42 +08:00
|
|
|
enum FFNetifDefaultRouteResultStatus status;
|
|
|
|
|
} FFNetifDefaultRouteResult;
|
|
|
|
|
|
|
|
|
|
bool ffNetifGetDefaultRouteImplV4(FFNetifDefaultRouteResult* result);
|
|
|
|
|
bool ffNetifGetDefaultRouteImplV6(FFNetifDefaultRouteResult* result);
|
|
|
|
|
|
|
|
|
|
const FFNetifDefaultRouteResult* ffNetifGetDefaultRouteV4(void);
|
|
|
|
|
const FFNetifDefaultRouteResult* ffNetifGetDefaultRouteV6(void);
|