This file is indexed.

/usr/bin/defoma is in defoma 0.11.12ubuntu1.

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
113
114
115
116
117
118
#! /usr/bin/perl -w
package main;

use strict;
use POSIX;
use vars qw($COMNAME %SIG $ARG0);
use Debian::Defoma::Common;
use Debian::Defoma::Font;
use Debian::Defoma::Id;
use Debian::Defoma::Subst;
use Debian::Defoma::User;
import Debian::Defoma::Common qw(&mylock &arg_check &arg_check_category
				 &get_files &SUBSTRULEDIR &ERROR &readfile);
import Debian::Defoma::User qw(&defoma_user_init &defoma_user_update_font);

$ARG0 = $0;
$ARG0 =~ /(.*)\/(.*)/;
$COMNAME = $2;
my $Type;

printv(join(' ', $ARG0, ARGS));

$SIG{'HUP'} = \&exitfunc;
$SIG{'INT'} = \&exitfunc;
$SIG{'QUIT'} = \&exitfunc;
$SIG{'TERM'} = \&exitfunc;

sub exitfunc {
    printw('Teminate Signal!');
    term_all();
    mylock(0);

    exit ERROR;
}

sub usage {
    if ($COMNAME eq 'defoma-font' || $COMNAME eq 'defoma') {
	printm("defoma-font [option..] register <category> <font> <hints>..");
	printm("defoma-font [option..] unregister <category> <font>");
	printm("defoma-font [option..] reregister <category> <font> <hints>..");
	printm("defoma-font [option..] purge <category> <font>");
	printm("defoma-font [option..] register-all <hintfile>");
	printm("defoma-font [option..] unregister-all <hintfile>");
	printm("defoma-font [option..] reregister-all <hintfile>");
	printm("defoma-font [option..] purge-all <hintfile>");
	printm("defoma-font [option..] register-one <hintfile> <font>");
	printm("defoma-font [option..] unregister-one <hintfile> <font>");
	printm("defoma-font [option..] reregister-one <hintfile> <font>");
	printm("defoma-font [option..] purge-one <hintfile> <font>");
    }
    if ($COMNAME eq 'defoma-app' || $COMNAME eq 'defoma') {
	printm("defoma-app [option..] clean|update|ignore <app> [<category>..]");
	printm("defoma-app [option..] purge <app>");
    }
    if ($COMNAME eq 'defoma-subst' || $COMNAME eq 'defoma') {
	printm("defoma-subst [option..] new-rule <rulename> <extra lines>..");
	printm("defoma-subst [option..] add-rule <rulename> <rules>..");
	printm("defoma-subst [option..] remove-rule <rulename> <rules>..");
	printm("defoma-subst [option..] edit-rule <rulename>");
	printm("defoma-subst check-rule <rulename>");
    }
    if ($COMNAME eq 'defoma-id' || $COMNAME eq 'defoma') {
	printm("defoma-id [option..] list-cache <app>");
	printm("defoma-id [option..] install <app>[/<id-cache>] <id> <font>");
	printm("defoma-id [option..] exclude <app>[/<id-cache>] <id> <font>");
	printm("defoma-id [option..] unset <app>[/<id-cache>] <id> <font>");
	printm("defoma-id [option..] add-alias <app>[/<id-cache>] <id> <font> <alias>");
	printm("defoma-id [option..] remove-alias <app>[/<id-cache>] <alias> <font>");
    }
    if ($COMNAME eq 'defoma-user' || $COMNAME eq 'defoma') {
	printm("defoma-user [options..] update");
	printm("defoma-user [options..] reconfigure");
    }
}

sub usage_and_exit {
    usage();
    exit ERROR;
}

sub init_all {
    defoma_font_init();
    defoma_user_init() if (USERSPACE);
    &Debian::Defoma::Configure::init();
    &Debian::Defoma::Configure::init2(@_);
    defoma_user_update_font() if (USERSPACE);
}

sub term_all {
    &Debian::Defoma::Configure::term();
    defoma_font_term();
}

usage_and_exit() if (@ARGV == 0);

if ($COMNAME eq 'defoma') {
    $Type = shift(@ARGV);
    unless (defined($Type)) {
	usage_and_exit;
    }
} else {
    $COMNAME =~ /^defoma-(.*)$/;
    $Type = $1;
}

my $command = shift(@ARGV) || usage_and_exit;

if ($command =~ /^-/) {
    printe("Unknown option: $command.");
    exit ERROR;
}

if ($Type =~ /^(font|app|subst|id|user)$/) {
    require("/usr/share/defoma/libdefoma-$Type.pl");
    main($command);
}

usage_and_exit();