java/code/src/com/redhat/rhn/frontend/action/kickstart/ScheduleKickstartWizardAction.java
| 10 ++++++++--
java/code/src/com/redhat/rhn/manager/kickstart/KickstartScheduleCommand.java
| 3 ++-
java/code/webapp/WEB-INF/pages/common/fragments/kickstart/schedule/network-options.jspf
| 8 ++++----
3 files changed, 14 insertions(+), 7 deletions(-)
New commits:
commit c2eec27920d8da8354918fcb83d81462da108ec8
Author: Partha Aji <paji(a)redhat.com>
Date: Fri Jul 24 18:56:04 2009 -0400
513683 - Added 'link' as a network device option
diff --git
a/java/code/src/com/redhat/rhn/frontend/action/kickstart/ScheduleKickstartWizardAction.java
b/java/code/src/com/redhat/rhn/frontend/action/kickstart/ScheduleKickstartWizardAction.java
index 02850f9..1d2cd51 100644
---
a/java/code/src/com/redhat/rhn/frontend/action/kickstart/ScheduleKickstartWizardAction.java
+++
b/java/code/src/com/redhat/rhn/frontend/action/kickstart/ScheduleKickstartWizardAction.java
@@ -98,7 +98,8 @@ public class ScheduleKickstartWizardAction extends RhnWizardAction {
public static final String TARGET_PROFILE_TYPE = "targetProfileType";
public static final String NETWORK_TYPE_DHCP = "networkTypeDhcp";
public static final String NETWORK_INTERFACE = "networkInterface";
- public static final String NETWORK_INTERFACES = "networkInterfaces";
+ public static final String DHCP_NETWORK_INTERFACES =
"dhcpNetworkInterfaces";
+ public static final String STATIC_NETWORK_INTERFACES =
"staticNetworkInterfaces";
/**
* {@inheritDoc}
*/
@@ -191,7 +192,12 @@ public class ScheduleKickstartWizardAction extends RhnWizardAction {
itr.remove();
}
}
- context.getRequest().setAttribute(NETWORK_INTERFACES, nics);
+ context.getRequest().setAttribute(STATIC_NETWORK_INTERFACES, nics);
+ List<NetworkInterface> dhcpNics = new
LinkedList<NetworkInterface>(nics);
+ NetworkInterface link = new NetworkInterface();
+ link.setName("link");
+ dhcpNics.add(0, link);
+ context.getRequest().setAttribute(DHCP_NETWORK_INTERFACES, dhcpNics);
if (form.get(NETWORK_TYPE_DHCP) == null) {
form.set(NETWORK_TYPE_DHCP, Boolean.TRUE);
}
diff --git a/java/code/src/com/redhat/rhn/manager/kickstart/KickstartScheduleCommand.java
b/java/code/src/com/redhat/rhn/manager/kickstart/KickstartScheduleCommand.java
index 942fdbd..ca44b42 100644
--- a/java/code/src/com/redhat/rhn/manager/kickstart/KickstartScheduleCommand.java
+++ b/java/code/src/com/redhat/rhn/manager/kickstart/KickstartScheduleCommand.java
@@ -1464,7 +1464,8 @@ public class KickstartScheduleCommand extends BaseSystemOperation {
}
private ValidatorError validateNetworkInterface() {
- if (!StringUtils.isEmpty(networkInterface)) {
+ if (!StringUtils.isEmpty(networkInterface) &&
+ !(isDhcp && "link".equals(networkInterface)))
{
boolean nicAvailable = false;
for (NetworkInterface nic : server.getNetworkInterfaces()) {
if (networkInterface.equals(nic.getName())) {
diff --git
a/java/code/webapp/WEB-INF/pages/common/fragments/kickstart/schedule/network-options.jspf
b/java/code/webapp/WEB-INF/pages/common/fragments/kickstart/schedule/network-options.jspf
index db56262..c2cca49 100644
---
a/java/code/webapp/WEB-INF/pages/common/fragments/kickstart/schedule/network-options.jspf
+++
b/java/code/webapp/WEB-INF/pages/common/fragments/kickstart/schedule/network-options.jspf
@@ -11,7 +11,7 @@
/>
<bean:message
key="kickstart.netconn.dhcp.jsp.label"/>
<c:choose>
- <c:when test="${empty requestScope.networkInterfaces}">
+ <c:when test="${empty requestScope.dhcpNetworkInterfaces}">
<input type="text" name="networkInterface"
id="dhcpNetworkId" size="4" maxlength="10"
<c:if test="${not
form.networkTypeDhcp}">disabled="true"</c:if>
value="${form.networkInterface}"/>
@@ -20,7 +20,7 @@
<select name="networkInterface" id="dhcpNetworkId"
<c:if test="${not
form.networkTypeDhcp}">disabled="true"</c:if>
- <c:forEach var="nic"
items="${requestScope.networkInterfaces}">
+ <c:forEach var="nic"
items="${requestScope.dhcpNetworkInterfaces}">
<option
<c:if test="${nic.name ==
form.networkInterface}">selected="selected"</c:if>
value='${nic.name}'>${nic.name}</option>
@@ -35,7 +35,7 @@
/>
<bean:message
key="kickstart.netconn.static.jsp.label"/>
<c:choose>
- <c:when test="${empty requestScope.networkInterfaces}">
+ <c:when test="${empty requestScope.staticNetworkInterfaces}">
<input type="text" name="networkInterface"
id="staticNetworkId" size="4" maxlength="10"
<c:if
test="${form.networkTypeDhcp}">disabled="true"</c:if>
value="${form.networkInterface}"/>
@@ -44,7 +44,7 @@
<select name="networkInterface" id="staticNetworkId"
<c:if
test="${form.networkTypeDhcp}">disabled="true"</c:if>
- <c:forEach var="nic"
items="${requestScope.networkInterfaces}">
+ <c:forEach var="nic"
items="${requestScope.staticNetworkInterfaces}">
<option
<c:if test="${nic.name ==
form.networkInterface}">selected="selected"</c:if>
value='${nic.name}'>${nic.name}</option>