aboutsummaryrefslogtreecommitdiffstats
path: root/include/network.php
diff options
context:
space:
mode:
authorredmatrix <git@macgirvin.com>2016-03-21 21:31:28 -0700
committerredmatrix <git@macgirvin.com>2016-03-21 21:31:28 -0700
commitec99e3ed625110452a694d16f937c35a8d1ba817 (patch)
tree5238ef77a4c0420cbca2547649d0355bebda6ff1 /include/network.php
parent28599fe652de514217e332382f7e5622cb68cc9f (diff)
downloadvolse-hubzilla-ec99e3ed625110452a694d16f937c35a8d1ba817.tar.gz
volse-hubzilla-ec99e3ed625110452a694d16f937c35a8d1ba817.tar.bz2
volse-hubzilla-ec99e3ed625110452a694d16f937c35a8d1ba817.zip
attempting to work with braindead lighttpd gnusocial servers
Diffstat (limited to 'include/network.php')
-rw-r--r--include/network.php22
1 files changed, 20 insertions, 2 deletions
diff --git a/include/network.php b/include/network.php
index b0bf628ba..3efc82447 100644
--- a/include/network.php
+++ b/include/network.php
@@ -185,9 +185,11 @@ function z_post_url($url,$params, $redirects = 0, $opts = array()) {
if($ciphers)
@curl_setopt($ch, CURLOPT_SSL_CIPHER_LIST, $ciphers);
- if(x($opts,'headers'))
+ if(x($opts,'headers')) {
@curl_setopt($ch, CURLOPT_HTTPHEADER, $opts['headers']);
-
+logger('headers: ' . print_r($opts['headers'],true) . 'redir: ' . $redirects);
+ }
+
if(x($opts,'nobody'))
@curl_setopt($ch, CURLOPT_NOBODY, $opts['nobody']);
@@ -236,6 +238,21 @@ function z_post_url($url,$params, $redirects = 0, $opts = array()) {
$base = substr($base,strlen($chunk));
}
+ // would somebody take lighttpd and just shoot it?
+
+ if($http_code == 417) {
+ curl_close($ch);
+ if($opts) {
+ if($opts['headers'])
+ $opts['headers'][] = 'Expect:';
+ else
+ $opts['headers'] = array('Expect:');
+ }
+ else
+ $opts = array('headers' => array('Expect:'));
+ return z_post_url($url,$params,++$redirects,$opts);
+ }
+
if($http_code == 301 || $http_code == 302 || $http_code == 303 || $http_code == 307 || $http_code == 308) {
$matches = array();
preg_match('/(Location:|URI:)(.*?)\n/', $header, $matches);
@@ -1105,6 +1122,7 @@ function discover_by_webbie($webbie) {
}
if($link['rel'] == 'salmon') {
$has_salmon = true;
+ $salmon = $link['href'];
}
if($link['rel'] == 'http://schemas.google.com/g/2010#updates-from') {
$atom_feed = $link['href'];