This file is indexed.

/usr/bin/pmltrans is in photoml 0.28-0ubuntu1.

This file is owned by root:root, with mode 0o755.

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
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
#! /bin/sh

# This script constructs HTML views of PhotoML files

# Copyright © 2003-2010 Brendt Wohlberg <photoml@wohlberg.net>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of version 2 of the GNU General Public License at
# http://www.gnu.org/licenses/gpl-2.0.txt.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.

# Most recent modification: 18 April 2010


pmlpath="/usr/share/photoml"
pmlvalidx="/usr/bin/pmlvalid"

if [ ! "`which xsltproc 2>/dev/null`" ]; then
  echo "pmltrans: error executing xstlproc" >&2
  exit 1
fi

usage()
{
cat <<EOF >&2
usage: pmltrans [-h] [-f] [-s size] (([-e] [-m]) | [-d [-x]]) infile
       -h       Display usage information
       -f       Omit validity test
       -s size  Specify primary font size in points
       -e       Include exposure detail column when appropriate
       -m       Include location map when coordinates specified
       -d       Use detailed rather than summary output
       -x       Expand defaults before applying the XSL
EOF
}

fsparam=''
ecparam=''
lmparam=''
novalid=0
summary=1
expand=0
while [ $# -ge 1 ]; do
  case $1 in
    -s)    shift; fsparam="--stringparam font-size $1" ;;
    -f)    novalid=1 ;;
    -e)    ecparam="--stringparam disp-exposure 1" ;;
    -m)    lmparam="--stringparam disp-map 1" ;;
    -d)    summary=0 ;;
    -x)    expand=1 ;;
    -*)    usage; exit 1 ;;
    *)     infile=$1; break ;;
  esac
  shift
done   

if [ "$infile" = '' ]; then
  usage; exit 1
fi

if [ ! -f "$infile" -o ! -r "$infile" ]; then
  echo pmltrans: could not open file $infile >&2
  exit 1
fi

if [ $novalid -eq 0 ]; then
  if ! $pmlvalidx "$infile" 2>/dev/null; then
    echo pmltrans: validity error in file $infile >&2
    exit 2
  fi
fi

dtdpub=`grep DOCTYPE $infile | grep -o -e '-\/\/.*EN'`;
dtdtyp=`echo $dtdpub | grep -o -e '//DTD[^/]*//' | cut -d ' ' -f 2`
if [ "$dtdtyp" != 'PhotoML' ]; then
  echo "pmltrans: input document type $dtdtyp not recognised" >&2
  exit 3
fi

edxsl=$pmlpath/xsl/defaults/expand.xsl
if [ $summary -eq 0 ]; then
  xsl=$pmlpath/xsl/html/detailed.xsl
else
  expand=1
  xsl=$pmlpath/xsl/html/summary.xsl
fi

if [ -r /etc/xml/catalog -a "$XML_CATALOG_FILES" = '' ]; then
  XML_CATALOG_FILES=/etc/xml/catalog
fi
XML_CATALOG_FILES="$pmlpath/dtd/catalog.xml $XML_CATALOG_FILES"
export XML_CATALOG_FILES
unset SGML_CATALOG_FILES

tmpfile="/tmp/pmltrans.$$"
if [ $expand -eq 1 ]; then
  xsltproc $fsparam $ecparam $lmparam -o $tmpfile $edxsl $infile
  infile=$tmpfile
fi

xsltproc $fsparam $ecparam $lmparam $xsl $infile
status=$?

if [ -f "$tmpfile" ]; then
  rm -f $tmpfile
fi

exit $status