Bug 53763
| Summary: | tftp client fails to PUT | ||
|---|---|---|---|
| Product: | [Retired] Red Hat Linux | Reporter: | Kjetil T. Homme <kjetilho> |
| Component: | tftp | Assignee: | Phil Knirsch <pknirsch> |
| Status: | CLOSED CURRENTRELEASE | QA Contact: | David Lawrence <dkl> |
| Severity: | medium | Docs Contact: | |
| Priority: | medium | ||
| Version: | 7.1 | CC: | rvokal |
| Target Milestone: | --- | ||
| Target Release: | --- | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2001-10-25 14:28:38 UTC | Type: | --- |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
> I really can't understand how this bug could live this long
I think netkit must not have any MAINTAINERS.
I just wasted a day tracking this bug in the netkit-0.17 tftp.c
sendfile() down.
The /usr/bin/tftp in RedHat 7.1 is plain broken.
The rh7.1 tftp comes from the netkit-tftp-0.17 package, not the
gnu inetutils package. Diffing the two leads me to believe that
the netkit tftp was derived from a previous version of gnu inetutils
or they had a common ancestor. The netkit tftp has lots of extra
cruft, some of which comes from a person who does not understand
the C language very well. This person must never have tested his
tftp.c sendfile() change because it could never have worked.
The behavior is to send the WRQ (send file) request, get the ack,
then exit, never sending any data.
The setsegsize patch is in the RHL 7.2 tftp, I believe. Please give it a try. |
From Bugzilla Helper: User-Agent: Mozilla/4.77 [en] (X11; U; Linux 2.4.7 i686) Description of problem: tftp would get an ACK from my Cisco router, but drop out of the loop before it sent any data. The problem is the size variable, which is the size of the WRQ during firsttrip, not how many octets were read from file. Version-Release number of selected component (if applicable): How reproducible: Always Steps to Reproduce: 1. Start tftp 2. Connect to Cisco 677i router 3. put some file Additional info: I fixed it by setting size = SEGSIZE when firsttrip in tftp.c:sendfile() if (firsttrip) { firsttrip = 0; + size = SEGSIZE; } else { amount += size; } (I really can't understand how this bug could live this long, it must be something about the tftp server people usually talk to.)