tcl-documentation-procs.tcl

  • last updated 56 mins ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
ad_page/include_contract argspec parsing reform: allow arbitrary characters in the argspec flag parameters

This reform allows to specify an argspec containing pipes, parenthesys and other so far forbidden characters as parameters for a flag. The purpose is to enhance the expressiveness of existing validators (e.g. the oneof validator) and enable new one, for instance, a date validator using a clock format as parameter.

Pipes and parenthesys need to be escaped via the backslash character in the new syntax.

  1. … 1 more file in changeset.
mitigate attacks, where the referer header field is changed to a malicious value

The problem does not exist, when CSP is defined properly.

Many thanks to Frank Bergmann for sharing the pen-test protocol

  1. … 2 more files in changeset.
Set ad_include_contract's local variables in a way that they are hinted as private by the "__" prefix: this reduces the chance of conflicting with popular variable names to pass to an include such as "context"

Improved spelling

  1. … 1 more file in changeset.
add log warnings when include-contract is violated, since (in most cases) the passed values should be pre-checked

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

  1. … 1 more file in changeset.
Reuse email validation logic

Fix ancient typo

use the right message key

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

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. … 4 more files in changeset.
Remove non-functional "double click protection" in order to remove a potential attack vector

  1. … 1 more file in changeset.
added page contract filter "printable" to avoid passing of binary values to certain pages

  1. … 2 more files in changeset.
provide name for mutexes to ease spotting potential locks

  1. … 1 more file in changeset.
Important, although very simple reform in the page-contract filters: do not kill the case in the filter specs, or filters such as "w:oneof(One|Two)" or "locale:oneof(en_US|de_DE)" would not have a chance to match

Note that this makes the contracts stricter with respect to case, which might break obscure use cases...

fix typo

improve spelling: move closer to the linux documentation recommendations

  1. … 34 more files in changeset.
make minus sign optional again

fix typos

  1. … 1 more file in changeset.
Make number checking more strict (allow just number literals, which are OK for Tcl and SQL)

Deprecated get_referrer and NsSettoTclString, replace them with versions that respect OpenACS naming convention

  1. … 7 more files in changeset.
Avoid double flagging for non-optional values having "notnull" specified.

Previously, there was a complaint from "notnull" and one from "not optional"

improve spelling

  1. … 15 more files in changeset.
Fix parameter name and rework proc doc

Simplify expressions

Whitespace changes

make former private functions, used in several packages to public functions

  1. … 4 more files in changeset.
Fix parenthesis and simplify idiom

Allow themeing of /packages/acs-tcl/lib/complain

improve spelling

  1. … 12 more files in changeset.
fix documentation (fix for #3345)