aboutsummaryrefslogtreecommitdiffstats
path: root/packet-fcels.c
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2003-11-07 08:50:44 +0000
committerGuy Harris <guy@alum.mit.edu>2003-11-07 08:50:44 +0000
commit5e06fef2a22a424144a2d9242305883515b1d09b (patch)
treef9492f97b9b887a0434251e4cc576b2dbfd87664 /packet-fcels.c
parentf84d72f5fb4742e0775181fe6a9634dab26ae3de (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.c39
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");