So I’ve been playing with the firmware on my Actiontec GT701-wg from qwest. Tweaking settings while it’s running and what not. Well, I’m tired of doing that, I want it to startup with my settings so I’ve been doing some research. Lots of information on these. So I did my reading, and quickly ran into a problem. I could extract the SquashFS image from the recovery zip, but squashfs-tools on Debian was too new. Apparently you can’t uses SquashFS 3 tools to make a SquashFS 1 filesystem. So I had to get mksquashfs for SquashFS 1. Luckicly sub.st had a mirror for squashfs 1.3r3, the last SquashFS 1 release.
Compiling it was going to be it’s own headache though. In the end I had to install zlib-bin, zlib1g, and zlib1g-dev (thanks HyperWRT) as well as gcc. Then I had to edit the source in 2 locations because gcc4 did not like the assignment statements.
mksquashfs.c line 433
inodep = (squashfs_reg_inode_header *) inode= get_inode(sizeof(*reg) + offset * sizeof(unsigned short));
was changed to
inode = get_inode(sizeof(*reg) + offset * sizeof(unsigned short)); inodep = (squashfs_reg_inode_header *) inode;
mksquashfs.c line 490
inodep = (squashfs_symlink_inode_header *) inode= get_inode(sizeof(*symlink) + byte);
was changed to
inode = get_inode(sizeof(*symlink) + byte); inodep = (squashfs_symlink_inode_header *) inode;
Everything compiled and as far as I can tell I have a working mksqaushfs 1.3r3
Labels: Computers
My borg designation is 2 of 7. My parents raised me LDS, but I'm atheist. My wife loves me, my kids think about it. My dog thinks I abandoned her and sleeps on the couch.
The Daily WTF
Boobs, Injuries, & Dr. Pepper
The Hull Story
xkcd
AppleGeeks
Digg
Gullible.info