diff options
Diffstat (limited to 'magic/Magdir/sereal')
-rw-r--r-- | magic/Magdir/sereal | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/magic/Magdir/sereal b/magic/Magdir/sereal new file mode 100644 index 0000000..ead78d5 --- /dev/null +++ b/magic/Magdir/sereal @@ -0,0 +1,35 @@ + +#------------------------------------------------------------------------------ +# $File: sereal,v 1.3 2015/02/05 19:14:45 christos Exp $ +# sereal: file(1) magic the Sereal binary serialization format +# +# From: Ævar Arnfjörð Bjarmason <avarab@gmail.com> +# +# See the specification of the format at +# https://github.com/Sereal/Sereal/blob/master/sereal_spec.pod#document-header-format +# +# I'd have liked to do the byte&0xF0 matching against 0, 1, 2 ... by +# doing (byte&0xF0)>>4 here, but unfortunately that's not +# supported. So when we print out a message about an unknown format +# we'll print out e.g. 0x30 instead of the more human-readable +# 0x30>>4. +# +# See https://github.com/Sereal/Sereal/commit/35372ae01d in the +# Sereal.git repository for test Sereal data. +0 name sereal +>4 byte&0x0F x (version %d, +>4 byte&0xF0 0x00 uncompressed) +>4 byte&0xF0 0x10 compressed with non-incremental Snappy) +>4 byte&0xF0 0x20 compressed with incremental Snappy) +>4 byte&0xF0 >0x20 unknown subformat, flag: %d>>4) + +0 string/b \=srl Sereal data packet +!:mime application/sereal +>&0 use sereal +0 string/b \=\xF3rl Sereal data packet +!:mime application/sereal +>&0 use sereal +0 string/b \=\xC3\xB3rl Sereal data packet, UTF-8 encoded +!:mime application/sereal +>&0 use sereal + |