Updated: October 28, 2024 |
This example covers the use case where the client retrieves the current default interface.
qwf_net_IfName_t ifName; // holds the IfName string qwf_net_InterfaceData_t ifaceData; // holds the interface data // API calls assume QWF NET initialized and QWF Context in variable pCtx. // Query NET MGR to get the current default interface qwf_net_Results_e rc = qwf_net_GetDefaultInterface(pCtx, &ifName); // Output the interface name if (NET_OK == rc) { printf("Default network interface: %s\n", ifName); } else { printf("Error getting default interface! Error: %d\n", rc); } // Query to get information for the default interface rc = qwf_net_GetInterfaceData(pCtx, &ifName, &ifaceData); // Output some of the relevent interface information if (NET_OK == rc) { printf("Interface=%s, connType=%d, connected=%s, hasIP=%s, ", ifaceData.name, ifaceData.ifType, (ifaceData.connected ? "true" : "false"), (ifaceData.hasIpAddr ? "true" : "false")); printf("hasIP4=%s, IP4addr=%s, IP4mask=%s, gateway=%s,", (ifaceData.ip4 ? "true" : "false"), ifaceData.ip4Address, ifaceData.ip4Netmask, ifaceData.ip4Gateway); printf("hasIP6=%s, IP6addr=%s, IP6prefix_len=%s, gateway=%s,", (ifaceData.ip6 ? "true" : "false"), ifaceData.ip6Address, ifaceData.ip6NetPrefixLen, ifaceData.ip6Gateway); printf("broadcast=%s, search_domain=%s, ip4_dns_1=%s, ip4_dns_2=%s,\ ip6_dns_2=%s, ip6_dns_2=%s", ifaceData.broadcast, ifaceData.searchDomain, ifaceData.ip4NameServers[0], ifaceData.ip4NameServers[1], ifaceData.ip6NameServers[0], ifaceData.ip6NameServers[1]); } else { printf("Error getting interface data! Error: %d\n", rc); }