Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add brotli mime type detection to file and libmagic #727

Open
stokito opened this issue Oct 27, 2018 · 5 comments

Comments

@stokito
Copy link

commented Oct 27, 2018

The Linux file utility doesn't recognize brotli MIME type:

$ file -i some_archive.br
some_archive.br: application/octet-stream; charset=binary

I know, this is not related for the brotli itself but could you send a PR to file and libmagic so they start to recognize brotli mime type?

https://github.com/file/file/blob/master/src/compress.c
https://github.com/file/file/blob/master/magic/Magdir/archive

Also please confirm the correct brotli mime type #724

@eustas

This comment has been minimized.

Copy link
Contributor

commented Nov 1, 2018

There is a little problem. Most utilities scan first file bytes and compare them against "magic" bytes.
Well,... for brotli 254 of 256 byte values are valid as the first file byte.

Brotli was designed to be "stream" format rather than file format. There is a "brotli-framing-format" project that adds tons of features (including "magic header bytes")... but it is not public yet.

@stokito

This comment has been minimized.

Copy link
Author

commented Nov 1, 2018

If I understood correctly gzip is also can be named as stream format but this is not a problem for them to add few magic bytes.
I already used \xce\xb2\xcf\x81 as brotli magic bytes and application/x-brotli as mime type but asked here #724 to confirm.

Where can I read at least something about this framing format? Will we still be able to use regular .br files?

@eustas

This comment has been minimized.

Copy link
Contributor

commented Nov 1, 2018

gzip is a wrapper for deflate streams

@stokito

This comment has been minimized.

Copy link
Author

commented Nov 10, 2018

So, the magic bytes which I used are actually from another framing format from #462

@stokito stokito referenced this issue Sep 2, 2019
@doronbehar

This comment has been minimized.

Copy link

commented Oct 6, 2019

I've opened an issue about this in file's bug tracker:

https://bugs.astron.com/view.php?id=111

So @eustas, the issue is that this implementation doesn't include magic bytes when it creates files and not streams?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants
You can’t perform that action at this time.