What does errno 84 (EILSEQ) mean?

 
Could be also:
ConstantTypeOS
ERROR_OUT_OF_STRUCTURESWin32 errorWindows
EOVERFLOWerrnoMac
ELIBBADerrnoSolaris
LM_SERVER_INTERNAL_ERRORBugCheck CodeWindows
Previous Next
ELIBACC EOVERFLOW

EILSEQ

An encoding error, not a generic read failure

EILSEQ signals that bytes being interpreted as text do not form a valid character sequence for the selected encoding or locale. It commonly appears in iconv(), multibyte conversion functions, filename handling, import pipelines, and protocol parsers that expect a particular character set. The source data may be corrupted, but a locale mismatch or a declared encoding that differs from the actual input is just as common.

Do not replace invalid bytes blindly before understanding where they entered the system. Silent replacement may be acceptable for a user-facing preview, but it can change identifiers, paths, signatures, or structured data. For conversion APIs, distinguish an illegal sequence from an incomplete sequence at the end of a buffer; the correct buffering and retry behavior differs.

What to capture

  • Log the declared encoding, active locale, byte offset, and a safely escaped sample of the surrounding bytes.
  • Confirm whether input is split across buffers; preserve incomplete trailing bytes until the next chunk.
  • Use an explicit encoding contract at import and protocol boundaries instead of inheriting the host locale.
  • Choose a documented replacement or rejection policy according to whether the data is display text, an identifier, or a signed payload.

References


Looking for a different code? Search another status or error code.