*/
#include <linux/utsname.h>
+#include <linux/config.h>
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/major.h>
.poolinfo = &poolinfo_table[0],
.name = "input",
.limit = 1,
- .lock = __SPIN_LOCK_UNLOCKED(&input_pool.lock),
+ .lock = SPIN_LOCK_UNLOCKED,
.pool = input_pool_data
};
.name = "blocking",
.limit = 1,
.pull = &input_pool,
- .lock = __SPIN_LOCK_UNLOCKED(&blocking_pool.lock),
+ .lock = SPIN_LOCK_UNLOCKED,
.pool = blocking_pool_data
};
.poolinfo = &poolinfo_table[1],
.name = "nonblocking",
.pull = &input_pool,
- .lock = __SPIN_LOCK_UNLOCKED(&nonblocking_pool.lock),
+ .lock = SPIN_LOCK_UNLOCKED,
.pool = nonblocking_pool_data
};
return twothirdsMD4Transform(daddr, hash);
}
+EXPORT_SYMBOL(secure_ipv6_port_ephemeral);
#endif
#if defined(CONFIG_IP_DCCP) || defined(CONFIG_IP_DCCP_MODULE)
*/
unsigned int get_random_int(void)
{
- unsigned int val = 0;
-
-#ifdef CONFIG_X86_HAS_TSC
- rdtscl(val);
-#endif
/*
* Use IP's RNG. It suits our purpose perfectly: it re-keys itself
* every second, from the entropy pool (and thus creates a limited
* drain on it), and uses halfMD4Transform within the second. We
* also mix it with jiffies and the PID:
*/
- return secure_ip_id(current->pid + jiffies + (int)val);
+ return secure_ip_id(current->pid + jiffies);
}
/*