• last updated 7 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
bugfix: unmounting a package could lead to a deletion of services used in other packages

A new API call "site_node::unmount_services" can be used to unmount all services in a first step.

unmount services before calling "site_node::delete -node_id $node_id -delete_subnodes -delete_package"

prevents collateral damage.

  1. … 3 more files in changeset.
prefer all caps spelling for SQL

  1. … 6 more files in changeset.
be more liberal for accepted network driver names

Deprecate country_widget proc

Deprecate exists_and_not_null proc as it does not comply with openacs naming convention and can be replaced with plain tcl idioms

  1. … 3 more files in changeset.
Check the namespace as well in the 'naming__proc_naming' testcase

Deprecate exists_and_equals and replace its occurrences

  1. … 1 more file in changeset.
Rename build_mime_message to ad_build_mime_message to comply with naming convention, replace occurrences, create deprecated wrapper

  1. … 4 more files in changeset.
moved "safe_eval" under the "ad_" prefix and marked the original function as deprecated

  1. … 4 more files in changeset.
added test to check, if names of Tcl procsfollow the naming guidelines of OpenACS

reduced clobbing of global namespace

moved "populate_secrect" to "sec_*" prefix to reduce clobbering of global namespace

  1. … 3 more files in changeset.
move rp filter consistently under the rp_* prefix

don't clobber toplevel namespace

point out pre UNICODE character handling that should be fixed

addres kernel_id always via variable rathen than via method

fix wrong argument (many thank to Franz Penz for reporting the bug)

Provide a more straightforward approach of gzipping

Support gzip versions < 1.6

backport security patch from oacs-5-10

  1. … 1 more file in changeset.
add IPv6 loopback address as well as "always accepted" for web testing

allow always 127.0.0.1 in logindata as valid peer

Deprecate ad_quotehtml. use ns_quotehtml instead.

  1. … 9 more files in changeset.
don't trust login_cookie, when no session_cookie is provided

avoid multiple but identical calls

improve cross references in apidoc

No need to force-cache the value of every parameter of every package instance

We are just adding a new parameter: this should in fact not exist and therefore no cache should be present and needed to be flushed. Furthermore, in most cases one would immediately restart the server, as this normally happens in the context of a package upgrade.

Replace deprecated idioms

- Fix a tricky Tcl_Obj sharing bug triggered by the usage of C-level

IndexObjs based on volatile tables. Consider the following example:

proc foo {x} {

return [bar -value x ...]

}

The Tcl_Obj "x" is shared as name of argument and as a value of the

non-positional parameter "-value". When bar (e.g. C-implemented)

uses Tcl_GetIndexFromObj*() to lookup "x" in a table of options,

which is volatile, the involved Tcl_Obj will be converted to an

indexObj.

On a call with wrong number of arguments( e.g."foo 1 2 3"), Tcl

will try to give a nice error message, saying that "foo x" can be

called only with one argument. When printing argument "x", it sees

that "x" is an indexObj, and for these kinds of objects, "x" might

be an abbreviated version of a full name. Since the table behind

the indexObj is in the case above volatile, a crash might happen.

The committed fix above is just a temporary measure. NaviServer should

try to avoid such Tcl_Obj conversions in these cases. It is also

questionable, whether the attempt to interpret a argument name as

an abbreviated.

Whitespace cleanup

    • -14
    • +13
    ./utilities-procs-naviserver.tcl