Yes, but the GPLv2 clearly says that you don't have to try very hard. The=20
preferred form of modification has to be distributed. I can run a=20
decompiler or disassembler on a program, and I can even modify it in place=
=20
with a hex editor (I have even modified programs in embedded ROMs by using=
=20
focussed ion beam, so I know you can modify every program if you try hard=20
enough). It's certainly possible to crack Tivo's firmware to accept my own=
=20
signature, but it's *not* the preferred form of modification, the source=20
code and Tivo's key for the signature.
Since Tivo's firmware only accepts a signed kernel, the combination of=20
kernel+signature is the binary they ship. The kernel itself is useless, the=
=20
signature as well. Therefore, you can imply that Tivo's key is part of=20
the "other stuff" the GPLv2 mentions, because you need it to recreate the=20
same code as Tivo did and shipped (compilers insert timestamps and such),=20
and to modify that code. The source code is just a mean, the thing they=20
shipped is the end (the binary), and they have to comply with the GPL for=20
that binary - which by all means of practical understanding includes the=20
signature.
"You can imply" means: It depends on court and legal system. I'm quite=20
confident that in Germany, the legal system might favor the "GPLv2 does not=
=20
allow tivoization" point of view, and in the USA, the legal sysem might do=
=20
the opposite.
=2D-=20
Bernd Paysan
"If you want it done right, you have to do it yourself"
http://www.jwdt.com/~paysan/