Several remote vulnerabilities have been discovered in Gimp, the GNU Image Manipulation Program, which might lead to the execution of arbitrary code. The risk is MEDIUM. Might lead to the execution of arbitrary code.
Hello,
I'm going to be studying for my Solaris 9 System Administrator Certification and wondered if anyone had taken the exams and could recommend some good study guides / crams / books.
Cheers, (8 Replies)
I think I am ready for the 310-014 exam but not quite ready for the 310-015 exam as I still have a lot of study and practice to do to prepare for it..
Do most people sit the 014 exam and then prepare for the second exam?
Any advice on how to tackle these is appreciated.. (3 Replies)
OO(1) User Contributed Perl Documentation OO(1)NAME
Gimp::OO - Pseudo-OO for Gimp functions.
SYNOPSIS
use Gimp; # Gimp::OO is now part of Gimp.
DESCRIPTION
As you might have noticed, you can sort most gimp functions fall into three groups, depending on the name-prefix: "gimp_", "plug_in_",
"extension_" etc..
Whats more, there are functions groups like "gimp_image_" or "gimp_selection_", operating on a common object, Images and Selection in this
case.
If you only had the plain syntax, your scripts would quickly aquire the "vertical gimp syndrome":
gimp_palette_set_foreground(...)
gimp_layer_new(...)
gimp_palette_set_background(...)
gimp_image_add_layer(...)
etc. Of course, your fingers will suffer from severe injuries as well.
A solution to this situation is to use OO-syntax. Gimp plays some (very) dirty tricks and provides a number of classes, like "Gimp::Image"
and "Gimp::Palette" that allow shorter identifiers to be used (all these appear with the "Gimp::" prefix as well as without, i.e.
"Gimp::Palette" is the same class as "Palette").
If you call a method, "Gimp" tries to find a gimp function by prepending a number of prefixes until it finds a valid function:
$image = Gimp->image_new(...); # calls gimp_image_new(...)
$image = Image->new(...); # calls gimp_image_new as well
$image = new Image(...); # the same in green
Palette->set_foreground(...) # calls gimp_palette_set_foreground(..)
Return values from functions are automatically blessed (through The Magic Autobless feature ;) to their corresponding classes, i.e.
$image = new Image(...); # $image is now blessed to Gimp::Image
$image->height; # calls gimp_image_height($image)
$image->flatten; # likewise gimp_flatten($image)
$image->histogram(...); # calls gimp_histogram($image,...), since
# gimp_image_histogram does not exist
The class argument ($image in the above examples) is prepended to the argument list.
Another shortcut: many functions want a (redundant) image argument, like
$image->shear ($layer, ...)
Since all you want is to shear the $layer, not the $image, this is confusing as well. In cases like this, Gimp allows you to write:
$layer->shear (...)
And automatically infers the additional IMAGE-type argument.
As the (currently) last goodie, if the first argument is of type INT32, its name is "run_mode" and there are no other ambiguties, you can
omit it, i.e. these three calls are equivalent:
plug_in_gauss_rle (RUN_NONINTERACTIVE, $image, $layer, 8, 1, 1);
plug_in_gauss_rle ($image, $layer, 8, 1, 1);
plug_in_gauss_rle ($layer, 8, 1, 1);
You can call all sorts of sensible and not-so-sensible functions, so this feature can be abused:
patterns_list Image; # will call gimp_patterns_list
quit Plugin; # will quit the Gimp, not an Plugin.
there is no image involved here whatsoever...
AVAILABLE CLASSES
The following classes (with and without Gimp::) are available. The prefixes that are checked are shown as well (the null prefix "" is
implicit).
Gimp (there is no Gimp::Gimp, only Gimp::)
gimp_
Layer
gimp_layer_
gimp_drawable_
gimp_floating_sel_
gimp_image_
gimp_
plug_in_
perl_fu_
Image
gimp_image_
gimp_drawable_
gimp_
plug_in_
perl_fu_
Drawable
gimp_drawable_
gimp_layer_
gimp_image_
gimp_
plug_in_
perl_fu_
Selection
gimp_selection_
Channel
gimp_channel_
gimp_drawable_
gimp_selection_
gimp_image_
gimp_
plug_in_
perl_fu_
Display
gimp_display_
gimp_
Palette
gimp_palette_
Plugin
plug_in_
Gradients
gimp_gradients_
Edit
gimp_edit_
Progress
gimp_progress_
Region
(none except the implicit null prefix)
Tile
gimp_tile_
PixelRgn
gimp_pixel_rgn_
GDrawable
gimp_gdrawable_
Brushes
gimp_brushes_
Patterns
gimp_patterns_
AUTHOR
Marc Lehmann <pcg@goof.com>
SEE ALSO perl(1), Gimp.
perl v5.8.0 1999-08-02 OO(1)