This happens only during the install process ONLY; that the system
correctly generates resolv.conf once installed.
This occured by the limitation of setdomainname() and getdomainame() in
doDhcp(). setdomainame() and getdomainname() cannot use with the string
exceeding a length of 64 bytes.
In doDhcp(), a child process is created to get the information from DHCP
with libdhcp. The child process executes setdomainname() with the domain
information collected from DHCP. That's what they configured with
"option domain-name". If it exceeds a length of 64 bytes,
setdomainname() fails and the following error message is outputed.
failed to set domain name in doDhcp: Invalid argument
On the other hand, the parent process waits the child process to exit.
And then, it tries to get the domain information with getdomainname().
But, it should get empty string because setdomainname() failed by the
child process. As the result, nothing is set to 'search' in resolv.conf.
setdomainanme() and getdomainname() are used to pass the domain name
from the child process to the parent process. But, those are used to
set/get NIS domainname, not DNS domainname. So, I think it's better to
pass it as bootfile information in doDhcp() is passed.
This happens only during the install process ONLY; that the system
correctly generates resolv.conf once installed.
This occured by the limitation of setdomainname() and getdomainame() in
doDhcp(). setdomainame() and getdomainname() cannot use with the string
exceeding a length of 64 bytes.
In doDhcp(), a child process is created to get the information from DHCP
with libdhcp. The child process executes setdomainname() with the domain
information collected from DHCP. That's what they configured with
"option domain-name". If it exceeds a length of 64 bytes,
setdomainname() fails and the following error message is outputed.
failed to set domain name in doDhcp: Invalid argument
On the other hand, the parent process waits the child process to exit.
And then, it tries to get the domain information with getdomainname().
But, it should get empty string because setdomainname() failed by the
child process. As the result, nothing is set to 'search' in resolv.conf.
setdomainanme() and getdomainname() are used to pass the domain name
from the child process to the parent process. But, those are used to
set/get NIS domainname, not DNS domainname. So, I think it's better to
pass it as bootfile information in doDhcp() is passed.
This happens only during the install process ONLY; that the system
correctly generates resolv.conf once installed.
This occured by the limitation of setdomainname() and getdomainame() in
doDhcp(). setdomainame() and getdomainname() cannot use with the string
exceeding a length of 64 bytes.
In doDhcp(), a child process is created to get the information from DHCP
with libdhcp. The child process executes setdomainname() with the domain
information collected from DHCP. That's what they configured with
"option domain-name". If it exceeds a length of 64 bytes,
setdomainname() fails and the following error message is outputed.
failed to set domain name in doDhcp: Invalid argument
On the other hand, the parent process waits the child process to exit.
And then, it tries to get the domain information with getdomainname().
But, it should get empty string because setdomainname() failed by the
child process. As the result, nothing is set to 'search' in resolv.conf.
setdomainanme() and getdomainname() are used to pass the domain name
from the child process to the parent process. But, those are used to
set/get NIS domainname, not DNS domainname. So, I think it's better to
pass it as bootfile information in doDhcp() is passed.
_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@redhat.com
https://www.redhat.com/mailman/listinfo/anaconda-devel-list
08-09-2010, 05:52 PM
"Brian C. Lane"
Support long 'option domain-name' values in loader (#578110)
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 08/06/2010 10:45 PM, dcantrell@redhat.com wrote:
> From: David Cantrell <dcantrell@redhat.com>
>
> During anaconda installation, resolv.conf is not updated with the proper
> domain name in the "search" field if the domain name is too long. Eg,
>
> /etc/dhcpd.conf
> ---------------------
> option domain-name stl.kewr1.s.vonagenetworks.net
> stl.kewr1.m.vonagenetworks.net vonagenetworks.net vonage.net vonage.com";
> ---------------------
Ack
- --
Brian C. Lane <bcl@redhat.com>
Red Hat / Port Orchard, WA
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.14 (GNU/Linux)
Comment: Remember Lexington Green!