Bug 480096 - ypbind can fail to bind if started soon after NetworkManager
Summary: ypbind can fail to bind if started soon after NetworkManager
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: ypbind
Version: 12
Hardware: All
OS: Linux
low
medium
Target Milestone: ---
Assignee: Karel Klíč
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
: 507763 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-01-15 00:12 UTC by Chris Burghart
Modified: 2013-03-03 22:59 UTC (History)
7 users (show)

Fixed In Version: ypbind-1.20.4-23.fc12
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2010-05-19 15:10:49 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
Patch for ypbind-mt. Apply after creating Fedora 10 version of source via "rpmbuild -bp ypbind.spec". (1.66 KB, patch)
2009-01-15 00:12 UTC, Chris Burghart
no flags Details | Diff

Description Chris Burghart 2009-01-15 00:12:16 UTC
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.

Comment 1 Chris Burghart 2009-01-21 23:31:25 UTC
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.

Comment 2 Vitezslav Crhonek 2009-01-26 15:57:23 UTC
Reproduced. I think that it's reasonable change. Fixed and ready for testing in Rawhide.

Comment 3 Chris Burghart 2009-01-27 18:19:41 UTC
I got the new RPM from Rawhide, and it fixes the problem.  Thanks!

Comment 4 Vitezslav Crhonek 2009-05-21 11:49:44 UTC
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.

Comment 5 Bug Zapper 2009-11-18 10:45:34 UTC
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

Comment 6 Andrew Overholt 2009-11-24 15:04:08 UTC
Changing to F-12 since this problem is still present.

Comment 7 Chris Burghart 2009-11-24 16:00:15 UTC
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.

Comment 8 Karel Klíč 2010-04-15 15:23:16 UTC
The patch has been improved in ypbind-1.20.4-22 (Fedora 12), and it should fix the issue.

Comment 9 Karel Klíč 2010-04-15 15:25:23 UTC
The latest build is here:
http://koji.fedoraproject.org/koji/buildinfo?buildID=167079

Comment 10 Karel Klíč 2010-04-15 15:47:15 UTC
*** Bug 507763 has been marked as a duplicate of this bug. ***

Comment 11 Fedora Update System 2010-04-19 16:52:53 UTC
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

Comment 12 Fedora Update System 2010-04-21 02:21:45 UTC
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

Comment 13 Fedora Update System 2010-05-20 18:43:47 UTC
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.


Note You need to log in before you can comment on or make changes to this bug.