This file is indexed.

/usr/bin/tinyca2 is in tinyca 0.7.5-3.

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
119
120
121
122
123
#!/usr/bin/perl -w
#
# $Id: tinyca2,v 1.6 2006/07/04 19:53:16 sm Exp $
#
# Copyright (c) Stephan Martin <sm@sm-zone.net>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
# 
# 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.
# 
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.

BEGIN { unshift(@INC, '/usr/share/tinyca'); # put here the location of the modules
}

use strict;

use Gtk2 '-init';

use MIME::Base64;

use POSIX;
use Locale::gettext;

use OpenSSL;
use CA;
use GUI;
use HELPERS;
use GUI::TCONFIG;
use GUI::HELPERS;
use GUI::CALLBACK;
use GUI::WORDS;
use GUI::X509_infobox;
use GUI::X509_browser;
use CERT;
use REQ;
use KEY;
use TCONFIG;

setlocale(LC_MESSAGES, "");
bindtextdomain("tinyca2", "/usr/share/locale/");
textdomain("tinyca2");

# https://bugs.gentoo.org/show_bug.cgi?id=78576
$ENV{XLIB_SKIP_ARGB_VISUALS}= '1';

my $init = {};

# location of openssl
$init->{'opensslbin'} = "/usr/bin/openssl";
$init->{'zipbin'} = "/usr/bin/zip";
$init->{'tarbin'} = "/bin/tar";

if(not -x $init->{'opensslbin'}) {
   printf(gettext("Can't execute %s.\n"), $init->{'opensslbin'});
   print gettext("Configure correct path to openssl in tinyca.\n");
   exit(1);
}

if(not -x $init->{'zipbin'}) {
   print gettext("zip command not found, support disabled.\n");
   print gettext("Configure correct path to zip in tinyca.\n");
}

if(not -x $init->{'tarbin'}) {
   print gettext("tar command not found, support disabled.\n");
   print gettext("Configure correct path to tar in tinyca.\n");
}

# directory with the templates
$init->{'templatedir'} = "/etc/tinyca";

if(not -d $init->{'templatedir'}) {
   print gettext("Can't find templatedir.\n");
   print gettext("Please configure correct path with templates in tinyca.\n");
   exit(1);
}

# location for CA files
if( exists $ENV{'TINYCA_BASEDIR'}) {
   $init->{'basedir'}   = $ENV{'TINYCA_BASEDIR'}
} else {
   $init->{'basedir'}   = $ENV{HOME}."/.TinyCA";
}

if( exists $ENV{'TINYCA_EXPORTDIR'}) {
   $init->{'exportdir'} = $ENV{'TINYCA_EXPORTDIR'};
} else {
   $init->{'exportdir'} = $ENV{HOME};
}

umask(0077);

# create main object and initialize CA
my $gui = GUI->new($init);

# and now run...
$gui->{'mw'}->show_all();

# decide what to do on startup
if(@{$gui->{'CA'}->{'calist'}}) {
   $gui->{'CA'}->get_open_name($gui);
} else {
   $gui->{'CA'}->get_ca_create($gui);
}

sub _ {
   my $s = gettext(@_);
   utf8::decode($s);
   return($s);
}

Gtk2->main();

exit(0);