if ($json['over_limit'] != 0) {
     textarea($json);
     html_error('The server is overloaded, please try to upload later.');
 }
 if (!empty($uploadHeaders)) {
     $uploadHeaders = array_map('iaS3HeaderEncode', $uploadHeaders);
 }
 $uploadHeaders['Authorization'] = 'LOW ' . $iaS3AccessKey . ':' . $iaS3SecretKey;
 $uploadReferer = $referer;
 foreach ($uploadHeaders as $tok => $val) {
     $uploadReferer .= "\r\n{$tok}: {$val}";
 }
 // Uploading
 echo "<script type='text/javascript'>document.getElementById('info').style.display='none';</script>\n";
 $url = parse_url('http://s3.us.archive.org/' . urlencode($_REQUEST['bucket']) . '/' . urlencode($lname));
 $upfiles = putfile($url['host'], defport($url), $url['path'] . (!empty($url['query']) ? '?' . $url['query'] : ''), $uploadReferer, $cookie, $lfile, $lname, $_GET['proxy'], $pauth, 0, $url['scheme']);
 // Upload Finished
 echo "<script type='text/javascript'>document.getElementById('progressblock').style.display='none';</script>\n";
 is_page($upfiles);
 if (intval(substr($upfiles, 9, 3)) != 200) {
     if (preg_match('@<Error><Code>(\\w+)</Code><Message>(?>(.*?)</Message>)@i', $upfiles, $err)) {
         switch ($err[1]) {
             case 'AccessDenied':
                 html_error('Upload Error: Access to bucket denied, make sure that this bucket is yours.');
             case 'InvalidAccessKeyId':
                 html_error('Upload Error: Invalid AccessKey.');
             case 'SignatureDoesNotMatch':
                 html_error('Upload Error: Invalid or Incorrect SecretKey.');
             case 'SlowDown':
             case 'ServiceUnavailable':
                 html_error('The server is overloaded and discarted this upload, please try to upload later.');
Example #2
0
    while ($kb = fread($s, 1024)) {
        fwrite($f, $kb, 1024);
    }
    fclose($f);
    fclose($s);
    chmod(LOG_SUBDIR . $fname, 0666);
    $fname = URL_BASE . LOG_SUBDIR . $fname;
    header("Location: " . $fname);
    header("HTTP/1.1 201 Created");
    echo "<html><head><title>Success</title></head><body>";
    echo "<p>Created <a href=\"" . $fname . "\">" . $fname . "</a> OK.</p></body></html>";
}
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
//--- main()
if ($_SERVER["REQUEST_METHOD"] != "PUT") {
    header("HTTP/1.1 403 Bad Request");
    exit;
}
if (!gs_get_conf("GS_POLYCOM_PROV_ALLOW_LOG_PUT")) {
    header("HTTP/1.1 405 Method not allowed");
    exit;
}
$ua = trim(@$_SERVER["HTTP_USER_AGENT"]);
if (!preg_match("/PolycomSoundPointIP/", $ua) && !preg_match("/PolycomSoundStationIP/", $ua)) {
    header("HTTP/1.1 405 Method not allowed");
    exit;
}
putfile();