38 lines
1.6 KiB
Text
38 lines
1.6 KiB
Text
|
|
#------------------------------------------------------------------------------
|
|
# URL: https://de.wikipedia.org/wiki/Aria_(Software)
|
|
# Reference: https://github.com/aria2/aria2/blob/master/doc/manual-src/en/technical-notes.rst
|
|
# From: Joerg Jenderek
|
|
# Note: only version 1 suited
|
|
# check for valid version one
|
|
0 beshort 0x0001
|
|
# skip most uncompressed DEGAS med-res bitmap *.PI2 and GEM bitmap (v1) *.IMG
|
|
# by test for valid infoHashCheck extension
|
|
>2 ubelong&0xffFFffFE 0x00000000
|
|
# skip DEGAS med-res bitmap DIAGRAM1.PI2 by test for valid length of download
|
|
>>(6.L+14) ubequad >0
|
|
>>>0 use aria
|
|
0 name aria
|
|
# version; (0x0000) or (0x0001); for 0 all multi-byte are in host byte order. For 1 big endian
|
|
>0 beshort x aria2 control file, version %u
|
|
#!:mime application/octet-stream
|
|
!:mime application/x-aria
|
|
!:ext aria2
|
|
# EXTension; if EXT[3]&1 == 1 checks whether saved InfoHash and current downloading the same; infoHashCheck extension
|
|
>2 ubelong !0 \b, infoHashCheck %#x
|
|
# info hash length like: 0 14h
|
|
>6 ubelong !0 \b, %#x bytes info hash
|
|
# info hash; BitTorrent InfoHash
|
|
>>10 ubequad x %#16.16llx...
|
|
# piece length; the length of the piece like: 400h 100000h
|
|
>(6.L+10) ubelong x \b, piece length 0x%x
|
|
# total length; the total length of the download
|
|
>(6.L+14) ubequad x \b, total length %llu
|
|
#>(6.L+14) ubequad x \b, total length %#llx
|
|
# upload length; the uploaded length of download like: 0 400h
|
|
>(6.L+22) ubequad !0 \b, upload length %#llx
|
|
# bitfield length; the length of bitfield like: 4 6 Ah 10h 13h 167h
|
|
>(6.L+30) ubelong x \b, %#x bytes bitfield
|
|
# bitfield; bitfield which represents current download progress
|
|
>(6.L+34) ubequad !0 %#llx...
|
|
|