Talk:Enabling Login: Difference between revisions

From Sharpfin
Jump to navigation Jump to search
No edit summary
Line 99: Line 99:


(Funny, because it when patchserver is running I see it resolve ntp.reciva.com)
(Funny, because it when patchserver is running I see it resolve ntp.reciva.com)
'''Nigelcliffe'''; Unfortunately stuck at first hurdle; the patchserver runs on my computer (well two of them), but though the radio connects, the patchserver doesn't then connect to the DNS to perform the lookup. Thus those lookups all fail, and the radio reports a DNS problem.  Any clues ?  ISP is Demon and a static IP address if that's the issue.


== Oops ==
== Oops ==

Revision as of 21:09, 27 November 2007

Please provide feedback of your upgrade and patch experiences here .....

First patch attempt Followed the readme docs - obtained all the necessary files, got the 5 magic numbers! I'm utterly confused about what to do with Cygwin (which I've installed). Need some detailed advice on this. Thanks.

Trumpton Cygwin provides some essential libraries that are used by the patchserver. Once installed, you should be able to open up a command shell (Start/Run 'cmd'), change directory to where you unpacked patchserv.exe (using cd), and run 'patchserv test.tar.bz2

PeterPan: I just install the cygwin envirement, run the patchserver und transfers the 'test.tar.bz2' Test patchfile to my IPdio. That seems to work. But I have not heart enough, to transfer the real patchfile 'Devel-00-01b-login_http.tar.bz2' because my IPdio is only 2 days old. I am not a Linux expert (I am a Windows developer) So what about the install-me script? Who will run it?

Unknown: I installed cygwin - wow! that ate up my disk space. Can you tell me what I can safely delete from Cygwin (if anything) and still get patchserver to run?

Can you give explicit telnet commands to enter to login and run the savespace. A definitive example would be useful (eg. open , etc). What is the server name to open? for example. Or is it the radio's IP address?

In your warning section, you mention you've trialed on a few radios. Can you list the radios which you've successfully tried? This may either encourage or scare the faint-hearted!


PeterPan: I think you only need the cygwin1.dll. To connect to the radio via telnet. You must start telnet in a cmd shell. Than type open and then type the IP-Address of your radio. For example open 192.168.0.10 or you type in telnet 192.168.0.10

Trumpton Peterpan - When you do an install, the main radio application launches a script, which moves the radio from runlevel 2 to runlevel 3 (effectively shutting down the radio application). The script then downloads the patchfile, unpacks it to /tmp/something, and then looks for /tmp/something/install-me scripts, which it automatically runs as root.

The login_http patchfile install-me script does a disk check, copies a new busybox application (busybox.new) to /bin, and creates the links for telnetd and httpd. It also copies the init scripts for the two servers, and finally creates some dummy webserver files. the one thing it does not do is tamper with the original busybox program - we provide a script called 'savespace' which will remove the original program, rename the new one, and correct all of the links, but at present, this is left for you to run once you have logged in. So you see, we have taken the 'chicken' route in patching the radio, and have not deleted any existing files.

Unknown - I think Peterpan is right, all you need is the cygwin1.dll. I would have bundled it with the application, however, the cygwin Ts&Cs forbid it. The Savespace script will save 600Kb of diskspace on your radio, nothing on your PC.

It is our intention that in the end, this is the only program you will have to install this way. Future patches will be done using the installed webserver. Presently, however, the webserver is only a stub, so the early takers will probably have to re-patch in order to benifit from the full features.

This method has been run by me on a Logik IR100 and a Logic IRMA1. There are many people who have patched their radios, but have done it manually (without the advantage of the patchserver); and most of them have installed an ssh shell, which takes a little more disk space, does not have the advantage of the additional webserver, and is slightly larger when running in memory.

PeterPan: thank you for your explanation Trumpton. I just did the patch and get telnet and http connection to my IPdio. Great! I got the following error message when I run the savespace script.

mount: mounting /dev/root on / failed: Device or resource busy

What does that mean? If I check with mount, it seems that all filesystem has rw access. Is that correct?

Trumpton This is not a problem! If you type 'ls /bin/busybox*' you should see a single busybox program (i.e. no busybox.new), which shows that the script ran OK. You just need to type 'sync;telinit 6' which will flush disk buffers, and force the radio to reset (may take 30 seconds for the watchdog to actually do the reset).

PeterPan: My Radio is dead :-( After I replugged it to the power, the device did not boot anymore. I send it back to my dealer. Do you have any idea, about the cause?

Trumpton The only thing the upgrade could have done to affect the radio this way is not complete the busybox copy properly. As you managed to use 'ls', you demonstrated that the install worked OK. I presume the radio had also rebooted a few times OK before this happened? I'm afraid I'm a little stumped. I've had my radio non-booting several times, but that's been because I've had it in about 1000 pieces too often, and the connectors don't fit quite as well as they used to. I've been through this upgrade method at least half a dozen times during testing.

Can you explain where the savespace procedure comes into the patching procedure? There's NO mention of it in the docs. Also does the webserver stay loaded on the radio after patching and when the radio is rebooted and reset to use DCHP?

Trumpton savespace is used after the install, but it's pretty advanced, and quite dangerous, so the release we are working on will not have it (so it's nothing to worry about). Our intention is to provide a patchfile to uninstall all sharpfin mods instead. The patchserver is for patching only, and once you re-configure the radio back to its original settings (probably DHCP), the webserver and telnet server will stay running after reboot. The webserver files live on the debug partition (/mnt/debug), so you can modify files without having to tamper with the main operating system disk. The telnet server and webserver both use the same executable, so once one is loaded, there is little memory impact on having the other also!

So where is the patch file?

samjam My Tevion player doesn't show any of the LCD text messages for the test patch file, it just restarts the network after a while,

Please enter the IP address of your real DNS server:
192.168.1.254

Setting nameserver to: 192.168.1.254
Patch file is sharpfin-test.patch

patchserver: Running webserver on port 80
patchserver: running DNS Server on port 53
webserver: waiting for connections ...
dnssever: waiting for connections ...
dnsserver: 192.168.1.249: forged lookup www.reciva.com ... OK
webserver: 192.168.1.249: request for /cgi-local//service-pack.pl?serial=00029fbc&sp=v257-a-297-a-027&hw=926&sv=03&check=1 ... OK
dnsserver: 192.168.1.249: forged lookup www.reciva.com ... OK
dnsserver: 192.168.1.249: forged lookup www.reciva.com ... OK
dnsserver: 192.168.1.249: forged lookup www.reciva.com ... OK
dnsserver: 192.168.1.249: forged lookup www.reciva.com ... OK
dnsserver: 192.168.1.249: forged lookup www.reciva.com ... OK
webserver: 192.168.1.249: request for /cgi-local//service-pack.pl?serial=00029fbc&sp=257-a-297-a-027&hw=926&sv=03&check=0&favoured_portal=reciva://dragon.reciva.com:6000 ... OK
dnsserver: 192.168.1.249: forged lookup www.reciva.com ... OK
webserver: 192.168.1.249: request for /reciva-upgrade.tar.bz2 ... OK

I don't know if it worked or not.

The link to the real patch file on the enabling_login page is not there,

Trumpton samjam, I am a little concerned that the 'lcdprint' program we have produced is not working with your Tevion. It could be that the hardware is sufficiently different that it is not compatible with our libreciva hardware library (which is based on the 255-c-xxx releases). Could you try again with the latest version of the patchserver to see if there is any difference.

patchfiles are just .tar.bz2 files which contain an install-me script. The sharpfin-base patchfile installs three ipkg files (sharpfin-base, sharpfin-www and sharpfin-telnetd) These do not overwrite any existing programs, but essentially install /bin/sharpfin /bin/login /usr/sbin/httpd /usr/sbin/telnetd /etc/rc2.d/S10telnetd /etc/rc2.d/S15httpd and various webpages and scripts. These files should not collide with any of the existing files on your radio

When you say restarts the network, does your radio reboot?

samjam: It is possible that the problem lies with the lcdprint program's contrast adjustment. The radios we have access to do not have a contrast capability, so we have been unable to test the contrast code. The lcdprint tries to set the contrast to 50%. Could you drop me an email at trumpton(*)sharpfin.zevv.nl, and I'll send you a different test.patch file to try, which does not adjust the contrast at all

samjam: Well... I patched it with the real patch and it worked - I can now login THANKYOU.... but I never did get anything on the LCD.

I've emailed you so I can try to debug the lcd with you. Maybe now I will get NTP to work so I don't have to set the clock every time it turns on.

(Funny, because it when patchserver is running I see it resolve ntp.reciva.com)


Nigelcliffe; Unfortunately stuck at first hurdle; the patchserver runs on my computer (well two of them), but though the radio connects, the patchserver doesn't then connect to the DNS to perform the lookup. Thus those lookups all fail, and the radio reports a DNS problem. Any clues ? ISP is Demon and a static IP address if that's the issue.


Oops

Manksman Suggestion - "We recommend installing any previous third party patches" should read "Uninstalling"

Trumpton Thanks MM. This article is the only write-protected page, as we'd hate someone to upload a trojan, and others download it thinking it's a tested release.