service: nifm: Populate fields in GetCurrentNetworkProfile

Populates the current_address, subnet_mask, and gateway fields from the selected network interface.
This commit is contained in:
Morph 2021-08-21 11:09:08 -04:00
parent 878d0225c5
commit c1e2063c0d

View file

@ -277,13 +277,20 @@ private:
void GetCurrentNetworkProfile(Kernel::HLERequestContext& ctx) {
LOG_WARNING(Service_NIFM, "(STUBBED) called");
const SfNetworkProfileData network_profile_data{
const auto net_iface = Network::GetSelectedNetworkInterface();
const SfNetworkProfileData network_profile_data = [&net_iface] {
if (!net_iface) {
return SfNetworkProfileData{};
}
return SfNetworkProfileData{
.ip_setting_data{
.ip_address_setting{
.is_automatic{true},
.current_address{192, 168, 1, 100},
.subnet_mask{255, 255, 255, 0},
.gateway{192, 168, 1, 1},
.current_address{Network::TranslateIPv4(net_iface->ip_address)},
.subnet_mask{Network::TranslateIPv4(net_iface->subnet_mask)},
.gateway{Network::TranslateIPv4(net_iface->gateway)},
},
.dns_setting{
.is_automatic{true},
@ -308,6 +315,7 @@ private:
.passphrase{"yuzupassword"},
},
};
}();
ctx.WriteBuffer(network_profile_data);