Re: panel error *** ORBit patch ***

On Thu, 13 Aug 1998, Elliot Lee wrote:
> On Thu, 13 Aug 1998, James Michael Mastros wrote:
> > 
> > Still, when the lookups fail, is your friend.
> > 
> > In any case, how about this hack: when making the connection, check if both
> > ends are the same machine -- and if so, ignore the given IPs/hostnames, and
> > use instead.
> How are you going to check if both ends are on the same machine?
> That's why we need hostnames! They do this for us! They _are_ the unique
> identifier that distinguishes different hosts :-)

That was essentially what I said in my "best solution".  To put it in
  hn = the machines hostname
  hent = gethostbyname(hn)
  if (hent)
    hent = gethostbyaddr(hent->addr)
  if (!hent)
    corbaname = "localhost"
    corbaname = hent->name

As far as I can tell, that should work, but you know the rest of ORBit far
far better than I, Elliot.  I also don't think that it is unnessisarily
catering to people.  If a machine wants to be accessible on the network,
they need proper networking settings, otherwise, everything will work

Or, if you want to be really safe about it, try the following:
if (!hent)
-    corbaname = "localhost"
+    hent = gethostbyname("localhost")
+    if (hent)  hent = gethostbyaddr(hent->addr)
+    if (!hent) fail with error
+    corbaname = hent->name

> > > 	- The IP address pointed to by 'hostname' should reverse-resolve
> > > 	  to a valid hostname (presumably, but not required to be, the FQDN)
> > Why not just use IPs?
> Why does the Internet need DNS at all?
> Even with no human intervention at all, there are still things like
> round-robin DNS and IPv6 to consider. (To get the IPv6 address, you need a
> hostname).

Yes, DNS is useful under IPv4, it is a requirement under IPv6.  I hope I
can change my bosses mind(s) about DNS before we need IPv6.

Just out of curiosity, what is round-robin DNS?  I don't think I've heard
the term before.

> > > 	- The 'hostname' and/or FQDN retrieved using the above procedure
> > > 	  should be valid for the lifetime of a CORBA server (and the
> > >	  [objects.)]
> > This is the killer -- sometimes the `hostname` will resolve to a remote
> > address, and then at a later point you will loose remote connectivity, or
> > the address will change.  (This futzes X too, but there you can manualy
> > overide it's guess where the server lives.)
> ORBit doesn't care if _the IP address that 'hostname' points to_ is valid
> for the lifetime of the CORBA server, only the 'hostname' itself. Just
> point 'hostname' to a different IP address as needed, and new connections
> will continue to succeed. 

My bit above seems to meet this requirement.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]