code: public final FieldPointerSenseKeySpecificData[] getIllegalFieldPointers () {
          if (illegalFieldPointers == null) return null;
          // returned trimmed array without null values
          final int size = getIllegalFieldPointerSize();
          FieldPointerSenseKeySpecificData[] result = new FieldPointerSenseKeySpecificData[size];
          for (int i = 0; i < size; ++i) {
              result[i] = illegalFieldPointers[i];
          }
          return result;
      }
docs: Returns <code>null</code> if there were no illegal fields in the serialized CDB passed to the constructor, or an
  array of appropriate {@link FieldPointerSenseKeySpecificData}, that have to be enclosed in the {@link SenseData}
  returned to the initiator (with sense key {@link SenseKey#ILLEGAL_REQUEST} and additional sense code and sense
  code qualifier {@link AdditionalSenseCodeAndQualifier#INVALID_FIELD_IN_CDB}).
  
  @return <code>null</code> or an array of appropriate {@link FieldPointerSenseKeySpecificData}