diff --git a/index.html b/index.html index 81d6630..7fc5eb8 100644 --- a/index.html +++ b/index.html @@ -1454,28 +1454,22 @@
Priority
- +
Authentication
Encryption
-
Password*
-
Confirm Password
+
+
Password*
+
Confirm Password
+
@@ -5683,14 +5677,6 @@ ddns = "Update by DHCP server"; } x += TableEntry("Dynamic DNS", addLinkConditional(ddns, 'showEditDnsDlg()', xxAccountAdminName)); - - // ###BEGIN###{NetAuth} - // 802.1x - var netAuthProtocols = ["TLS", "TTLS MSCHAPv2", "PEAP MSCHAPv2", "EAP GTC", "EAPFAST MSCHAPv2", "EAPFAST GTC", "EAPFAST TLS"], netAuthStr = "Disabled"; - if (amtsysstate['AMT_8021XProfile'].responses.Body['Enabled']) { netAuthStr = "Enabled, " + netAuthProtocols[amtsysstate['AMT_8021XProfile'].responses.Body['AuthenticationProtocol']]; } - x += TableEntry("802.1x", addLinkConditional(netAuthStr, 'editNetAuthProfile()', xxAccountAdminName)); - // ###END###{NetAuth} - x += TableEnd(); for (var y in amtsysstate['AMT_EthernetPortSettings'].responses) { @@ -5760,6 +5746,12 @@ if (amtwirelessif != y) { // Things that are specific to the wired interface x += TableEntry("Respond to ping", addLinkConditional(["Disabled", "ICMP response", "RMCP response", "ICMP & RMCP response"][gs['PingResponseEnabled'] + (gs['RmcpPingResponseEnabled'] << 1)], 'showPingActionDlg()', xxAccountAdminName)); + // ###BEGIN###{NetAuth} + // 802.1x + var netAuthProtocols = ["TLS", "TTLS MSCHAPv2", "PEAP MSCHAPv2", "EAP GTC", "EAPFAST MSCHAPv2", "EAPFAST GTC", "EAPFAST TLS"], netAuthStr = "Disabled"; + if (amtsysstate['AMT_8021XProfile'].responses.Body['Enabled']) { netAuthStr = "Enabled, " + netAuthProtocols[amtsysstate['AMT_8021XProfile'].responses.Body['AuthenticationProtocol']]; } + x += TableEntry("802.1x", addLinkConditional(netAuthStr, 'editNetAuthProfile()', xxAccountAdminName)); + // ###END###{NetAuth} var ipStateString = z['DHCPEnabled'] == true ? "Automatic using DHCP server" : "Static IP address"; if (z['IpSyncEnabled'] == true) { ipStateString += ', IP sync with OS'; } x += TableEntry("IPv4 state", addLinkConditional(ipStateString, 'showIPSetupDlg()', xxAccountAdminName)); @@ -7730,11 +7722,19 @@ if (t) { x += ''; + authOptions += ''; + authOptions += ''; + // ###END###{NetAuth} + authOptions += ''; + authOptions += ''; + QH('idx_d12auth', authOptions); idx_d12auth.value = 6; idx_d12enc.value = 4; - idx_d12name.value = idx_d12ssid.value = idx_d12password1.value = idx_d12password2.value = ''; setDialogMode(12, "Add Wireless Profile", 3, function () { addWifiProfile() }); @@ -7742,23 +7742,39 @@ } function addWifiProfile() { + var netAuthSettings, netAuthSettingsClientCert, netAuthSettingsServerCaCert; + var v = { + '__parameterType': 'instance', + '__namespace': amtstack.CompleteName('CIM_WiFiEndpointSettings'), + 'ElementName': idx_d12name.value, + 'InstanceID': 'Intel(r) AMT:WiFi Endpoint Settings ' + idx_d12name.value, + 'AuthenticationMethod': idx_d12auth.value, + 'EncryptionMethod': idx_d12enc.value, + 'SSID': idx_d12ssid.value, + 'Priority': idx_d12pri.value + }; + if ((idx_d12auth.value == 4) || (idx_d12auth.value == 6)) { v['PSKPassPhrase'] = idx_d12password1.value; } + // ###BEGIN###{NetAuth} + if ((idx_d12auth.value == 5) || (idx_d12auth.value == 7) || (idx_d12auth.value == 32768)) { + netAuthSettings = { + '__parameterType': 'instance', + '__namespace': amtstack.CompleteName('CIM_IEEE8021xSettings'), + 'ElementName': '8021x-' + idx_d12name.value, + 'InstanceID': '8021x-' + idx_d12name.value, + 'AuthenticationProtocol': 2, + 'Username': 'user', + 'Password': 'pass', + 'AvailableInS0': true + }; + } + // ###END###{NetAuth} amtstack.AMT_WiFiPortConfigurationService_AddWiFiSettings( { '__parameterType': 'reference', '__resourceUri': amtstack.CompleteName('CIM_WiFiEndpoint'), 'Name': 'WiFi Endpoint 0' - }, { - '__parameterType': 'instance', - '__namespace': amtstack.CompleteName('CIM_WiFiEndpointSettings'), - 'ElementName': idx_d12name.value, - 'InstanceID': 'Intel(r) AMT:WiFi Endpoint Settings ' + idx_d12name.value, - 'AuthenticationMethod': idx_d12auth.value, - 'EncryptionMethod': idx_d12enc.value, - 'SSID': idx_d12ssid.value, - 'Priority': idx_d12pri.value, - 'PSKPassPhrase': idx_d12password1.value - }, - null, null, null, removeWifiEntryResponse + }, v, + netAuthSettings, netAuthSettingsClientCert, netAuthSettingsServerCaCert, removeWifiEntryResponse ); } @@ -7766,18 +7782,21 @@ var r = true; var a = idx_d12auth.value; var e = idx_d12enc.value; - QV('id_d12e2', a < 4); - QV('id_d12e3', a > 3); - QV('id_d12e4', a > 3); - QV('id_d12e5', a < 4); + //QV('id_d12e2', a < 4); + //QV('id_d12e3', a > 3); + //QV('id_d12e4', a > 3); + //QV('id_d12e5', a < 4); if (a < 4 && (e == 3 || e == 4)) { idx_d12enc.value = 2; } if (a > 3 && (e == 2 || e == 5)) { idx_d12enc.value = 3; } if (a == 32768) { idx_d12enc.value = 4; } + QV('idx_d12pass', (a == 4) || (a == 6)); // Check if there is already a profile with this name for (var j in xxWireless['CIM_WiFiEndpointSettings'].responses) { if (xxWireless['CIM_WiFiEndpointSettings'].responses[j]['ElementName'] == idx_d12name.value) { r = false; } } + if ((idx_d12name.value.length == 0) && (idx_d12ssid.value.length == 0)) { r = false; } + if (((a == 4) || (a == 6)) && ((idx_d12password1.value.length < 8) || (idx_d12password1.value.length > 63) || (idx_d12password1.value != idx_d12password2.value))) { r = false; } - QE('idx_dlgOkButton', r == true && (idx_d12name.value.length > 0) && (idx_d12ssid.value.length > 0) && (idx_d12password1.value.length > 7) && (idx_d12password1.value == idx_d12password2.value)); + QE('idx_dlgOkButton', r); } // ###END###{Wireless} @@ -7791,7 +7810,7 @@ if (xxdialogMode) return; // Set certificates - var clientcertoptions = '', servercertoptions = ''; + var clientcertoptions = '', servercertoptions = ''; for (var i in xxCertificates) { if (xxCertificates[i].TrustedRootCertficate) { servercertoptions += ''; @@ -7799,7 +7818,6 @@ clientcertoptions += ''; } } - if (clientcertoptions == '') { messagebox("802.1x Profile", "No client certificates available to enable 802.1x."); return; } QH('idx_d27clientcert', clientcertoptions); QH('idx_d27servercert', servercertoptions); @@ -7818,8 +7836,9 @@ Q('idx_d27domain').value = sc['Domain'] ? sc['Domain'] : ''; Q('idx_d27pac').value = sc['ProtectedAccessCredential'] ? sc['ProtectedAccessCredential'] : ''; Q('idx_d27pacpassword').value = sc['PACPassword'] ? sc['PACPassword'] : ''; - var scInstanceId = sc['ServerCertificateIssuer']['ReferenceParameters']['SelectorSet']['Selector']['Value']; - var ccInstanceId = sc['ClientCertificate']['ReferenceParameters']['SelectorSet']['Selector']['Value']; + var scInstanceId = -1, ccInstanceId = -1; + if (sc['ServerCertificateIssuer']) { scInstanceId = sc['ServerCertificateIssuer']['ReferenceParameters']['SelectorSet']['Selector']['Value']; } + if (sc['ClientCertificate']) { ccInstanceId = sc['ClientCertificate']['ReferenceParameters']['SelectorSet']['Selector']['Value']; } for (var i in xxCertificates) { if (xxCertificates[i]['InstanceID'] == scInstanceId) { Q('idx_d27servercert').value = i; } if (xxCertificates[i]['InstanceID'] == ccInstanceId) { Q('idx_d27clientcert').value = i; } @@ -7869,8 +7888,8 @@ delete sc['ProtectedAccessCredential']; delete sc['PACPassword']; } - sc['ClientCertificate'] = '/wsman' + amtstack.CompleteName('AMT_PublicKeyCertificate') + '' + xxCertificates[parseInt(Q('idx_d27clientcert').value)]['InstanceID'] + ''; - sc['ServerCertificateIssuer'] = '/wsman' + amtstack.CompleteName('AMT_PublicKeyCertificate') + '' + xxCertificates[parseInt(Q('idx_d27servercert').value)]['InstanceID'] + ''; + if (parseInt(Q('idx_d27clientcert').value) >= 0) { sc['ClientCertificate'] = '/wsman' + amtstack.CompleteName('AMT_PublicKeyCertificate') + '' + xxCertificates[parseInt(Q('idx_d27clientcert').value)]['InstanceID'] + ''; } else { delete sc['ClientCertificate']; } + if (parseInt(Q('idx_d27servercert').value) >= 0) { sc['ServerCertificateIssuer'] = '/wsman' + amtstack.CompleteName('AMT_PublicKeyCertificate') + '' + xxCertificates[parseInt(Q('idx_d27servercert').value)]['InstanceID'] + ''; } else { delete sc['ServerCertificateIssuer']; } sc['PxeTimeout'] = Q('idx_d27pxetimeout').value; } amtstack.Put('AMT_8021XProfile', sc, setNetAuthProfileEx);