diff options
author | David Cantrell <dcantrell@redhat.com> | 2006-06-30 18:46:08 +0000 |
---|---|---|
committer | David Cantrell <dcantrell@redhat.com> | 2006-06-30 18:46:08 +0000 |
commit | f945047d9ebd0344eea76e94cb9bba81a0cec0f1 (patch) | |
tree | b870a469a7307e79aeb49650dd848e589609677e /loader2/net.c | |
parent | 3f12e85f2b72f2f3a59b2b1672e46eb32441ab94 (diff) | |
download | anaconda-f945047d9ebd0344eea76e94cb9bba81a0cec0f1.tar.gz anaconda-f945047d9ebd0344eea76e94cb9bba81a0cec0f1.tar.xz anaconda-f945047d9ebd0344eea76e94cb9bba81a0cec0f1.zip |
More problems with memory corru���r���z]��@��Z������(:�G5S�s"����.�>�5��c��(��*�m�|[�m���d��ZZ)���wI2�tu& �>�5�zG�
emr�����E�D0�Oi)h�!�CC�����U��j1+d�R`V�����
SD
|���=T^s0s�.��qE������*��[,�������[%<�`�+�=G�E���|�R���/.%M���Y��P��Ne���Qn��?iQ�8Y�h�8��d{��H��AU��g�9�$�van��u�( ��\j�X��{S,4���^^ #W�J!�V�I���)�$��9*�&bL2����KYw1HWY-��g���y��i��������2_a,M1�b���)Pr}��X��ga=Ln���'��q
}p~h1(;�.�S��C���y%���6U1�w�T[��>B�����\&�~Xh������)�5ption as well as some
housekeeping tasks:
* loader2/net.c (setupInterface): Removed and moved those two lines to
the calling function (configureNetwork).
* loader2/net.c (readNetConfig): Spelling error fix. Calculate IPv4
broadcast if user did a static IP config, close any possibly open
dhcp_nic handle if doing a static IP config.
* loader2/net.h: Removed setupInterface prototype.
Diffstat (limited to 'loader2/net.c')
-rw-r--r-- | loader2/net.c | 27 |
1 files changed, 17 insertions, 10 deletions
diff --git a/loader2/net.c b/loader2/net.c index 6b7596459..3c41a52b3 100644 --- a/loader2/net.c +++ b/loader2/net.c @@ -524,7 +524,7 @@ int readNetConfig(char * device, struct networkDeviceConfig * cfg, struct networkDeviceConfig newCfg; struct intfconfig_s c; int i; - struct in_addr addr; + struct in_addr addr, nm; struct in6_addr addr6; char dhcpChoice; char *dret = NULL; @@ -561,7 +561,7 @@ int readNetConfig(char * device, struct networkDeviceConfig * cfg, newCfg.essid = strdup(cfg->essid); newCfg.wepkey = strdup(cfg->wepkey); } else { - logMessage(INFO, "%s is not a wireless adaptor", device); + logMessage(INFO, "%s is not a wireless adapter", device); } text = newtTextboxReflowed(-1, -1, @@ -763,13 +763,24 @@ int readNetConfig(char * device, struct networkDeviceConfig * cfg, newtPopWindow(); + /* calculate broadcast address for IPv4 */ + addr = ip_in_addr(&cfg->dev.ip); + nm = ip_in_addr(&cfg->dev.netmask); + cfg->dev.broadcast = ip_addr_v4(ntohl((addr.s_addr & nm.s_addr) | ~nm.s_addr)); + + /* make sure we don't have a dhcp_nic handle for static */ + if ((cfg->isDynamic == 0) && (cfg->dev.dhcp_nic != NULL)) { + dhcp_nic_free(cfg->dev.dhcp_nic); + cfg->dev.dhcp_nic = NULL; + } + if (!FL_TESTING(flags)) { configureNetwork(cfg); findHostAndDomain(cfg); writeResolvConf(cfg); } - return 0; + return LOADER_OK; } static int setupWireless(struct networkDeviceConfig *dev) { @@ -796,11 +807,6 @@ static int setupWireless(struct networkDeviceConfig *dev) { return 0; } -char *setupInterface(struct networkDeviceConfig *dev) { - setupWireless(dev); - return pumpSetupInterface(&dev->dev); -} - void netlogger(void *arg, int priority, char *fmt, va_list va) { int p; char *buf = NULL; @@ -850,9 +856,10 @@ char *doDhcp(struct networkDeviceConfig *dev) { int configureNetwork(struct networkDeviceConfig * dev) { char *rc; - rc = setupInterface(dev); + setupWireless(dev); + rc = pumpSetupInterface(&dev->dev); if (rc) - logMessage(INFO, "result of setupInterface is %s", rc); + logMessage(INFO, "result of pumpSetupInterface is %s", rc); /* we need to wait for a link after setting up the interface as some * switches decide to reconfigure themselves after that (#115825) |