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::Dialog - Perl/Tk Dialog widget

SYNOPSIS

require Tk::Dialog;

$DialogRef = $widget->Dialog(
    -title          => $title,
    -text           => $text,
    -bitmap         => $bitmap,
    -default_button => $default_button,
    -buttons        => [@button_labels],
);

$selected = $DialogRef->Show(?-global?);

DESCRIPTION

This is an OO implementation of `tk_dialog'. First, create all your Dialog objects during program initialization. When it's time to use a dialog, invoke the Show method on a dialog object; the method then displays the dialog, waits for a button to be invoked, and returns the text label of the selected button.

A Dialog object essentially consists of two subwidgets: a Label widget for the bitmap and a Label wigdet for the text of the dialog. If required, you can invoke the `configure' method to change any characteristic of these subwidgets.

Because a Dialog object is a Toplevel widget all the 'composite' base class methods are available to you.

Advertised widgets: bitmap, message.

1)

Call the constructor to create the dialog object, which in turn returns a blessed reference to the new composite widget:

require Tk::Dialog;

$DialogRef = $widget->Dialog(
    -title          => $title,
    -text           => $text,
    -bitmap         => $bitmap,
    -default_button => $default_button,
    -buttons        => [@button_labels],
);
  • mw

    a widget reference, usually the result of a MainWindow->new call.

  • title

    Title to display in the dialog's decorative frame.

  • text

    Message to display in the dialog widget.

  • bitmap

    Bitmap to display in the dialog.

  • default_button

    Text label of the button that is to display the default ring (''signifies no default button).

  • button_labels

    A reference to a list of one or more strings to display in buttons across the bottom of the dialog.

2)

Invoke the Show method on a dialog object

$button_label = $DialogRef->Show;

This returns the text label of the selected button.

(Note: you can request a global grab by passing the string -global to the Show method.)

SEE ALSO

Tk::DialogBox

KEYWORDS

window, dialog, dialogbox

AUTHOR

Stephen O. Lidie, Lehigh University Computing Center. 94/12/27 lusol@Lehigh.EDU (based on John Stoffel's idea).