Hello community, here is the log from the commit of package linuxrc checked in at Sun Mar 18 06:55:48 CET 2007. -------- --- linuxrc/linuxrc.changes 2007-02-09 14:53:57.000000000 +0100 +++ /mounts/work_src_done/STABLE/linuxrc/linuxrc.changes 2007-03-16 15:05:10.000000000 +0100 @@ -1,0 +2,11 @@ +Fri Mar 16 15:05:06 CET 2007 - snwint@suse.de + +- accept 'BOOTIF' as alias to 'netdevice' +- mls: bad tftp response overwrites the request (#242892) +- added netsetup=dhcp,all option to try all network interfaces + for dhcp (#249046) +- work around problem with too early DHCP releases (#221865) +- don't ask for keymap when starting rescue system + on serial console (#255344) + +------------------------------------------------------------------- Old: ---- linuxrc-2.1.22.tar.bz2 New: ---- linuxrc-2.1.23.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ linuxrc.spec ++++++ --- /var/tmp/diff_new_pack.c29882/_old 2007-03-18 06:55:13.000000000 +0100 +++ /var/tmp/diff_new_pack.c29882/_new 2007-03-18 06:55:13.000000000 +0100 @@ -1,5 +1,5 @@ # -# spec file for package linuxrc (Version 2.1.22) +# spec file for package linuxrc (Version 2.1.23) # # Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany. # This file and all modifications and additions to the pristine @@ -16,9 +16,9 @@ Group: System/Boot Autoreqprov: on Summary: SUSE Installation Program -Version: 2.1.22 +Version: 2.1.23 Release: 1 -Source: linuxrc-2.1.22.tar.bz2 +Source: linuxrc-2.1.23.tar.bz2 BuildRoot: %{_tmppath}/%{name}-%{version}-build %description @@ -52,7 +52,15 @@ %doc README.linuxrc %doc linuxrc.html -%changelog -n linuxrc +%changelog +* Fri Mar 16 2007 - snwint@suse.de +- accept 'BOOTIF' as alias to 'netdevice' +- mls: bad tftp response overwrites the request (#242892) +- added netsetup=dhcp,all option to try all network interfaces + for dhcp (#249046) +- work around problem with too early DHCP releases (#221865) +- don't ask for keymap when starting rescue system + on serial console (#255344) * Fri Feb 09 2007 - snwint@suse.de - Korean no longer requires extra font * Mon Feb 05 2007 - snwint@suse.de ++++++ linuxrc-2.1.22.tar.bz2 -> linuxrc-2.1.23.tar.bz2 ++++++ diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linuxrc-2.1.22/auto2.c new/linuxrc-2.1.23/auto2.c --- old/linuxrc-2.1.22/auto2.c 2007-01-26 12:56:45.000000000 +0100 +++ new/linuxrc-2.1.23/auto2.c 2007-03-16 15:03:00.000000000 +0100 @@ -544,7 +544,7 @@ ) return 1; /* net_stop() - just in case */ - net_stop(); + if(!getenv("PXEBOOT")) net_stop(); fprintf(stderr, "Trying to activate %s\n", device); @@ -779,6 +779,7 @@ void auto2_user_netconfig() { int win_old; + slist_t *sl; if(!config.net.do_setup) return; @@ -796,9 +797,41 @@ } if(config.net.configured == nc_none || config.net.do_setup) { - if(!(win_old = config.win)) util_disp_init(); - net_config(); - if(!win_old) util_disp_done(); + if(config.net.all_ifs && (config.net.setup & NS_DHCP)) { + util_update_netdevice_list(NULL, 1); + + config.net.configured = nc_none; + + for(sl = config.net.devices; sl && config.net.configured == nc_none; sl = sl->next) { + str_copy(&config.net.device, sl->key); + + printf( + "Sending %s request to %s...\n", + config.net.use_dhcp ? "DHCP" : "BOOTP", config.net.device + ); + fflush(stdout); + fprintf(stderr, + "Sending %s request to %s... ", + config.net.use_dhcp ? "DHCP" : "BOOTP", config.net.device + ); + config.net.use_dhcp ? net_dhcp() : net_bootp(); + if( + !config.net.hostname.ok || + !config.net.netmask.ok || + !config.net.broadcast.ok + ) { + fprintf(stderr, "no/incomplete answer.\n"); + } + else { + fprintf(stderr, "ok.\n"); + config.net.configured = config.net.use_dhcp ? nc_dhcp : nc_bootp; + } + } + } else { + if(!(win_old = config.win)) util_disp_init(); + net_config(); + if(!win_old) util_disp_done(); + } } if(config.net.configured == nc_none) { diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linuxrc-2.1.22/Changelog new/linuxrc-2.1.23/Changelog --- old/linuxrc-2.1.22/Changelog 2007-02-09 14:53:41.000000000 +0100 +++ new/linuxrc-2.1.23/Changelog 2007-03-16 15:03:19.000000000 +0100 @@ -1,3 +1,12 @@ +16/3/2007: v2.1.23 + - accept 'BOOTIF' as alias to 'netdevice' + - mls: bad tftp response overwrites the request (#242892) + - added netsetup=dhcp,all option to try all network interfaces + for dhcp (#249046) + - work around problem with too early DHCP releases (#221865) + - don't ask for keymap when starting rescue system + on serial console (#255344) + 9/2/2007: v2.1.22 - Korean no longer requires extra font diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linuxrc-2.1.22/ext4 new/linuxrc-2.1.23/ext4 --- old/linuxrc-2.1.22/ext4 1970-01-01 01:00:00.000000000 +0100 +++ new/linuxrc-2.1.23/ext4 2007-02-15 18:42:59.000000000 +0100 @@ -0,0 +1,31 @@ ++static int probe_ext4(struct blkid_probe *probe, ++ struct blkid_magic *id __BLKID_ATTR((unused)), ++ unsigned char *buf) ++{ ++ struct ext2_super_block *es; ++ es = (struct ext2_super_block *)buf; ++ ++ /* Distinguish between jbd and ext2/3 fs */ ++ if (blkid_le32(es->s_feature_incompat) & ++ EXT3_FEATURE_INCOMPAT_JOURNAL_DEV) ++ return -BLKID_ERR_PARAM; ++ ++ /* Distinguish between ext3 and ext2 */ ++ if (!(blkid_le32(es->s_feature_compat) & ++ EXT3_FEATURE_COMPAT_HAS_JOURNAL)) ++ return -BLKID_ERR_PARAM; ++ ++ /* Distinguish between ext4 and ext3 */ ++ if (!(blkid_le32(es->s_feature_incompat) & ++ EXT3_FEATURE_INCOMPAT_EXTENTS)) ++ return -BLKID_ERR_PARAM; ++ ++ get_ext2_info(probe->dev, buf); ++ ++ if ((es->s_feature_incompat & EXT3_FEATURE_COMPAT_HAS_JOURNAL) && ++ !uuid_is_null(es->s_journal_uuid)) ++ set_uuid(probe->dev, es->s_journal_uuid, "EXT_JOURNAL"); ++ ++ blkid_set_tag(probe->dev, "SEC_TYPE", "ext2", sizeof("ext2")); ++ ++ return 0; diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linuxrc-2.1.22/file.c new/linuxrc-2.1.23/file.c --- old/linuxrc-2.1.22/file.c 2007-02-05 14:02:50.000000000 +0100 +++ new/linuxrc-2.1.23/file.c 2007-03-06 16:56:13.000000000 +0100 @@ -275,7 +275,8 @@ { key_ibft_netmask, "iSCSI_INITIATOR_NETMASK", kf_ibft }, { key_ibft_gateway, "iSCSI_INITIATOR_GATEWAY", kf_ibft }, { key_ibft_dns, "iSCSI_INITIATOR_DNSADDR1", kf_ibft }, - { key_net_retry, "NetRetry", kf_cfg + kf_cmd } + { key_net_retry, "NetRetry", kf_cfg + kf_cmd }, + { key_bootif, "BOOTIF", kf_cmd } }; static struct { @@ -1215,6 +1216,7 @@ else if(!strcmp(s, "hostip")) i = NS_HOSTIP; else if(!strcmp(s, "netmask")) i = NS_NETMASK; else if(!strcmp(s, "gateway")) i = NS_GATEWAY; + else if(!strcmp(s, "all")) i = NS_ALLIFS; else if(!strncmp(s, "nameserver", sizeof "nameserver" - 1)) { i = NS_NAMESERVER; t = s + sizeof "nameserver" - 1; @@ -1230,7 +1232,10 @@ sizeof config.net.nameserver / sizeof *config.net.nameserver : u; } - if(i) { + if(i == NS_ALLIFS) { + config.net.all_ifs = *sl->key == '-' ? 0 : 1; + } + else if(i) { if(*sl->key == '-') { config.net.setup &= ~i; } @@ -1457,6 +1462,14 @@ if(f->is.numeric) config.net.retry = f->nvalue; break; + case key_bootif: + if(strlen(f->value) > 3) { + str_copy(&config.net.device, f->value + 3); + for(s = config.net.device; *s; s++) if(*s == '-') *s = ':'; + config.net.device_given = 1; + } + break; + default: break; } diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linuxrc-2.1.22/file.h new/linuxrc-2.1.23/file.h --- old/linuxrc-2.1.22/file.h 2007-02-05 14:02:42.000000000 +0100 +++ new/linuxrc-2.1.23/file.h 2007-02-14 11:50:35.000000000 +0100 @@ -48,7 +48,7 @@ key_dhcpcd, key_layer2, key_wlan_essid, key_wlan_auth, key_wlan_key_ascii, key_wlan_key_hex, key_wlan_key_pass, key_wlan_key_len, key_netcardname, key_ibft_hwaddr, key_ibft_ipaddr, key_ibft_netmask, key_ibft_gateway, - key_ibft_dns, key_net_retry + key_ibft_dns, key_net_retry, key_bootif } file_key_t; typedef enum { diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linuxrc-2.1.22/global.h new/linuxrc-2.1.23/global.h --- old/linuxrc-2.1.22/global.h 2007-02-05 14:01:04.000000000 +0100 +++ new/linuxrc-2.1.23/global.h 2007-03-06 16:55:16.000000000 +0100 @@ -231,6 +231,7 @@ #define NS_NETMASK (1 << 3) #define NS_GATEWAY (1 << 4) #define NS_NAMESERVER (1 << 5) +#define NS_ALLIFS (1 << 6) #define NS_DEFAULT (NS_DHCP | NS_HOSTIP | NS_NETMASK | NS_GATEWAY | NS_NAMESERVER) @@ -460,6 +461,7 @@ unsigned is_configured:1; /* set if network is configured */ unsigned nfs_tcp:1; /* use TCP for NFS */ unsigned keep:1; /* keep network interface up */ + unsigned all_ifs:1; /* try all interfaces */ unsigned do_setup; /* do network setup */ unsigned setup; /* bitmask: do these network setup things */ char *device; /* currently used device */ diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linuxrc-2.1.22/linuxrc.c new/linuxrc-2.1.23/linuxrc.c --- old/linuxrc-2.1.22/linuxrc.c 2007-02-02 15:02:40.000000000 +0100 +++ new/linuxrc-2.1.23/linuxrc.c 2007-03-16 14:56:24.000000000 +0100 @@ -256,7 +256,7 @@ err = inst_start_demo(); } else if(!config.manual) { - if(config.rescue) { + if(config.rescue && !config.serial) { int win_old = 1; if( diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linuxrc-2.1.22/tftp.c new/linuxrc-2.1.23/tftp.c --- old/linuxrc-2.1.22/tftp.c 2006-06-30 14:24:40.000000000 +0200 +++ new/linuxrc-2.1.23/tftp.c 2007-02-19 17:08:26.000000000 +0100 @@ -23,12 +23,14 @@ struct sockaddr_in osa; struct timeval tv; socklen_t osl; + unsigned char sendbuf[4 + 512]; tftp->buf[0] = code >> 8; tftp->buf[1] = code; + memcpy(sendbuf, tftp->buf, len); for (retry = 0; retry < tftp->timo * 5; retry++) { - if ((r = sendto(tftp->s, tftp->buf, len, 0, (struct sockaddr *)&tftp->sa, sizeof(tftp->sa))) == -1) + if ((r = sendto(tftp->s, sendbuf, len, 0, (struct sockaddr *)&tftp->sa, sizeof(tftp->sa))) == -1) { sprintf(tftp->buf, "sendto: %s", strerror(errno)); return -1; diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linuxrc-2.1.22/util.c new/linuxrc-2.1.23/util.c --- old/linuxrc-2.1.22/util.c 2007-02-05 15:54:43.000000000 +0100 +++ new/linuxrc-2.1.23/util.c 2007-03-06 17:19:25.000000000 +0100 @@ -1219,6 +1219,7 @@ add_flag(&sl0, buf, config.scsi_rename, "scsirename"); add_flag(&sl0, buf, config.zen, "zen"); add_flag(&sl0, buf, config.has_pcmcia, "pcmcia"); + add_flag(&sl0, buf, config.net.all_ifs, "all_ifs"); if(*buf) slist_append_str(&sl0, buf); sprintf(buf, "netsetup = 0x%x/0x%x", config.net.do_setup, config.net.setup); diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linuxrc-2.1.22/VERSION new/linuxrc-2.1.23/VERSION --- old/linuxrc-2.1.22/VERSION 2007-02-07 12:15:02.000000000 +0100 +++ new/linuxrc-2.1.23/VERSION 2007-03-16 15:04:49.000000000 +0100 @@ -1 +1 @@ -2.1.22 +2.1.23 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org