[asterisk-users] Cisco 7970, CTLSEP<mac>.tlv
Jason Parker
jparker at digium.com
Thu Aug 7 10:50:37 CDT 2008
Jason Parker wrote:
> I just wanted to post this so that it was out there and Googleable. Hopefully
> it will save other people a bit of time.
>
> If you have a Cisco phone (I was testing with a 7970, though presumably it would
> affect 7960 and others as well) that is looping trying to fetch the CTL tlv file
> - it may be because you are using Debians 'tftpd' (should be
> netkit-tftpd...*cough*hey, Debian developers*cough*) package, which is
> apparently not RFC 783 (tftp) compliant with "file not found" responses. The
> whopping 18 page RFC states that Error Code should be 0x00,0x01 for "file not
> found" errors, but netkit-tftpd returns 0x00,0x00 which is "Not defined" -
> causing the phone to ignore it and request the file again a few seconds later.
>
> Solution: Switch to any other tftpd. The moment I switched to tftpd-hpa or
> atftpd, the phone stopped looping, picked up the SEP<mac>.cnf.xml file, and
> immediately registered to Asterisk.
>
> Hopefully in the future Debian will rename, remove, or fix this package so it is
> no longer the default tftpd.
>
Responding to myself...
When I initially sent this, I had made several false assumptions. The biggest
of which, was that the 'tftpd' package in Debian was no longer maintained
(upstream hadn't made a release in 8 years, and Debian hadn't made a release in
3 years - I think it was a fairly reasonable one).
Well, the maintainer of this package, Alberto, emailed me to let me know that
somebody pointed him to this post, and that less than 24 hours later, he had
fixed this bug (I've confirmed this) and made a new release - 0.17-16 - which is
currently in Sid, and will hopefully be put into Lenny. This can be downloaded
from http://packages.debian.org/search?keywords=tftpd
Also, as Alberto correctly pointed out - I violated one of the most important
rules of Open Source Software. If I may quote him: "You had perfectly traced
the problem, you perfectly described it, god! you even gave a reference to the
RFC. You had the perfect bug report, but it was never going to make it to
me.... arrrggg :) Such a great loss!!" I failed to complete one critical step
- reporting a bug. It ended up working out, but only because somebody else took
the time to report the bug.
More information about the asterisk-users
mailing list