Skip to Main Content

APEX

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Interested in getting your voice heard by members of the Developer Marketing team at Oracle? Check out this post for AppDev or this post for AI focus group information.

Save before exit

skahlertSep 12 2010 — edited Dec 10 2010
Dear apex devs,

I integrated Denes' example in my app to warn users to save changes before exiting the modified page.

I modified the button template to match my own requirements and am calling a custom jquery function in the doSave function of Denes' example.

The bug or problem I encountered is that the script even alerts if no changes have been made. I am using Apex v.3.1 and was wondering if anybody here has a clue as to why changes are detected although none have been made. Could it be due to the binding of page items via page processes?

The script is as follows:
<script type="text/javascript">

function isFormChanged() {
 var rtnVal = false; 
 var frm = document.wwv_flow;
 var ele = frm.elements;

 for ( i=0; i < ele.length; i++ ) {
  if ( ele.type.length > 0 ) {
if ( isElementChanged( ele, i ) ) {
rtnVal = true;
break;
}
}
}
return rtnVal;
}

function isElementChanged( ele, i ) {
var isEleChanged = false;

switch ( ele[i].type ) {

case "text" :
if ( ele[i].value != ele[i].defaultValue ) return true;
break;

case "textarea" :
if ( ele[i].value != ele[i].defaultValue ) return true;
break;

case "radio" :
val = "";
if ( ele[i].checked != ele[i].defaultChecked ) return true;
break;

case "select-one" :
if (ele[i].id>99 ) return false;
for ( var x =0 ; x <ele[i].length; x++ ) {
if ( ele[i].options[ x ].selected
!= ele[i].options[ x ].defaultSelected ) return true;
}
break;

case "select-multiple" :
if (ele[i].id>99 ) return false;
for ( var x =0 ; x <ele[i].length; x++ ) {
if ( ele[i].options[ x ].selected !=
ele[i].options[ x ].defaultSelected ) return true;
}
break;

case "checkbox" :
if ( ele[i].checked != ele[i].defaultChecked ) return true;

default:
return false;
break;
}
}

var g_saving = false;
var g_errmsg="Attention! Do you want to leave without saving?";

function WarnSave()
{
var formChanged=isFormChanged();
if (!g_saving && formChanged) return g_errmsg;
}

function doSave()
{
g_saving=true;
warning2();void 0;

}
</script>
Many thanks for any ideas that you might have!

Brgds,

Seb

Edited by: skahlert on 12.09.2010 15:03                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
This post has been answered by jariola on Sep 12 2010
Jump to Answer

Comments

budachst

Hi JK,

havning read up a bit on venom, I must say, that I am not too afraid about it, as the attack against it will have to be mounted from inside one running OVM guest, e.g. e web server. So the first thing is to secure your guests, which is mandantory anyway. This will also render any mass-deployment of attacks unfeasable since, an attacker would always have to gain a foothold into the guest before trying to attack Xen through venom.

So I think this is definetively not something for the kiddies, but for a targeted attack and who would withstand such an attack anyway?

Cheers,

budy

njk84sg

HI Budy,

I agree with you. It can only be a targeted attack, and what we can do is only mitigation and prevention for now.

Cheers,

JK

mickyw

One additional thing to know is that PVM guests do not expose the risk because they do not use qemu emulated devices:

XSA-133 - Xen Security Advisories

Regards,

Michal

RLH2005
Answer

Oracle issued advisores OVMSA-2015-0057, OVMSA-2015-0058, and OVMSA-2015-0059 and made patches available yesterday related to the venom vulnerability.

OVMSA-2015-0057 -- Oracle VM 3.3 -- https://oss.oracle.com/pipermail/oraclevm-errata/2015-May/000308.html

OVMSA-2015-0058 -- Oracle VM 3.2 -- https://oss.oracle.com/pipermail/oraclevm-errata/2015-May/000309.html

OVMSA-2015-0059 -- Oracle VM 2.2 -- https://oss.oracle.com/pipermail/oraclevm-errata/2015-May/000309.html

Marked as Answer by njk84sg · Sep 27 2020
budachst

Hi,

I have just checked, that Oracle has made the latest patches available via the OVM3 repo - and I'd assume, via the public yum repo as well. I guess it's time to move the guests to a spare server and run the updates.

Cheers,

budy

user13482038

Hi Budy,

May we know, do we need to reboot the Server after update the below patches?

xen-tools-4.1.3-25.el5.127.36.1

xen-4.1.3-25.el5.127.36.1

xen-devel-4.1.3-25.el5.127.36.1

budachst

Hi,

well, yes. You will have to reboot the server, as the xen-tools are also updated and may interfere with the older xen running at that time. So, in order to get the patch actually working, you will need to reboot your OVS.

Cheers,

budy

njk84sg

Hi RLH2005,

Thanks for putting this up. Apparently they haven't forget the older versions, which is a good thing.

Cheers,

JK

pred

Hi,

we are currently running Version 3.2.7.

Is it possible/ recommended to update only the xen packages (xen, xen-devel, xen-tools) or is it necessary to update first to Oracle VM 3.2.9?

Cheers,

alex

njk84sg

Hi Alex,

Update to 3.2.9. It has security fixes to 3.2.7, and I have updated it with virtually no issues.

Cheers,

JK

1 - 10
Locked Post
New comments cannot be posted to this locked post.

Post Details

Locked on Jan 7 2011
Added on Sep 12 2010
8 comments
2,009 views