/usr/share/perl5/Image/MetaData/JPEG/parsers/parsers.pl is in libimage-metadata-jpeg-perl 0.153-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | ###########################################################
# A Perl package for showing/modifying JPEG (meta)data. #
# Copyright (C) 2004,2005,2006 Stefano Bettelli #
# See the COPYING and LICENSE files for license terms. #
###########################################################
package Image::MetaData::JPEG::Segment;
no integer;
use strict;
use warnings;
###########################################################
# This routine is a generic segment parsers, which saves #
# the first 30 bytes of the segment in a record, then #
# generates an error to inhibit update(). In this way, #
# the segment must be rewritten to disk unchanged, but #
# the nature of the segment is at least hinted by the #
# initial bytes (just for debugging ...). #
###########################################################
sub parse_unknown {
my ($this) = @_;
# save the first 30 bytes and translate non-printing characters
my $bytes = 30;
$this->store_record("First $bytes bytes ...", $ASCII, 0, $bytes);
# generate an error
$this->die('Unknown segment type');
}
###########################################################
# This method parses a COM segment. This is very simple #
# since it is just one string. #
###########################################################
sub parse_com {
my ($this) = @_;
# save the whole comment as a single value
$this->store_record('Comment', $ASCII, 0, $this->size());
}
###########################################################
# Require all other segment-specific parsers. #
###########################################################
require 'Image/MetaData/JPEG/parsers/app0.pl';
require 'Image/MetaData/JPEG/parsers/app1.pl';
require 'Image/MetaData/JPEG/parsers/app2.pl';
require 'Image/MetaData/JPEG/parsers/app3.pl';
require 'Image/MetaData/JPEG/parsers/app12.pl';
require 'Image/MetaData/JPEG/parsers/app13.pl';
require 'Image/MetaData/JPEG/parsers/app14.pl';
require 'Image/MetaData/JPEG/parsers/image.pl';
# successful package load
1;
|