Changeset 13933

Show
Ignore:
Timestamp:
12/18/07 01:28:57 (10 months ago)
Author:
flack
Message:

configurable support for trusted ips (f.x. for importing from command-line)

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/midcom/midcom.helper.filesync/config/config.inc

    r13926 r13933  
    11'vcs_svn_enable' => false, 
    22'filesync_path'  => '/var/spool/midgard/filesync', 
     3'trusted_ips' => Array(), 
  • trunk/midcom/midcom.helper.filesync/documentation/CHANGES

    r13816 r13933  
    88- All items marked with "+" represent completely new features. 
    99 
     102007-12-18 flack 
     11    configurable support for trusted ips (f.x. for importing from command-line) 
     12 
    10132007-Dec-Sun tarjei 
    1114  + initial version 
  • trunk/midcom/midcom.helper.filesync/exec/import_snippets.php

    r13931 r13933  
    11<?php 
    2 $_MIDCOM->auth->require_admin_user(); 
     2$importer = midcom_helper_filesync_importer::create('snippet'); 
     3$trusted_ips = $importer->config->get('trusted_ips'); 
     4$ip_sudo = false; 
     5 
     6if ($trusted_ips 
     7    && in_array($_SERVER['REMOTE_ADDR'], $trusted_ips)) 
     8
     9    if (! $_MIDCOM->auth->request_sudo('midcom.helper.filesync')) 
     10    { 
     11        $_MIDCOM->generate_error(MIDCOM_ERRCRIT, 'Failed to acquire SUDO rights. Aborting.'); 
     12    } 
     13    $ip_sudo = true; 
     14
     15else 
     16
     17    $_MIDCOM->auth->require_admin_user(); 
     18
    319$_MIDCOM->cache->content->enable_live_mode(); 
    420$_MIDCOM->header('Content-Type: text/plain'); 
    5 $importer = midcom_helper_filesync_importer::create('snippet'); 
     21 
    622$importer->import(); 
    723echo "Import from {$importer->root_dir} completed\n"; 
     24if ($ip_sudo) 
     25{ 
     26    $_MIDCOM->auth->drop_sudo(); 
     27} 
    828?> 
  • trunk/midcom/midcom.helper.filesync/exec/import_style.php

    r13931 r13933  
    11<?php 
    2 $_MIDCOM->auth->require_admin_user(); 
     2$importer = midcom_helper_filesync_importer::create('style'); 
     3$trusted_ips = $importer->config->get('trusted_ips'); 
     4$ip_sudo = false; 
     5 
     6if ($trusted_ips 
     7    && in_array($_SERVER['REMOTE_ADDR'], $trusted_ips)) 
     8
     9    if (! $_MIDCOM->auth->request_sudo('midcom.helper.filesync')) 
     10    { 
     11        $_MIDCOM->generate_error(MIDCOM_ERRCRIT, 'Failed to acquire SUDO rights. Aborting.'); 
     12    } 
     13    $ip_sudo = true; 
     14
     15else 
     16
     17    $_MIDCOM->auth->require_admin_user(); 
     18
    319$_MIDCOM->cache->content->enable_live_mode(); 
    420$_MIDCOM->header('Content-Type: text/plain'); 
    5 $importer = midcom_helper_filesync_importer::create('style'); 
     21 
    622$importer->import(); 
    723echo "Import from {$importer->root_dir} completed\n"; 
     24if ($ip_sudo) 
     25{ 
     26    $_MIDCOM->auth->drop_sudo(); 
     27} 
    828?>