ACC SHELL
/**
* File: include/network/lan/dhcp.ycp
* Package: Network configuration
* Summary: Network card adresss configuration dialogs
* Authors: Michal Svec <msvec@suse.cz>
*
* $Id: dhcp.ycp 57763 2009-06-26 11:33:45Z mzugec $
*/
{
textdomain "network";
import "Label";
import "NetworkConfig";
import "Popup";
import "Wizard";
include "network/routines.ycp";
include "network/lan/help.ycp";
void initDhclientOptions(string key) {
/*
boolean dhclient_broadcast = false;
if(issubstring(NetworkConfig::DHCP["DHCLIENT_ADDITIONAL_OPTIONS"]:"", "-B"))
dhclient_broadcast = true;
UI::ChangeWidget(`id(`broadcast), `Value, dhclient_broadcast);
*/
UI::ChangeWidget(`id(`clientid), `Value, NetworkConfig::DHCP["DHCLIENT_CLIENT_ID"]:"");
UI::ChangeWidget(`id(`hostname), `Value, NetworkConfig::DHCP["DHCLIENT_HOSTNAME_OPTION"]:"");
UI::ChangeWidget(`id(`no_defaultroute), `Value, NetworkConfig::DHCP["DHCLIENT_SET_DEFAULT_ROUTE"]:true);
disableItemsIfNM([ `broadcast, `clientid, `hostname, `no_defaultroute ], false);
}
void storeDhclientOptions(string key, map event) {
NetworkConfig::DHCP["DHCLIENT_SET_DEFAULT_ROUTE"] =
UI::QueryWidget(`id(`no_defaultroute), `Value) == true;
NetworkConfig::DHCP["DHCLIENT_CLIENT_ID"] = UI::QueryWidget(`id(`clientid), `Value);
NetworkConfig::DHCP["DHCLIENT_HOSTNAME_OPTION"] = UI::QueryWidget(`id(`hostname), `Value);
/*
boolean dhclient_broadcast = UI::QueryWidget(`id(`broadcast), `Value) == true;
string options = NetworkConfig::DHCP["DHCLIENT_ADDITIONAL_OPTIONS"]:"";
if(options == nil) options = "";
if(dhclient_broadcast && !issubstring(options, "-B")) {
NetworkConfig::DHCP["DHCLIENT_ADDITIONAL_OPTIONS"] = options + " -B";
}
else
if(!dhclient_broadcast && issubstring(options, "-B")) {
NetworkConfig::DHCP["DHCLIENT_ADDITIONAL_OPTIONS"] = regexpsub(options, "(.*)-B(.*)", "\\1\\2");
}
*/
}
/* Details dialog contents */
term contents =
/* Frame label */
`Frame(_("DHCP Client Options"), `VBox(
/* CheckBox label */
// `Left(`CheckBox(`id(`broadcast), _("Request Broad&cast Response"))),
// `VSpacing(0.49),
/* TextEntry label */
`Left(`InputField(`id(`clientid), `opt(`hstretch), _("DHCP Client &Identifier"))),
`VSpacing(0.49),
/* TextEntry label */
`Left(`InputField(`id(`hostname), `opt(`hstretch), _("&Hostname to Send"))),
`VSpacing(0.49),
`Left(`HBox(`CheckBox(`id(`no_defaultroute), _("Change Default Route via DHCP"))))
)
);
map<string, map<string,any> > widget_descr_dhclient = $[
"DHCLIENT_OPTIONS" : $[
"widget" : `custom,
"custom_widget" : contents,
"help" : help["dhclient_help"]:"",
"init" : initDhclientOptions,
"store": storeDhclientOptions,
]
];
}
ACC SHELL 2018