Index: openacs-4/packages/acs-tcl/tcl/form-processing-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-tcl/tcl/form-processing-procs.tcl,v diff -u -r1.80 -r1.81 --- openacs-4/packages/acs-tcl/tcl/form-processing-procs.tcl 5 Feb 2019 15:18:21 -0000 1.80 +++ openacs-4/packages/acs-tcl/tcl/form-processing-procs.tcl 5 Feb 2019 15:19:29 -0000 1.81 @@ -1039,7 +1039,12 @@ } } } - set values(__key_signature) [ad_sign -- "$values($key_name):$form_name"] + if {[ns_conn isconnected]} { + set current_user_id [ad_conn user_id] + } else { + set current_user_id 0 + } + set values(__key_signature) [ad_sign -- "$values($key_name):${form_name}:${current_user_id}"] } foreach element_name $properties(element_names) { @@ -1086,9 +1091,16 @@ upvar #$level $key_name __key upvar #$level __key_signature __key_signature - if { [info exists __key] && ![ad_verify_signature "$__key:$form_name" $__key_signature] } { - ad_return_error "Bad key signature" "Verification of the database key value failed" - ad_script_abort + if { [info exists __key] } { + if {[ns_conn isconnected]} { + set current_user_id [ad_conn user_id] + } else { + set current_user_id 0 + } + if {![ad_verify_signature "$__key:${form_name}:${current_user_id}" $__key_signature] } { + ad_return_error "Bad key signature" "Verification of the database key value failed" + ad_script_abort + } } }