diff options
author | Guy Harris <guy@alum.mit.edu> | 2001-08-02 17:05:00 +0000 |
---|---|---|
committer | Guy Harris <guy@alum.mit.edu> | 2001-08-02 17:05:00 +0000 |
commit | 131228b0b1778acb0e847b7f8b3ff966576291c1 (patch) | |
tree | 4949c16c5c5e72a9f5be577b60b4b902174936f2 /packet-pgm.h | |
parent | 166c1fd900ba7cd3d265141aae50262def2eb52d (diff) | |
download | wireshark-131228b0b1778acb0e847b7f8b3ff966576291c1.tar.gz wireshark-131228b0b1778acb0e847b7f8b3ff966576291c1.tar.bz2 wireshark-131228b0b1778acb0e847b7f8b3ff966576291c1.zip |
Updates from Steve Dickson.
svn path=/trunk/; revision=3812
Diffstat (limited to 'packet-pgm.h')
-rw-r--r-- | packet-pgm.h | 41 |
1 files changed, 38 insertions, 3 deletions
diff --git a/packet-pgm.h b/packet-pgm.h index e7d4c2bb68..c06140d676 100644 --- a/packet-pgm.h +++ b/packet-pgm.h @@ -1,7 +1,7 @@ /* packet-pgm.h * Declarations for pgm packet disassembly * - * $Id: packet-pgm.h,v 1.4 2001/07/21 10:27:13 guy Exp $ + * $Id: packet-pgm.h,v 1.5 2001/08/02 17:05:00 guy Exp $ * * Copyright (c) 2000 by Talarian Corp * @@ -91,7 +91,17 @@ const size_t PGM_NAK_SZ = sizeof(pgm_type)+sizeof(pgm_nak_t); (_p)->src_afi = ntohs((_p)->src_afi); \ (_p)->src_res = ntohs((_p)->src_res); \ (_p)->grp_afi = ntohs((_p)->grp_afi); \ - (_p)->grp_res = ntohs((_p)->grp_res); \ + (_p)->grp_res = ntohs((_p)->grp_res) + +/* The PGM ACK header (PGMCC) */ +typedef struct { + nlong_t rx_max_sqn; /* RX_MAX sequence number */ + nlong_t bitmap; /* Received Packet Bitmap */ +} pgm_ack_t; +const size_t PGM_ACK_SZ = sizeof(pgm_type)+sizeof(pgm_ack_t); +#define ack_ntoh(_p) \ + (_p)->rx_max_sqn = ntohl((_p)->rx_max_sqn); \ + (_p)->bitmap = ntohl((_p)->bitmap) /* constants for hdr types */ #if defined(PGM_SPEC_01_PCKTS) @@ -103,13 +113,14 @@ const size_t PGM_NAK_SZ = sizeof(pgm_type)+sizeof(pgm_nak_t); #define PGM_NNAK_PCKT 0x21 #define PGM_NCF_PCKT 0x30 #else -/* spec-02 types (as well as spec-04) */ +/* spec-02 types (as well as spec-04+) */ #define PGM_SPM_PCKT 0x00 #define PGM_ODATA_PCKT 0x04 #define PGM_RDATA_PCKT 0x05 #define PGM_NAK_PCKT 0x08 #define PGM_NNAK_PCKT 0x09 #define PGM_NCF_PCKT 0x0A +#define PGM_ACK_PCKT 0x0D #endif /* PGM_SPEC_01_PCKTS */ /* port swapping on NAK and NNAKs or not (default is to swap) */ @@ -134,6 +145,8 @@ const size_t PGM_NAK_SZ = sizeof(pgm_type)+sizeof(pgm_nak_t); #define PGM_OPT_PARITY_PRM 0x08 #define PGM_OPT_PARITY_GRP 0x09 #define PGM_OPT_CURR_TGSIZE 0x0A +#define PGM_OPT_PGMCC_DATA 0x12 +#define PGM_OPT_PGMCC_FEEDBACK 0x13 const nchar_t PGM_OPT_INVALID = 0x7F; @@ -205,4 +218,26 @@ typedef struct { nlong_t prm_atgsz; } pgm_opt_curr_tgsize_t; +typedef struct { + nchar_t type; + nchar_t len; + nchar_t opx; + nchar_t res; + nlong_t tsp; + nshort_t acker_afi; + nshort_t res2; + nlong_t acker; +} pgm_opt_pgmcc_data_t; + +typedef struct { + nchar_t type; + nchar_t len; + nchar_t opx; + nchar_t res; + nlong_t tsp; + nshort_t acker_afi; + nshort_t loss_rate; + nlong_t acker; +} pgm_opt_pgmcc_feedback_t; + #endif /* _PACKET_PGM_H */ |