StackGenVis: Alignment of Data, Algorithms, and Models for Stacking Ensemble Learning Using Performance Metrics
				https://doi.org/10.1109/TVCG.2020.3030352
			
			
		
			You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							28 lines
						
					
					
						
							750 B
						
					
					
				
			
		
		
	
	
							28 lines
						
					
					
						
							750 B
						
					
					
				var MAX_ALLOC = Math.pow(2, 30) - 1 // default in iojs
 | 
						|
 | 
						|
function checkBuffer (buf, name) {
 | 
						|
  if (typeof buf !== 'string' && !Buffer.isBuffer(buf)) {
 | 
						|
    throw new TypeError(name + ' must be a buffer or string')
 | 
						|
  }
 | 
						|
}
 | 
						|
 | 
						|
module.exports = function (password, salt, iterations, keylen) {
 | 
						|
  checkBuffer(password, 'Password')
 | 
						|
  checkBuffer(salt, 'Salt')
 | 
						|
 | 
						|
  if (typeof iterations !== 'number') {
 | 
						|
    throw new TypeError('Iterations not a number')
 | 
						|
  }
 | 
						|
 | 
						|
  if (iterations < 0) {
 | 
						|
    throw new TypeError('Bad iterations')
 | 
						|
  }
 | 
						|
 | 
						|
  if (typeof keylen !== 'number') {
 | 
						|
    throw new TypeError('Key length not a number')
 | 
						|
  }
 | 
						|
 | 
						|
  if (keylen < 0 || keylen > MAX_ALLOC || keylen !== keylen) { /* eslint no-self-compare: 0 */
 | 
						|
    throw new TypeError('Bad key length')
 | 
						|
  }
 | 
						|
}
 | 
						|
 |