Skip to content
Snippets Groups Projects
Select Git revision
  • 134540318b8982ffa467346521207efc801ed94d
  • master default protected
  • e-infra2
  • ci-megalinter-speedup
  • egi-fixes
  • e-infra
  • envri-hub-new-aai
  • egi-b2drop-no-collapse
  • lfs
  • gpu_staging
  • resurrect-testing-ownloud
  • experiments/collab
  • update_claim_group_keys
  • envri-hub
  • enable_rtc
  • eosc-ui
  • future/jupyterhub-5.x
  • versioning
  • eosc-templating
  • staging1-raw-image
  • token-exchange
21 results

notebooks.yaml

Blame
  • registerReceiver.pl 3.39 KiB
    #!/usr/bin/perl -w
    #
    # registerReceiver.pl
    #
    # Copyright (C) 2011-2012 Cesnet z.s.p.o
    #
    # Use of this source is governed by a BSD-style license, see LICENSE file.
    
    use strict;
    use Getopt::Std;
    use Switch;
    use File::Basename;
    
    our $VERSION = "2.0";
    
    my $warden_path = '/opt/warden-server';
    require $warden_path . '/lib/WardenReg.pm';
    my $filename = basename($0);
    
    #-------------------------------------------------------------------------------
    #                               Functions
    #-------------------------------------------------------------------------------
    sub usage {
      print "Usage: $filename [-h -o -n <hostname> -r <requestor> -t <type> -i <ip_net_client>]\n";
      exit 1;
    }
    
    
    sub help {
      print "$filename [-h -o -n <hostname> -r <requestor> -t <type> -i <ip_net_client>]\n";
      print "-h     print this text and exit\n";
      print "-n     hostname of receiver\n";
      print "-r     client registration requestor\n";
      print "-t     type of received events or '_any_' for receiving of all types of events\n";
      print "-o     enable receiving of own events\n";
      print "-i     CIDR of receiver\n";
      exit 0;
    }
    
    
    #-------------------------------------------------------------------------------
    # errMsg - print error message and die
    #-------------------------------------------------------------------------------
    sub errMsg
    {
      my $msg = shift;
      $msg = trim($msg);
      print $msg . "\n";
      exit 1;
    } # End of errMsg
    
    
    #-------------------------------------------------------------------------------
    # trim - remove whitespace from the start and end of the string
    #-------------------------------------------------------------------------------
    sub trim
    {
      my $string = shift;
      $string =~ s/^\s+//;
      $string =~ s/\s+$//;
      return $string;
    } # End of trim
    
    
    #-------------------------------------------------------------------------------
    #                               MAIN
    #-------------------------------------------------------------------------------
    our ($opt_n, $opt_r, $opt_t, $opt_o, $opt_i, $opt_h);
    
    if ($#ARGV == -1) {usage}
    
    die usage unless getopts("n:r:t:i:ho");
    my $hostname            = $opt_n;
    my $requestor           = $opt_r;
    my $type		= $opt_t;
    my $ip_net_client       = $opt_i;
    my $help                = $opt_h;
    my $receive_own_events	= "f";
    
    if ($opt_o) {
      $receive_own_events = "t";
    }
    
    # catch help param
    if ($help) {
      help;
    }
    
    if ($ip_net_client !~ /^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/(\d|[1-2]\d|3[0-2]))$/) {
        die errMsg("Enter correct IP in CIDR format!");
    }
    
    # superuser controle
    my $UID = $<;
    if ($UID != 0) {die errMsg("You must be root for running this script!")}
    
    # check parameters definition
    switch () {
      case {!defined $hostname} { print "ERROR: Parameter 'hostname' is not defined!\n"; exit 1; }
      case {!defined $requestor} { print "ERROR: Parameter 'requestor' is not defined!\n"; exit 1; }
      case {!defined $type} { print "ERROR: Parameter 'type' is not defined!\n"; exit 1; }
      case {!defined $receive_own_events} { print "ERROR: Parameter 'receive_own_events' is not defined!\n"; exit 1; }
      case {!defined $ip_net_client} { print "ERROR: Parameter 'ip_net_client' is not defined!\n"; exit 1; }
    }
    
    my $return = WardenReg::registerReceiver($warden_path, $hostname, $requestor, $type, $receive_own_events, $ip_net_client);
    $return ? print "Registration of $hostname was SUCCESSFUL...\n" : print "Registration of $hostname FAILED!\n";
    
    exit 0;