summaryrefslogtreecommitdiffstats
path: root/include/rxrpc
diff options
context:
space:
mode:
authorDavid Howells <dhowells@redhat.com>2016-09-02 22:39:45 +0100
committerDavid Howells <dhowells@redhat.com>2016-09-04 21:41:39 +0100
commit5f2d9c44389e7cd9fe192570f6f20199bc861eb8 (patch)
tree1339480e8cf3b2efaa3f1543e7504e3eb0602408 /include/rxrpc
parentaf338a9ea60acc6337fe9fcdcf664aec2520e541 (diff)
downloadlinux-stable-5f2d9c44389e7cd9fe192570f6f20199bc861eb8.tar.gz
linux-stable-5f2d9c44389e7cd9fe192570f6f20199bc861eb8.tar.bz2
linux-stable-5f2d9c44389e7cd9fe192570f6f20199bc861eb8.zip
rxrpc: Randomise epoch and starting client conn ID values
Create a random epoch value rather than a time-based one on startup and set the top bit to indicate that this is the case. Also create a random starting client connection ID value. This will be incremented from here as new client connections are created. Signed-off-by: David Howells <dhowells@redhat.com>
Diffstat (limited to 'include/rxrpc')
-rw-r--r--include/rxrpc/packet.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/rxrpc/packet.h b/include/rxrpc/packet.h
index b2017440b765..3c6128e1fdbe 100644
--- a/include/rxrpc/packet.h
+++ b/include/rxrpc/packet.h
@@ -24,6 +24,7 @@ typedef __be32 rxrpc_serial_net_t; /* on-the-wire Rx message serial number */
*/
struct rxrpc_wire_header {
__be32 epoch; /* client boot timestamp */
+#define RXRPC_RANDOM_EPOCH 0x80000000 /* Random if set, date-based if not */
__be32 cid; /* connection and channel ID */
#define RXRPC_MAXCALLS 4 /* max active calls per conn */