mirror of
				https://github.com/PabloMK7/citra.git
				synced 2025-10-31 13:50:03 +00:00 
			
		
		
		
	Services/UDS: Store the entire NetworkInfo structure that was used to create the network.
It will be needed when generating the beacon frames.
This commit is contained in:
		
							parent
							
								
									9771615f16
								
							
						
					
					
						commit
						4243c1198f
					
				
					 1 changed files with 5 additions and 13 deletions
				
			
		|  | @ -38,11 +38,8 @@ static std::unordered_map<u32, Kernel::SharedPtr<Kernel::Event>> bind_node_event | ||||||
| // Since we're not actually interacting with physical radio waves, this is just a dummy value.
 | // Since we're not actually interacting with physical radio waves, this is just a dummy value.
 | ||||||
| static u8 network_channel = DefaultNetworkChannel; | static u8 network_channel = DefaultNetworkChannel; | ||||||
| 
 | 
 | ||||||
| // The identifier of the network kind, this is used to filter away networks that we're not interested in.
 | // Information about the network that we're currently connected to.
 | ||||||
| static u32 wlan_comm_id = 0; | static NetworkInfo network_info; | ||||||
| 
 |  | ||||||
| // Application data that is sent when broadcasting the beacon frames.
 |  | ||||||
| static std::vector<u8> application_data; |  | ||||||
| 
 | 
 | ||||||
| /**
 | /**
 | ||||||
|  * NWM_UDS::Shutdown service function |  * NWM_UDS::Shutdown service function | ||||||
|  | @ -244,12 +241,10 @@ static void BeginHostingNetwork(Interface* self) { | ||||||
| 
 | 
 | ||||||
|     LOG_DEBUG(Service_NWM, "called"); |     LOG_DEBUG(Service_NWM, "called"); | ||||||
| 
 | 
 | ||||||
|     NetworkInfo network_info; |  | ||||||
|     Memory::ReadBlock(network_info_address, &network_info, sizeof(NetworkInfo)); |     Memory::ReadBlock(network_info_address, &network_info, sizeof(NetworkInfo)); | ||||||
| 
 | 
 | ||||||
|     connection_status.status = static_cast<u32>(NetworkStatus::ConnectedAsHost); |     connection_status.status = static_cast<u32>(NetworkStatus::ConnectedAsHost); | ||||||
|     connection_status.max_nodes = network_info.max_nodes; |     connection_status.max_nodes = network_info.max_nodes; | ||||||
|     wlan_comm_id = network_info.wlan_comm_id; |  | ||||||
| 
 | 
 | ||||||
|     // There's currently only one node in the network (the host).
 |     // There's currently only one node in the network (the host).
 | ||||||
|     connection_status.total_nodes = 1; |     connection_status.total_nodes = 1; | ||||||
|  | @ -263,9 +258,6 @@ static void BeginHostingNetwork(Interface* self) { | ||||||
|     if (network_info.channel != 0) |     if (network_info.channel != 0) | ||||||
|         network_channel = network_info.channel; |         network_channel = network_info.channel; | ||||||
| 
 | 
 | ||||||
|     // Clear the pre-existing application data.
 |  | ||||||
|     application_data.clear(); |  | ||||||
| 
 |  | ||||||
|     connection_status_event->Signal(); |     connection_status_event->Signal(); | ||||||
| 
 | 
 | ||||||
|     // TODO(Subv): Start broadcasting the network, send a beacon frame every 102.4ms.
 |     // TODO(Subv): Start broadcasting the network, send a beacon frame every 102.4ms.
 | ||||||
|  | @ -333,8 +325,8 @@ static void SetApplicationData(Interface* self) { | ||||||
|         return; |         return; | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     application_data.resize(size); |     network_info.application_data_size = size; | ||||||
|     Memory::ReadBlock(address, application_data.data(), size); |     Memory::ReadBlock(address, network_info.application_data.data(), size); | ||||||
| 
 | 
 | ||||||
|     rb.Push(RESULT_SUCCESS); |     rb.Push(RESULT_SUCCESS); | ||||||
| } | } | ||||||
|  | @ -379,7 +371,7 @@ NWM_UDS::NWM_UDS() { | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| NWM_UDS::~NWM_UDS() { | NWM_UDS::~NWM_UDS() { | ||||||
|     application_data.clear(); |     network_info = {}; | ||||||
|     bind_node_events.clear(); |     bind_node_events.clear(); | ||||||
|     connection_status_event = nullptr; |     connection_status_event = nullptr; | ||||||
|     recv_buffer_memory = nullptr; |     recv_buffer_memory = nullptr; | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue