#! /home/conda/feedstock_root/build_artifacts/gct_1705239453311/_build_env/bin/perl # # Copyright 1999-2006 University of Chicago # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # use strict; use warnings; use Getopt::Long; use English; use File::Path; my ($opt_help, $opt_force, $opt_nonroot, $target); if(!GetOptions("help|h" => \$opt_help, "force|f" => \$opt_force, "nonroot|n" => \$opt_nonroot, "out|o=s" => \$target)) { usage(1); } if(defined($opt_help)) { usage(0); } my $GLOBUS_LOCATION = '/cvmfs/dirac.egi.eu/dirac/v9.0.0a23/Linux-aarch64'; if (exists $ENV{GLOBUS_LOCATION}) { $GLOBUS_LOCATION = $ENV{GLOBUS_LOCATION}; } ###################################################### my $sshftp = < EOF ###################################################### umask(022); if(!defined($target)) { if(defined($opt_nonroot)) { mkdir "$ENV{HOME}/.globus" unless (-d "$ENV{HOME}/.globus"); $target = "$ENV{HOME}/.globus/sshftp"; } else { mkdir "/etc/grid-security" unless (-d "/etc/grid-security"); $target = "/etc/grid-security/sshftp"; } } if(-e $target && !defined($opt_force)) { die("$target exists. Use option --force to overwrite.\n"); } open(FILE, "> $target") || die("Error while trying to open $target. Check your permissions.\n"); print FILE $sshftp; close(FILE); chmod 0755, $target; print "Successfully created $target.\n"; sub usage { my $ex = shift; print "Usage: globus-gridftp-server-enable-sshftp [opts]\n". "opts: [-nonroot | -out ] [-force] [-help|-h]\n". " Creates gridftp startup script used by sshftp clients.\n". " Default location is /etc/grid-security/sshftp.\n". " -nonroot creates ~/.globus/sshftp.\n"; exit $ex; }