• last updated 20 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
provide a compatibility function for ns_parsehostport for earlier versions of NaviServer

Reduce usage of ns_mktemp in OpenACS

ns_mktemp uses the deprecated old POSIX call mktemp(), which should

not be used anymore for security reasons (race between the name

creation and opening the file). This change removes several usages of

"ns_mktemp" from OpenACS and replaces it with calls to the

safe Tcl call "file tempfile ..." (introduced by Tcl 8.6).

  1. … 3 more files in changeset.
fix header generation

since the headers are set in a loop, "ns_set put" is incorrect

since it is additive. "ns_set update" is correct.

make using page-filter "object_id" backwards compatible by allowing it to be used also during update scripts

  1. … 1 more file in changeset.
improve spelling

Adapt 'ad_urlencode_url' to the new 'ns_parseurl' stricter behavior

added "ns_parseurl -strict" to icanuse definitions

Make so that also party::update enforces emails to be lowercase, add/extend automated tests to make sure emails are lowercase everywhere

    • -2
    • +15
    ./tcl/test/community-core-test-procs.tcl
Refine regex and extend tests

Extend 'acs_tcl__util_url_valid_p' test case

Make the check for relative URLs less strict to cover some valid cases (see RFC 1808) and extend test cases.

Add the 'relative' flag to 'util_url_valid_p', to check also relative URLs. Extend 'acs_tcl__util_url_valid_p' test case and bump package version.

Refine URL validation regexp and extend 'acs_tcl__util_url_valid_p' test case.

Reuse email validation logic

Replace regexp for mail validation by the version proposed by mozilla for the email input type validation, and increment the test cases for valid/invalid emails. Thanks to Günter Ernst for the pointers.

Fix ancient typo

Add 'object_p' test case, covering 'acs_object::object_p'

    • -1
    • +23
    ./tcl/test/object-test-case-procs.tcl
Add 'string_length_compare' test case, covering 'util::string_length_compare'

Add 'name_to_path' test case, covering 'util::name_to_path'

Add 'util_email_valid_p' test case, covering 'util_email_valid_p'

Increase verbosity

Add 'db_boolean' test case, covering 'db_boolean'

Add 'ad_future_years_list' test case, covering 'ad_future_years_list'

Add 'host_admin_and_outgoing_sender' test case, covering 'ad_outgoing_sender' and 'ad_host_administrator'

fix once more handling of internal redirects in error cases

many thanks to thomas renner!

Remove message keys sanitizing, which does not belong here

use the right message key

VS: ----------------------------------------------------------------------

Fixed a bug in the request processor, when URL is /%3F

The problem was that /%3F corresponds to a URL which is literally '/?'

(question mark is not the separator for query variables). In this case

a "string match" operation to determine the suffix based on this

string will lead to unexpected characters since '?' is a match

character. This lead in turn to a problem with redirects to the

internally redirect of custom error pages. So, in this case (and

probably others) the custom error page was not displayed.

    • -13
    • +27
    ./tcl/request-processor-procs.tcl
improved spelling

Added page_contract filter "object_id"

This change adds the page_contract filter "object_id", which validates

values whether these are syntactically acceptable as object_ids in

PostgreSQL and Oracle.

Note that before one is able to use the filter, the server has to be

restarted. Otherwise, when e.g. "apm/version_reload.tcl" would be

executed with the new filter, it would fail. So, one has to be careful

on update scripts, when people upgrade from old version not to create

a blocking mutual blocking condition.

    • -1
    • +2
    ./catalog/acs-tcl.de_DE.ISO-8859-1.xml
    • -0
    • +1
    ./catalog/acs-tcl.en_US.ISO-8859-1.xml