diff options
Diffstat (limited to 'include/rxrpc/packet.h')
-rw-r--r-- | include/rxrpc/packet.h | 22 |
1 files changed, 8 insertions, 14 deletions
diff --git a/include/rxrpc/packet.h b/include/rxrpc/packet.h index 09b11a1e8d46..b69e6e173ea1 100644 --- a/include/rxrpc/packet.h +++ b/include/rxrpc/packet.h | |||
@@ -1,6 +1,6 @@ | |||
1 | /* packet.h: Rx packet layout and definitions | 1 | /* packet.h: Rx packet layout and definitions |
2 | * | 2 | * |
3 | * Copyright (C) 2002 Red Hat, Inc. All Rights Reserved. | 3 | * Copyright (C) 2002, 2007 Red Hat, Inc. All Rights Reserved. |
4 | * Written by David Howells (dhowells@redhat.com) | 4 | * Written by David Howells (dhowells@redhat.com) |
5 | * | 5 | * |
6 | * This program is free software; you can redistribute it and/or | 6 | * This program is free software; you can redistribute it and/or |
@@ -12,21 +12,17 @@ | |||
12 | #ifndef _LINUX_RXRPC_PACKET_H | 12 | #ifndef _LINUX_RXRPC_PACKET_H |
13 | #define _LINUX_RXRPC_PACKET_H | 13 | #define _LINUX_RXRPC_PACKET_H |
14 | 14 | ||
15 | #include <rxrpc/types.h> | 15 | typedef u32 rxrpc_seq_t; /* Rx message sequence number */ |
16 | 16 | typedef u32 rxrpc_serial_t; /* Rx message serial number */ | |
17 | #define RXRPC_IPUDP_SIZE 28 | 17 | typedef __be32 rxrpc_seq_net_t; /* on-the-wire Rx message sequence number */ |
18 | extern size_t RXRPC_MAX_PACKET_SIZE; | 18 | typedef __be32 rxrpc_serial_net_t; /* on-the-wire Rx message serial number */ |
19 | #define RXRPC_MAX_PACKET_DATA_SIZE (RXRPC_MAX_PACKET_SIZE - sizeof(struct rxrpc_header)) | ||
20 | #define RXRPC_LOCAL_PACKET_SIZE RXRPC_MAX_PACKET_SIZE | ||
21 | #define RXRPC_REMOTE_PACKET_SIZE (576 - RXRPC_IPUDP_SIZE) | ||
22 | 19 | ||
23 | /*****************************************************************************/ | 20 | /*****************************************************************************/ |
24 | /* | 21 | /* |
25 | * on-the-wire Rx packet header | 22 | * on-the-wire Rx packet header |
26 | * - all multibyte fields should be in network byte order | 23 | * - all multibyte fields should be in network byte order |
27 | */ | 24 | */ |
28 | struct rxrpc_header | 25 | struct rxrpc_header { |
29 | { | ||
30 | __be32 epoch; /* client boot timestamp */ | 26 | __be32 epoch; /* client boot timestamp */ |
31 | 27 | ||
32 | __be32 cid; /* connection and channel ID */ | 28 | __be32 cid; /* connection and channel ID */ |
@@ -85,8 +81,7 @@ extern const char *rxrpc_pkts[]; | |||
85 | * - new__rsvd = j__rsvd | 81 | * - new__rsvd = j__rsvd |
86 | * - duplicating all other fields | 82 | * - duplicating all other fields |
87 | */ | 83 | */ |
88 | struct rxrpc_jumbo_header | 84 | struct rxrpc_jumbo_header { |
89 | { | ||
90 | uint8_t flags; /* packet flags (as per rxrpc_header) */ | 85 | uint8_t flags; /* packet flags (as per rxrpc_header) */ |
91 | uint8_t pad; | 86 | uint8_t pad; |
92 | __be16 _rsvd; /* reserved (used by kerberos security as cksum) */ | 87 | __be16 _rsvd; /* reserved (used by kerberos security as cksum) */ |
@@ -99,8 +94,7 @@ struct rxrpc_jumbo_header | |||
99 | * on-the-wire Rx ACK packet data payload | 94 | * on-the-wire Rx ACK packet data payload |
100 | * - all multibyte fields should be in network byte order | 95 | * - all multibyte fields should be in network byte order |
101 | */ | 96 | */ |
102 | struct rxrpc_ackpacket | 97 | struct rxrpc_ackpacket { |
103 | { | ||
104 | __be16 bufferSpace; /* number of packet buffers available */ | 98 | __be16 bufferSpace; /* number of packet buffers available */ |
105 | __be16 maxSkew; /* diff between serno being ACK'd and highest serial no | 99 | __be16 maxSkew; /* diff between serno being ACK'd and highest serial no |
106 | * received */ | 100 | * received */ |