Can now both send and receive packets. LL header format not yet

fixed; still using a quick hack-up just to be able to pass through
data.
This commit is contained in:
Michael Brown
2007-09-13 14:43:12 +01:00
parent 03c90e183f
commit 30a19c3f1c
4 changed files with 60 additions and 7 deletions

View File

@@ -14,6 +14,43 @@
#define IB_ALEN 20
#define IB_HLEN 24
/** An Infiniband Global Identifier */
struct ib_gid {
uint8_t bytes[16];
};
/** An Infiniband Global Route Header */
struct ib_global_route_header {
/** IP version, traffic class, and flow label
*
* 4 bits : Version of the GRH
* 8 bits : Traffic class
* 20 bits : Flow label
*/
uint32_t ipver_tclass_flowlabel;
/** Payload length */
uint16_t paylen;
/** Next header */
uint8_t nxthdr;
/** Hop limit */
uint8_t hoplmt;
/** Source GID */
struct ib_gid sgid;
/** Destiniation GID */
struct ib_gid dgid;
} __attribute__ (( packed ));
/** An Infiniband MAC address */
struct ib_mac {
/** Queue pair number
*
* MSB must be zero; QPNs are only 24-bit.
*/
uint32_t qpn;
/** Port GID */
struct ib_gid gid;
} __attribute__ (( packed ));
/** An Infiniband header
*
* This data structure doesn't represent the on-wire format, but does