Bug #6401
closed
OS X and Chrome change js doesn't change field visibility correctly
Added by Chris Linstruth over 8 years ago.
Updated over 8 years ago.
Description
Choosing AES then 3DES on IKEv2 Phase 1 leaves key length selector active, resulting in a broken config.
I was able to duplicate this using Mac OS X 10.11.5 with Google Chrome Version 50.0.2661.102 (64-bit) after seeing a "3DES (256-bit)" setting on a customer system. It seems to be only Google Chrome and only IKEv2.
Workaround: Re-edit without changing from 3DES and saving corrects the config.
Files
- Assignee set to Anonymous
- Subject changed from Choosing AES then 3DES on IKEv2 Phase 1 leaves key length selector active, resulting in a broken config. to OS X and Chrome change js doesn't change field visibility correctly
- Status changed from New to Confirmed
- Affected Version changed from 2.3.1 to 2.3.x
This is more widespread than just IPsec P1s. It appears to affect any page that has field changes from Javascript, for instance also vpn_openvpn_server.php. It only happens with OS X and Chrome. Not seeing it with Safari, nor Chrome on Windows or Linux or any other browser on any other OS.
vpn_ipsec_phase1.php - If you edit it with AES 256 chosen, then select 3DES, it leaves the 256 box there initially. Then click back on the ealgo box, it blinks, and the ealgo_keylen box is hidden. Click 3DES again to close the ealgo box and it remains correctly hidden. Similar then if you change back to AES, initially there is no keylen box. Click ealgo and it blinks and the keylen box appears.
Similar if you switch from IKEv1 to v2 or vice-versa and look for the hide/show of 'Negotiation mode' field.
vpn_openvpn_server.php - for instance change the server mode between shared key and SSL/TLS modes and look for the appropriate Cryptographic Settings fields changing (or not). Same behavior as described for vpn_ipsec_phase1.php, if you click back in the box it blinks and sets the fields appropriately.
- Status changed from Confirmed to Feedback
- Assignee changed from Anonymous to Chris Linstruth
This issue is caused by the way Chrome handles "click" events bound to select inputs.
Changing the JQuery from "click" to "change" fixes the issue and works across all browsers. e.g.:
- $('#mode').click() => $('#mode').change()
The instances reported here have been updated. I'll check all other pages as time permits.
- % Done changed from 0 to 100
- Status changed from Feedback to Resolved
- Target version changed from 2.3.2 to 2.3.1-p1
Also available in: Atom
PDF