repositories
/
deb_libnfs.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
2738507
)
randomize the initial rpc xid to avoid reply cache collision
author
Steve Cai
<steve.cai@hulu.com>
Tue, 26 Feb 2013 00:40:29 +0000
(16:40 -0800)
committer
Steve Cai
<steve.cai@hulu.com>
Tue, 26 Feb 2013 00:40:29 +0000
(16:40 -0800)
lib/init.c
patch
|
blob
|
blame
|
history
diff --git
a/lib/init.c
b/lib/init.c
index bbcfb86fa52047a6c8730ef439341d594555eecb..06f6e4bbb156d8e021d775ecdf6a234bd23663ce 100644
(file)
--- a/
lib/init.c
+++ b/
lib/init.c
@@
-25,6
+25,7
@@
#include <string.h>
#include <stdlib.h>
#include <assert.h>
+#include <time.h>
#include "slist.h"
#include "libnfs-zdr.h"
#include "libnfs.h"
@@
-34,6
+35,7
@@
struct rpc_context *rpc_init_context(void)
{
struct rpc_context *rpc;
+ static uint32_t salt = 0;
rpc = malloc(sizeof(struct rpc_context));
if (rpc == NULL) {
@@
-59,7
+61,8
@@
struct rpc_context *rpc_init_context(void)
free(rpc);
return NULL;
}
- rpc->xid = 1;
+ rpc->xid = salt + time(NULL);
+ salt += 0x01000000;
rpc->fd = -1;
return rpc;