master ohmu/fastfetch-openbsd / src / common / netif.h
ohmu  ·  2026-10-15
 1#pragma once
 2
 3#include "fastfetch.h"
 4
 5#ifndef _WIN32
 6    #include <net/if.h>
 7    #include <netinet/in.h>
 8#endif
 9
10typedef enum FFNetifDefaultRouteResultStatus: uint8_t {
11    FF_NETIF_UNINITIALIZED,
12    FF_NETIF_INVALID,
13    FF_NETIF_OK
14} FFNetifDefaultRouteResultStatus;
15
16typedef struct FFNetifDefaultRouteResult {
17    uint32_t ifIndex;
18
19#ifndef _WIN32
20    char ifName[IF_NAMESIZE + 1];
21    uint32_t preferredSourceAddrV4;
22#endif
23    enum FFNetifDefaultRouteResultStatus status;
24} FFNetifDefaultRouteResult;
25
26bool ffNetifGetDefaultRouteImplV4(FFNetifDefaultRouteResult* result);
27bool ffNetifGetDefaultRouteImplV6(FFNetifDefaultRouteResult* result);
28
29const FFNetifDefaultRouteResult* ffNetifGetDefaultRouteV4(void);
30const FFNetifDefaultRouteResult* ffNetifGetDefaultRouteV6(void);