Security Advisories (7)
CVE-2007-4769 (2008-01-09)

The regular expression parser in TCL before 8.4.17, as used in PostgreSQL 8.2 before 8.2.6, 8.1 before 8.1.11, 8.0 before 8.0.15, and 7.4 before 7.4.19, allows remote authenticated users to cause a denial of service (backend crash) via an out-of-bounds backref number.

CVE-2018-25032 (2022-03-25)

zlib before 1.2.12 allows memory corruption when deflating (i.e., when compressing) if the input has many distant matches.

CVE-2011-3045 (2012-03-22)

Integer signedness error in the png_inflate function in pngrutil.c in libpng before 1.4.10beta01, as used in Google Chrome before 17.0.963.83 and other products, allows remote attackers to cause a denial of service (application crash) or possibly execute arbitrary code via a crafted PNG file, a different vulnerability than CVE-2011-3026.

CVE-2016-10087 (2017-01-30)

The png_set_text_2 function in libpng 0.71 before 1.0.67, 1.2.x before 1.2.57, 1.4.x before 1.4.20, 1.5.x before 1.5.28, and 1.6.x before 1.6.27 allows context-dependent attackers to cause a NULL pointer dereference vectors involving loading a text chunk into a png structure, removing the text, and then adding another text chunk to the structure.

CVE-2007-4772 (2008-01-09)

The regular expression parser in TCL before 8.4.17, as used in PostgreSQL 8.2 before 8.2.6, 8.1 before 8.1.11, 8.0 before 8.0.15, and 7.4 before 7.4.19, allows context-dependent attackers to cause a denial of service (infinite loop) via a crafted regular expression.

CVE-2007-6067 (2008-01-09)

Algorithmic complexity vulnerability in the regular expression parser in TCL before 8.4.17, as used in PostgreSQL 8.2 before 8.2.6, 8.1 before 8.1.11, 8.0 before 8.0.15, and 7.4 before 7.4.19, allows remote authenticated users to cause a denial of service (memory consumption) via a crafted "complex" regular expression with doubly-nested states.

CVE-2017-12652 (2019-07-10)

libpng before 1.6.32 does not properly check the length of chunks against the user limit.

NAME

Tk::tkvars - Variables used or set by Tk

DESCRIPTION

The following perl variables are either set or used by Tk at various times in its execution. (For a list of variables used by perl see perlvar.)

$Tk::library

This variable holds the file name for a directory containing the modules related to Tk. These modules include an initialization file that is normally processed whenever a Tk application starts up, plus other files containing procedures that implement default behaviors for widgets. The initial value of $Tk::library is set when Tk is added to an interpreter; this is done by searching searching for a directory named Tk in the directory where the file Tk.pm, or the first directory Tk in @INC.

The TK_LIBRARY environment variable used by Tcl/Tk is not supported by perl/Tk. Please use @INC to change where modules are searched.

Note: This is Tcl remnant. With perl it makes more sense to use @INC and %INC).

$Tk::patchLevel

Contains a decimal integer giving the current patch level for Tk. The patch level is incremented for each new release or patch, and it uniquely identifies an official version of Tk.

Note: this is Tcl remnant. With perl it makes more sense to use $Tk::VERSION described below.

$Tk::strictMotif

This variable is set to zero by default. If an application sets it to one, then Tk attempts to adhere as closely as possible to Motif look-and-feel standards. For example, active elements such as buttons and scrollbar sliders will not change color when the pointer passes over them.

$Tk::VERSION

The variable holds the current version number of the perl/Tk release in the form major.minor. Major and minor are integers.

The major version number shows on which Tcl/Tk release perl/Tk is based. E.g., 402 means based on Tcls Tk 4.2. (Patchlevel of Tcls Tk are not incorporated because perl/Tk tended to be ``ahead'' of them on some fixes and behind on others. The first digest of the major version number increases in any Tk release that includes changes that are not backward compatible (i.e. whenever existing perl/Tk applications and scripts may have to change to work with the new release).

The minor version depends on perl/Tk only. It uses the 'even'='stable', 'odd'='experimental' scheme that linux uses:

.0xx  - inherently 'alpha'
.1xx  - experimental 'beta'
.2xx  - stable
.3xx  - experimental
.4xx  - stable
...

The minor version number increases with each new release of Tk, except that it resets to zero whenever the major version number changes.

$Tk::version

The variable holds the current version number of the Tk library in the form major.minor. Major and minor are integers. The major version number increases in any Tk release that includes changes that are not backward compatible (i.e. whenever existing Tk applications and scripts may have to change to work with the new release). The minor version number increases with each new release of Tk, except that it resets to zero whenever the major version number changes.

Note: this is Tcl remnant. With perl it makes more sense to use $Tk::VERSION described above.

KEYWORDS

variables, version