Skip to content

XPM (.xpm)

.xpm file signature | application/octet-stream

X PixMap

Safe

Magic Bytes

Offset 0
2F 2A 20 58 50 4D 20 2A 2F

Sources: Wikipedia

Extension

.xpm

MIME Type

application/octet-stream

Byte Offset

0

Risk Level

Safe

Validation Code

How to validate .xpm files in Python

Python
def is_xpm(file_path: str) -> bool:
    """Check if file is a valid XPM by magic bytes."""
    signature = bytes([0x2F, 0x2A, 0x20, 0x58, 0x50, 0x4D, 0x20, 0x2A, 0x2F])
    with open(file_path, "rb") as f:
        return f.read(9) == signature

How to validate .xpm files in Node.js

Node.js
function isXPM(buffer: Buffer): boolean {
  const signature = Buffer.from([0x2F, 0x2A, 0x20, 0x58, 0x50, 0x4D, 0x20, 0x2A, 0x2F]);
  return buffer.subarray(0, 9).equals(signature);
}

How to validate .xpm files in Go

Go
func IsXPM(data []byte) bool {
    signature := []byte{0x2F, 0x2A, 0x20, 0x58, 0x50, 0x4D, 0x20, 0x2A, 0x2F}
    if len(data) < 9 {
        return false
    }
    return bytes.Equal(data[:9], signature)
}

API Endpoint

GET /api/v1/xpm
curl https://filesignature.org/api/v1/xpm

See the full API documentation for all endpoints and parameters.

Frequently Asked Questions

What is a .xpm file?

A .xpm file is a XPM file. X PixMap

What are the magic bytes for .xpm files?

The magic bytes for XPM files are 2F 2A 20 58 50 4D 20 2A 2F at byte offset 0. These bytes uniquely identify the file format regardless of the file extension.

How do I validate a .xpm file?

To validate a .xpm file, read the first bytes of the file and compare them against the known magic bytes (2F 2A 20 58 50 4D 20 2A 2F) at offset 0. This is more reliable than checking the file extension alone, as extensions can be renamed.

What is the MIME type for .xpm files?

There is no officially registered MIME type for .xpm files. Systems typically use application/octet-stream as a generic fallback when handling this format.

Is it safe to open .xpm files?

XPM (.xpm) files are generally safe to open. They are classified as low risk because they primarily contain data rather than executable code. However, always ensure files come from a trusted source.