Skip to content

avih/dejsonlz4

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
src
November 19, 2017 13:35
November 19, 2017 13:35

dejsonlz4

Decompress Mozilla Firefox bookmarks backup files

Current Firefox bookmarks backup files are stored as non-standard file format based on lz4 compression. These files have a .jsonlz4 extension. Use dejsonlz4 to decompress them.

lz4.c and lz4.h at this repository are verbatim copies from the Mozilla repository as of 2016-05-12 (as currently used by Firefox) [1].

Usage:

Usage: dejsonlz4 [-h] IN_FILE [OUT_FILE]
   -h  Display this help and exit.
Decompress Mozilla bookmarks backup file IN_FILE to OUT_FILE.
If IN_FILE is '-', decompress from standard input.
If OUT_FILE is '-' or missing, decompress to standard output.
Note: IN_FILE is transferred to memory entirely before decompressing.
Decompression is also done in memory entirely before output.

Build:

  • gcc -Wall -o dejsonlz4 src/dejsonlz4.c src/lz4.c

Windows note:

  • dejsonlz4 on Windows does not support unicode path/file names at this time.

References:

External resources:

  • Mozilla Firefox bug 818587 - Compress bookmark backups.
  • Mozilla Firefox bug 1209390 - Use standard lz4 file format instead of the non-standard jsonlz4/mozlz4.

[1] Mozilla's mercurial repo rev. c3f5e6079284: lz4.h and lz4.c