From f07c34f53f1ba30ba46475916486f7224c711cf1 Mon Sep 17 00:00:00 2001 From: Pragmatic Software Date: Thu, 5 Oct 2017 14:31:58 -0700 Subject: [PATCH] Paste to ix.io instead of sprunge; set 10 second timeout for pastes --- PBot/Interpreter.pm | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git a/PBot/Interpreter.pm b/PBot/Interpreter.pm index 8519f3de..a50a81ba 100644 --- a/PBot/Interpreter.pm +++ b/PBot/Interpreter.pm @@ -492,7 +492,7 @@ sub paste { my $text = join(' ', @_); $text =~ s/(.{120})\s/$1\n/g; - my $result = $self->paste_sprunge($text); + my $result = $self->paste_ixio($text); if ($result =~ m/error pasting/) { $result = $self->paste_codepad($text); @@ -501,6 +501,33 @@ sub paste { return $result; } +sub paste_ixio { + my $self = shift; + my $text = join(' ', @_); + + $text =~ s/(.{120})\s/$1\n/g; + + my $ua = LWP::UserAgent->new(); + $ua->agent("Mozilla/5.0"); + push @{ $ua->requests_redirectable }, 'POST'; + $ua->timeout(10); + + my %post = ('f:1' => $text); + my $response = $ua->post("http://ix.io", \%post); + + use Data::Dumper; + print Dumper $response; + + if(not $response->is_success) { + return "error pasting: " . $response->status_line; + } + + my $result = $response->content; + $result =~ s/^\s+//; + $result =~ s/\s+$//; + return $result; +} + sub paste_codepad { my $self = shift; my $text = join(' ', @_); @@ -510,6 +537,7 @@ sub paste_codepad { my $ua = LWP::UserAgent->new(); $ua->agent("Mozilla/5.0"); push @{ $ua->requests_redirectable }, 'POST'; + $ua->timeout(10); my %post = ( 'lang' => 'Plain Text', 'code' => $text, 'private' => 'True', 'submit' => 'Submit' ); my $response = $ua->post("http://codepad.org", \%post); @@ -530,6 +558,7 @@ sub paste_sprunge { my $ua = LWP::UserAgent->new(); $ua->agent("Mozilla/5.0"); $ua->requests_redirectable([ ]); + $ua->timeout(10); my %post = ( 'sprunge' => $text, 'submit' => 'Submit' ); my $response = $ua->post("http://sprunge.us", \%post);