XCAT
text/plain
Magic Bytes
Offset: 0
54 68 69 73 20 69 73 20 54 65 58 2C
XCAT is a categorized catalog file format primarily developed by the CTeX community for indexing and managing TeX distribution components. It is mainly utilized within legacy typesetting suites to organize font maps, documentation, and package metadata for efficient retrieval by the TeX processing engine. As a plain-text format, it is considered inherently safe, though it has largely been superseded by modern automated package management systems in current LaTeX environments.
Validation Code
How to validate .xcat files in Python
Python
def is_xcat(file_path: str) -> bool:
"""Check if file is a valid XCAT by magic bytes."""
signature = bytes([0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x54, 0x65, 0x58, 0x2C])
with open(file_path, "rb") as f:
return f.read(12) == signature
How to validate .xcat files in Node.js
Node.js
function isXCAT(buffer: Buffer): boolean {
const signature = Buffer.from([0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x54, 0x65, 0x58, 0x2C]);
return buffer.subarray(0, 12).equals(signature);
}
Go
func IsXCAT(data []byte) bool {
signature := []byte{0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x54, 0x65, 0x58, 0x2C}
if len(data) < 12 {
return false
}
return bytes.Equal(data[:12], signature)
}
API Endpoint
GET
/api/v1/xcat
curl https://filesignature.org/api/v1/xcat