projects
/
lcr.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
For DOV: LCR random number generator
[lcr.git]
/
message.c
diff --git
a/message.c
b/message.c
index
1e4d37d
..
cfda36b
100644
(file)
--- a/
message.c
+++ b/
message.c
@@
-30,10
+30,19
@@
void cleanup_message(void)
del_work(&message_work);
}
del_work(&message_work);
}
+unsigned int lcr_random = 0;
+
/* creates a new message with the given attributes. the message must be filled then. after filling, the message_put must be called */
struct lcr_msg *message_create(int id_from, int id_to, int flow, int type)
{
struct lcr_msg *message;
/* creates a new message with the given attributes. the message must be filled then. after filling, the message_put must be called */
struct lcr_msg *message_create(int id_from, int id_to, int flow, int type)
{
struct lcr_msg *message;
+ struct timeval now_tv;
+ struct timezone now_tz;
+
+ gettimeofday(&now_tv, &now_tz);
+ lcr_random = (lcr_random << 1) | (lcr_random >> 31);
+ lcr_random ^= now_tv.tv_sec;
+ lcr_random ^= now_tv.tv_usec;
message = (struct lcr_msg *)MALLOC(sizeof(struct lcr_msg));
if (!message)
message = (struct lcr_msg *)MALLOC(sizeof(struct lcr_msg));
if (!message)