mirror of
				https://github.com/monero-project/monero.git
				synced 2025-10-31 03:28:53 -04:00 
			
		
		
		
	Blockchain: get height of RingCT fork programmatically
Get height of the RingCT fork to start the output distributuon programmatically, instead of using a hardcoded index. If using a hardcoded index, when the hardfork tables are modified, this can cause segmentation faults or horrific privacy issues: https://codeberg.org/wownero/wownero/issues/488#issuecomment-2514880.
This commit is contained in:
		
							parent
							
								
									9866a0e902
								
							
						
					
					
						commit
						fe170698b1
					
				
					 1 changed files with 2 additions and 11 deletions
				
			
		|  | @ -2363,17 +2363,8 @@ void Blockchain::get_output_key_mask_unlocked(const uint64_t& amount, const uint | ||||||
| bool Blockchain::get_output_distribution(uint64_t amount, uint64_t from_height, uint64_t to_height, uint64_t &start_height, std::vector<uint64_t> &distribution, uint64_t &base) const | bool Blockchain::get_output_distribution(uint64_t amount, uint64_t from_height, uint64_t to_height, uint64_t &start_height, std::vector<uint64_t> &distribution, uint64_t &base) const | ||||||
| { | { | ||||||
|   // rct outputs don't exist before v4
 |   // rct outputs don't exist before v4
 | ||||||
|   if (amount == 0) |   if (amount == 0 && m_nettype != network_type::FAKECHAIN) | ||||||
|   { |     start_height = m_hardfork->get_earliest_ideal_height_for_version(HF_VERSION_DYNAMIC_FEE); | ||||||
|     switch (m_nettype) |  | ||||||
|     { |  | ||||||
|       case STAGENET: start_height = stagenet_hard_forks[3].height; break; |  | ||||||
|       case TESTNET: start_height = testnet_hard_forks[3].height; break; |  | ||||||
|       case MAINNET: start_height = mainnet_hard_forks[3].height; break; |  | ||||||
|       case FAKECHAIN: start_height = 0; break; |  | ||||||
|       default: return false; |  | ||||||
|     } |  | ||||||
|   } |  | ||||||
|   else |   else | ||||||
|     start_height = 0; |     start_height = 0; | ||||||
|   base = 0; |   base = 0; | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 jeffro256
						jeffro256