Security Advisories (4)
CVE-2006-4484 (2008-10-01)

Buffer overflow in the LWZReadByte_ function in the GD extension in allows remote attackers to have an unknown impact via a GIF file with input_code_size greater than MAX_LWZ_BITS, which triggers an overflow when initializing the table array.

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-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.

NAME

Tk::Table - Scrollable 2 dimensional table of Tk widgets

SYNOPSIS

use Tk::Table;

$table = $parent->Table(-rows => number,
                        -columns => number,
                        -scrollbars => anchor,
                        -fixedrows => number,
                        -fixedcolumns => number,
                        -takefocus => boolean);

$widget = $table->Button(...);

$old = $table->put($row,$col,$widget);
$old = $table->put($row,$col,"Text");  # simple Label
$widget = $table->get($row,$col);

$cols = $table->totalColumns;
$rows = $table->totalRows;

$table->see($widget);
$table->see($row,$col);

($row,$col) = $table->Posn($widget);

DESCRIPTION

Tk::Table is an all-perl widget/geometry manager which allows a two dimensional table of arbitary perl/Tk widgets to be displayed.

Entries in the Table are simply ordinary perl/Tk widgets. They should be created with the Table as their parent. Widgets are positioned in the table using:

$table->put($row,$col,$widget)

All the widgets in each column are set to the same width - the requested width of the widest widget in the column. Likewise, all the widgets in each row are set to the same height - the requested height of the tallest widget in the column.

A number of rows and/or columns can be marked as 'fixed' - and so can serve as 'headings' for the remainder the rows which are scrollable.

The requested size of the table as a whole is such that the number of rows specified by -rows (default 10), and number of columns specified by -columns (default 10) can be displayed.

If the Table is told it can take the keyboard focus then cursor and scroll keys scroll the displayed widgets.

The Table will create and manage its own scrollbars if requested via -scrollbars.

The Tk::Table widget is derived from a Tk::Frame, so inherits all its configure options.

BUGS / Snags / Possible enhancements

  • Very large Tables consume a lot of X windows

  • No equivalent of pack's -anchor/-pad etc. options