js: Allow serving files > 4GB in size

Currently, the javascript NBD server only handles files of sizes that
are representable in 32 bits.

Although we can't do full 64-bit offsets with Javascript's number
representation, we should be able to handle up to
Number.MAX_SAFE_INTEGER. This change adds support for using the top-32
bit field in file sizes and read request offsets.

Reported-by: Lei YU <mine260309@gmail.com>
Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
Change-Id: I41dee58c3913cba49c5cd73ebdd5d6fb56786d25
1 file changed