[BACK]Return to main.pl CVS log [TXT][DIR] Up to [local] / wpscripts / ztransfer

Annotation of wpscripts/ztransfer/main.pl, Revision 1.1

1.1     ! yason       1: #!/usr/bin/perl
        !             2: # $Id: main.pl,v 1.1.1.10 2007/01/12 12:13:38 init Exp $
        !             3: use db;
        !             4: use send;
        !             5: use fileops;
        !             6: use network;
        !             7: use log;  # we need to critical log if remote host is down
        !             8: use hash;
        !             9:
        !            10: our $ZFILESERVER_IP = '192.168.12.2';
        !            11: our @ZMPOINTS      = ('zV6', 'zV7', 'zV8');
        !            12: our $mpoint;
        !            13:
        !            14: # according to manual of Perl's function system(),
        !            15: # it is safer to autoflushing all out file disciptors
        !            16: # cause of main process attempts to forcebly flush ones
        !            17: # before any functions that may fork()
        !            18: $| = 1;
        !            19:
        !            20: fileops::check_lock();
        !            21: fileops::take_lock();
        !            22: fileops::cleanup();
        !            23:
        !            24:
        !            25: if( ! network::alive( $ZFILESERVER_IP ) )
        !            26: {
        !            27:     log::critical("$ZFILESERVER_IP is not reached by ICMP, considering host is down, EXITING");
        !            28:     # NOTREACHED
        !            29: }
        !            30:
        !            31: # it seems like remote host is up and running ;)
        !            32: log::stdout("$ZFILESERVER_IP is alive, this is good.");
        !            33:
        !            34:
        !            35: # Check mount table for remote mounts
        !            36: foreach $mpoint (@ZMPOINTS)
        !            37: {
        !            38:     if ( ! `/sbin/mount | /usr/bin/grep $mpoint`)
        !            39:     {
        !            40:                log::critical("$mpoint not mounted. I can't run without that one! EXITING");
        !            41:                # NOTREACHED
        !            42:     }
        !            43: }
        !            44: log::stdout("Remote filesystems are mounted. All checks passed.");
        !            45:
        !            46:
        !            47: # load directory map and print some debug
        !            48: $_ = hash::loadtable();
        !            49: if ( $_ == -1)
        !            50: {
        !            51:     # error opening file
        !            52:
        !            53:     log::stdout("Error opening $hash::HASHFILE (maps will not be used)");
        !            54: }
        !            55: else
        !            56: {
        !            57:     log::stdout("Using directory map file $hash::HASHFILE ($_ records)");
        !            58: }
        !            59:
        !            60:
        !            61: # XXX maybe not to keep connection while rar & copy ?
        !            62: db::connect();
        !            63:
        !            64: send::jpegs();
        !            65: send::zayavki();
        !            66: send::probas();
        !            67: send::tpps();
        !            68:
        !            69: db::disconnect();
        !            70:
        !            71: fileops::release_lock();
        !            72:
        !            73: #EOF

CVSweb