diff options
author | Guy Harris <guy@alum.mit.edu> | 2003-11-07 08:50:44 +0000 |
---|---|---|
committer | Guy Harris <guy@alum.mit.edu> | 2003-11-07 08:50:44 +0000 |
commit | 5e06fef2a22a424144a2d9242305883515b1d09b (patch) | |
tree | f9492f97b9b887a0434251e4cc576b2dbfd87664 /packet-fcels.c | |
parent | f84d72f5fb4742e0775181fe6a9634dab26ae3de (diff) |
From Dinesh Dutt:
- Added support for displaying support for Multicast/Broadcast supported
bits in *LOGI common service params
- Removed restriction for "Random Relative Offset" & its alternate to be in
PLOGI or PDISC only. Some HBAs set it even in FLOGI.
svn path=/trunk/; revision=8907
Diffstat (limited to 'packet-fcels.c')
-rw-r--r-- | packet-fcels.c | 39 |
1 files changed, 26 insertions, 13 deletions
diff --git a/packet-fcels.c b/packet-fcels.c index 7ae038d931..2e98967ac3 100644 --- a/packet-fcels.c +++ b/packet-fcels.c @@ -2,7 +2,7 @@ * Routines for FC Extended Link Services * Copyright 2001, Dinesh G Dutt <ddutt@cisco.com> * - * $Id: packet-fcels.c,v 1.5 2003/10/30 02:06:11 guy Exp $ + * $Id: packet-fcels.c,v 1.6 2003/11/07 08:50:43 guy Exp $ * * Ethereal - Network traffic analyzer * By Gerald Combs <gerald@ethereal.com> @@ -244,17 +244,15 @@ construct_cmnsvc_string (guint16 flag, gchar *flagstr, guint8 opcode) punc[0] = '\0'; - if ((opcode == FC_ELS_PLOGI) || (opcode == FC_ELS_PDISC)) { - if (flag & 0x8000) { - strcpy (flagstr, "Cont. Incr. Offset Supported"); - stroff += 28; - strcpy (punc, ", "); - } - if (flag & 0x4000) { - sprintf (&flagstr[stroff], "%sRRO Supported", punc); - stroff += 15; - strcpy (punc, ", "); - } + if (flag & 0x8000) { + strcpy (flagstr, "Cont. Incr. Offset Supported"); + stroff += 28; + strcpy (punc, ", "); + } + if (flag & 0x4000) { + sprintf (&flagstr[stroff], "%sRRO Supported", punc); + stroff += 15; + strcpy (punc, ", "); } if (flag & 0x2000) { @@ -271,7 +269,7 @@ construct_cmnsvc_string (guint16 flag, gchar *flagstr, guint8 opcode) else { sprintf (&flagstr[stroff], "%sNormal B2B Credit Mgmt", punc); strcpy (punc, ", "); - stroff += 21; + stroff += 22; } if ((opcode == FC_ELS_PLOGI) || (opcode == FC_ELS_PDISC)) { @@ -288,6 +286,21 @@ construct_cmnsvc_string (guint16 flag, gchar *flagstr, guint8 opcode) stroff += 34; } } + + if (flag & 0x0200) { + strcpy (&flagstr[stroff], ", Multicast Supported"); + stroff += 21; + } + + if (flag & 0x0100) { + strcpy (&flagstr[stroff], ", Broadcast Supported"); + stroff += 21; + } + + if (flag & 0x0020) { + strcpy (&flagstr[stroff], ", Security Bit"); + stroff += 14; + } if (flag & 0x0010) { strcpy (&flagstr[stroff], ", Clk Sync Prim Capable"); |