/* Lists connected networks by profile */ public List <string> NetworksByProfileList(NET_FW_PROFILE_TYPE2_ profile, NetworkConnectivityLevels level = NetworkConnectivityLevels.All) { List <string> networks = new List <string>(); NetworkCategory profileName = NetworkCategory.Public; switch (profile) { case NET_FW_PROFILE_TYPE2_.NET_FW_PROFILE2_DOMAIN: profileName = NetworkCategory.Authenticated; break; case NET_FW_PROFILE_TYPE2_.NET_FW_PROFILE2_PRIVATE: profileName = NetworkCategory.Private; break; case NET_FW_PROFILE_TYPE2_.NET_FW_PROFILE2_PUBLIC: profileName = NetworkCategory.Public; break; } //Install-Package WindowsAPICodePack-Core NetworkCollection nCollection = NetworkListManager.GetNetworks(level); foreach (Network net in nCollection) { if (net.Category == profileName) { networks.Add(net.Name); } } return(networks); }
public void FetchNetworkInfo() { INetworkClient networkInformation = new NetworkInformation(); ConnectionInfo connectionInfo = networkInformation.ConnectionInfo; string wifiSSID = connectionInfo.WlanInfo.SSID; bool isPasswordProtected = connectionInfo.WlanInfo.IsSecured; NetworkCategory category = connectionInfo.WlanInfo.NetworkCategory; bool isPublicNetwork = category == NetworkCategory.Public; string lanName = connectionInfo.LanInfo.Name; }
public IActionResult GetUserNetworkCategory() { // sp_getUserNetworkCategory string errorMessage = ""; bool isError = false; List <NetworkCategory> cats = new List <NetworkCategory>(); NpgsqlConnection conn = new NpgsqlConnection(_connstrWallet); conn.Open(); try { NpgsqlCommand cmd = new NpgsqlCommand("sp_getusernetworkcategory", conn); cmd.CommandType = CommandType.StoredProcedure; NpgsqlDataReader reader = cmd.ExecuteReader(); while (reader.Read()) { NetworkCategory nc = new NetworkCategory(); nc.CategoryId = reader.GetInt32(0); nc.Category = reader.GetString(1); cats.Add(nc); } reader.Dispose(); } catch (Exception ex) { isError = true; errorMessage = "Database related Error"; } finally { conn.Close(); } if (isError) { ErrorObject ro = new ErrorObject(); ro.message = errorMessage; ro.error = true; return(Json(ro)); } return(Json(cats)); }
public Dictionary <string, List <string> > NetworksByProfileDict(NET_FW_PROFILE_TYPE2_ profile, NetworkConnectivityLevels level = NetworkConnectivityLevels.All) { var networks = new Dictionary <string, List <string> >(); //populate interface lookup var adapterLookup = new Dictionary <string, string>(); NetworkInterface[] adapters = NetworkInterface.GetAllNetworkInterfaces(); foreach (NetworkInterface adapter in adapters) { //from:{E46DFF2D-EB92-4A84-A0D3-01DDD2DC041E} // to: e46dff2d-eb92-4a84-a0d3-01ddd2dc041e logger.Debug("Adapter: {0}={1}", adapter.Id.ToLower().Replace("{", "").Replace("}", ""), adapter.Name); adapterLookup.Add(adapter.Id.ToLower().Replace("{", "").Replace("}", ""), adapter.Name); } NetworkCategory profileName = NetworkCategory.Public; switch (profile) { case NET_FW_PROFILE_TYPE2_.NET_FW_PROFILE2_DOMAIN: profileName = NetworkCategory.Authenticated; break; case NET_FW_PROFILE_TYPE2_.NET_FW_PROFILE2_PRIVATE: profileName = NetworkCategory.Private; break; case NET_FW_PROFILE_TYPE2_.NET_FW_PROFILE2_PUBLIC: profileName = NetworkCategory.Public; break; } /* * NetworkCollection nCollection2 = NetworkListManager.GetNetworks(NetworkConnectivityLevels.All); * foreach (Network net in nCollection2) * { * if (net.IsConnected || net.IsConnectedToInternet) * { * Console.WriteLine(String.Format("CONNECTED: {0} {1} {2} {3}", net.Name, net.Category, net.DomainType, net.IsConnectedToInternet)); * } * else * { * Console.WriteLine(String.Format("Not connected: {0} {1} {2} {3}", net.Name, net.Category, net.DomainType, net.IsConnectedToInternet)); * } * } */ //Install-Package WindowsAPICodePack-Core NetworkCollection nCollection = NetworkListManager.GetNetworks(level); foreach (Network net in nCollection) { logger.Debug("Network: {0}={1}", net.Name, net.Category); if (net.Category == profileName) { var netAdapters = new List <string>(); var conns = net.Connections; if (conns.Count() == 0) { logger.Debug("No active connections for network"); } foreach (var c in conns) { if (adapterLookup.ContainsKey(c.AdapterId.ToString())) { logger.Debug("Found adapter: {0}", adapterLookup[c.AdapterId.ToString()]); netAdapters.Add(adapterLookup[c.AdapterId.ToString()]); } else { logger.Debug("Unknown adapter: {0}", c.AdapterId.ToString()); netAdapters.Add("Unknown"); } } networks.Add(net.Name, new List <string>()); foreach (var na in netAdapters) { networks[net.Name].Add(na); } } } return(networks); }