lewixliu / firmware-mod-kit

Automatically exported from code.google.com/p/firmware-mod-kit
0 stars 0 forks source link

Image fault when builidng Tomato for RT-AC68U #139

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Extract "tomato-RT-AC68U-ARM--122-AIO-64K.trx"
2. Immediately rebuild from extract directory without making any changes.
3. Stock ASUS based WRT firmware will reject the new image. Manually flashing 
via the recovery tool will soft brick router.

What is the expected output? What do you see instead?
The newly created image  "should" be identical to the original image.

What version of the product are you using? On what operating system?
fmk_099.tar.gz

Please provide any additional information below.

Original issue reported on code.google.com by jpdienst on 14 Sep 2014 at 2:40

GoogleCodeExporter commented 9 years ago
Shibby builds for AC68U can be found here: 
http://tomato.groov.pl/download/K26ARM/122/

Original comment by jpdienst on 14 Sep 2014 at 2:50

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
I'm having a nearly identical issue with both the manufacturer's firmware and 
DD-WRT. 

What steps will reproduce the problem?
1. I extracted the firmware and immediately rebuild without making any changes. 
I always get a build message that says, "WARNING: New firmware will be larger 
than old image!" The current file size is 556 bytes larger than the original. I 
want to add features so I need a way around this.
2. I read through the forum and prior issues and read that the FMK uses good 
and fast general compression settings where DD-WRT does an analysis to 
determine the optimal compression settings at the expense of taking longer to 
build. I'm fine with the good and fast so I modified the build script to byass 
the warning by commenting out the exit on line 126. It will then produce a new 
firmware file that is immediately rejected by the Asus firmware update.
3. I realized the issue is probably in the header with the file size and/or 
checksum. I extracted the new, rebuilt, firmware and reviewed the binwalk and 
config logs. The config.log showed the correct FW_SIZE that is slightly larger 
than the original. The binwalk.low showed the old, slighly smaller, size so I 
changeded it to the new size.
4. I rebuilt the firmware but it still is immediately rejected by the Asus 
firmware update.
5. The only thing I noticed that might be significant is in the original 
binwalk.log the Squahsfs filesystem compression field is blank but in the new 
binwalk.log from the rebuild it's listed as lzma. It seems that binwalk may not 
be able to determine the compression of the original.

What version of the product are you using? On what operating system?
I tried using the fmk_099.tar.gz download and also cloned the project since I 
saw that several files have been updated since it was released. I'm using 
Ubuntu 12.04 LTS x64.

Please provide any additional information below.
The firmware I'm trying to modify is: 
http://dlcdnet.asus.com/pub/ASUS/wireless/RT-AC68U/FW_RT_AC68U_30043783873.zip

Original comment by V0QIu24E...@gmail.com on 27 Jan 2015 at 5:53