Created attachment 329056 [details] Patch for ypbind-mt. Apply after creating Fedora 10 version of source via "rpmbuild -bp ypbind.spec". Description of problem: When using DBus/NetworkManager, ypbind tries to resolve the IP address of a named server even if no network is yet available to provide DNS. When server lookup fails, ypbind silently falls into broadcast mode and never again tries to resolve server addresses, even when a network becomes available. On networks where broadcast from the client is not possible (e.g., if the server is on a different network), binding never occurs. Version-Release number of selected component (if applicable): 1.20.4-8 How reproducible: moderately easy Steps to Reproduce: 1. Network connection should be handled via NetworkManager. 2. Set up a one-line /etc/yp.conf like: domain mydomain server nis.mydomain.org The server chosen should be on a network not accessible via broadcast (i.e., on a different network), and the server must be specified by name and not by IP address, since the bug is related to DNS availability. 3. as root: # service NetworkManager stop; service ypbind stop # service NetworkManager start; /sbin/ypbind -d Note that to see the failure, it is critical that ypbind be started quickly after NetworkManager, so that DNS is not yet available when ypbind starts. So keep the second line as one line. Actual results: The ypbind process will try forever to bind via broadcast and will never succeed. Expected results: The ypbind process should successfully bind to its specified server shortly after it finds out via DBus that a network is available. Additional info: See the attached patch, which solves the problem. If dbus is being used, ypbind will not try to resolve a server name until NetworkManager indicates that a network is available. Also, with the patches, ypbind will not "fall into" broadcast mode if dbus is being used. Note that ypbind's broadcast mode poses some security risk (as noted in the ypbind man page), and that entering broadcast mode silently with no indication to do so from yp.conf or from ypbind's "-broadcast" flag is probably a bad thing to do... This behavior is not in the raw version of ypbind-mt, and is only added by patches in Fedora's distribution.
Note that in Step 3 of "Steps to Reproduce", the line for restarting can be # service NetworkManager start; service ypbind start and the bind will still fail. The advantage of starting ypbind by hand with the "-d" (debug) flag is that you will see the fallback to broadcast mode, and see the continuing failure to bind.
Reproduced. I think that it's reasonable change. Fixed and ready for testing in Rawhide.
I got the new RPM from Rawhide, and it fixes the problem. Thanks!
The patch breaks ypbind without NetworkManager. We have to find a way how to let know ypbind that NetworkManager is used - in the interval between start of ypbind and full functionality of NetworkManager.
This message is a reminder that Fedora 10 is nearing its end of life. Approximately 30 (thirty) days from now Fedora will stop maintaining and issuing updates for Fedora 10. It is Fedora's policy to close all bug reports from releases that are no longer maintained. At that time this bug will be closed as WONTFIX if it remains open with a Fedora 'version' of '10'. Package Maintainer: If you wish for this bug to remain open because you plan to fix it in a currently maintained version, simply change the 'version' to a later Fedora version prior to Fedora 10's end of life. Bug Reporter: Thank you for reporting this issue and we are sorry that we may not be able to fix it before Fedora 10 is end of life. If you would still like to see this bug fixed and are able to reproduce it against a later version of Fedora please change the 'version' of this bug to the applicable version. If you are unable to change the version, please add a comment here and someone will do it for you. Although we aim to fix as many bugs as possible during every release's lifetime, sometimes those efforts are overtaken by events. Often a more recent Fedora release includes newer upstream software that fixes bugs or makes them obsolete. The process we are following is described here: http://fedoraproject.org/wiki/BugZappers/HouseKeeping
Changing to F-12 since this problem is still present.
Just as a note, I'm now running a stock copy of ypbind built from: ftp://ftp.kernel.org/pub/linux/utils/net/NIS/ypbind-mt-1.29.91.tar.gz It does not show the bug described here. However, I know there are patches that Fedora applied to the stock 1.20.4 distro of ypbind-mt, and I don't know that 1.29.91 addresses issues dealt with by those patches.
The patch has been improved in ypbind-1.20.4-22 (Fedora 12), and it should fix the issue.
The latest build is here: http://koji.fedoraproject.org/koji/buildinfo?buildID=167079
*** Bug 507763 has been marked as a duplicate of this bug. ***
ypbind-1.20.4-23.fc12 has been submitted as an update for Fedora 12. http://admin.fedoraproject.org/updates/ypbind-1.20.4-23.fc12
ypbind-1.20.4-23.fc12 has been pushed to the Fedora 12 testing repository. If problems still persist, please make note of it in this bug report. If you want to test the update, you can install it with su -c 'yum --enablerepo=updates-testing update ypbind'. You can provide feedback for this update here: http://admin.fedoraproject.org/updates/ypbind-1.20.4-23.fc12
ypbind-1.20.4-23.fc12 has been pushed to the Fedora 12 stable repository. If problems still persist, please make note of it in this bug report.