Lan,
The change in pfil will look like below.
Darren
Index: qif.c
===================================================================
RCS file: /devel/CVS/pfil/SunOS/qif.c,v
retrieving revision 1.53
diff -u -r1.53 qif.c
--- qif.c 29 Apr 2007 09:53:03 -0000 1.53
+++ qif.c 22 Jul 2007 00:29:25 -0000
@@ -312,19 +312,21 @@
}
qif = rq->q_ptr;
+ if (qif->qf_hl == 0) {
#if SOLARIS2 < 8
- qif->qf_hl = ill->ill_hdr_length;
+ qif->qf_hl = ill->ill_hdr_length;
#else
- if ((ill->ill_type > 0) && (ill->ill_type < 0x37) &&
- (hdrsizes[ill->ill_type][0] == ill->ill_type))
- qif->qf_hl = hdrsizes[ill->ill_type][1];
-
- if (qif->qf_hl == 0 && ill->ill_type != IFT_OTHER) {
- cmn_err(CE_WARN,
- "!Unknown layer 2 header size for %s type %d sap
%x\n",
- qif->qf_name, ill->ill_type, ill->ill_sap);
- }
+ if ((ill->ill_type > 0) && (ill->ill_type < 0x37) &&
+ (hdrsizes[ill->ill_type][0] == ill->ill_type))
+ qif->qf_hl = hdrsizes[ill->ill_type][1];
+
+ if (qif->qf_hl == 0 && ill->ill_type != IFT_OTHER) {
+ cmn_err(CE_WARN,
+ "!%s: Unknown layer 2 size. type %d sap
%x\n",
+ qif->qf_name, ill->ill_type, ill->ill_sap);
+ }
#endif
+ }
/*
* Protect against the qif_t being bound against an interface, twice