-"BOGUS FACILITY CODE facil_len 0x%x *facil_len 0x%x, ptr 0x%x *ptr 0x%x\n",
- ptr, facil_len, ptr - 1, ptr[-1]);
- /* facil that we don't handle */
- return E_CO_HLI_REJI;
+"BOGUS FACILITY CODE facil_lim 0x%x facil_len %d, ptr 0x%x *ptr 0x%x\n",
+ facil_lim, facil_len, ptr - 1, ptr[-1]);
+ /* facil that we don't handle
+ return E_CO_HLI_REJI; */
+ switch (ptr[-1] & 0xc0) {
+ case 0x00: facil_param_len = 1; break;
+ case 0x40: facil_param_len = 2; break;
+ case 0x80: facil_param_len = 3; break;
+ case 0xc0: facil_param_len = 0; break;
+ }