mupnp 0.1.2 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- data/LICENSE +165 -0
- data/README.md +27 -0
- data/ext/upnp_wrap.c +376 -376
- data/lib/UPnP/version.rb +3 -0
- metadata +40 -46
- data/README +0 -18
- data/Rakefile +0 -80
- data/test/UPnP/tc_upnp.rb +0 -20
data/lib/UPnP/version.rb
ADDED
metadata
CHANGED
@@ -1,34 +1,35 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: mupnp
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.2.0
|
5
|
+
prerelease:
|
5
6
|
platform: ruby
|
6
|
-
authors:
|
7
|
+
authors:
|
7
8
|
- Dario Meloni
|
9
|
+
- Nathaniel Talbott
|
8
10
|
autorequire:
|
9
11
|
bindir: bin
|
10
12
|
cert_chain: []
|
11
|
-
|
12
|
-
date: 2008-10-01 00:00:00 +02:00
|
13
|
-
default_executable:
|
13
|
+
date: 2012-10-05 00:00:00.000000000 Z
|
14
14
|
dependencies: []
|
15
|
-
|
16
|
-
|
17
|
-
|
15
|
+
description: Makes it easy to poke holes in firewalls.
|
16
|
+
email:
|
17
|
+
- mellon85@gmail.com
|
18
|
+
- nathaniel@talbott.ws
|
18
19
|
executables: []
|
19
|
-
|
20
|
-
extensions:
|
20
|
+
extensions:
|
21
21
|
- ext/extconf.rb
|
22
|
-
extra_rdoc_files:
|
23
|
-
|
24
|
-
-
|
25
|
-
-
|
26
|
-
- ext/Changelog.txt
|
27
|
-
files:
|
22
|
+
extra_rdoc_files: []
|
23
|
+
files:
|
24
|
+
- LICENSE
|
25
|
+
- README.md
|
28
26
|
- lib/UPnP.rb
|
29
|
-
-
|
30
|
-
-
|
27
|
+
- lib/UPnP/version.rb
|
28
|
+
- ext/Changelog.txt
|
29
|
+
- ext/LICENSE
|
30
|
+
- ext/README
|
31
31
|
- ext/declspec.h
|
32
|
+
- ext/extconf.rb
|
32
33
|
- ext/igd_desc_parse.c
|
33
34
|
- ext/igd_desc_parse.h
|
34
35
|
- ext/minisoap.c
|
@@ -49,35 +50,28 @@ files:
|
|
49
50
|
- ext/upnperrors.h
|
50
51
|
- ext/upnpreplyparse.c
|
51
52
|
- ext/upnpreplyparse.h
|
52
|
-
|
53
|
-
|
54
|
-
- ext/LICENSE
|
55
|
-
- ext/Changelog.txt
|
56
|
-
has_rdoc: true
|
57
|
-
homepage: http://rubyforge.org/projects/mupnp/
|
53
|
+
homepage: http://github.com/ntalbott/mupnp
|
54
|
+
licenses: []
|
58
55
|
post_install_message:
|
59
56
|
rdoc_options: []
|
60
|
-
|
61
|
-
require_paths:
|
57
|
+
require_paths:
|
62
58
|
- lib
|
63
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
59
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
60
|
+
none: false
|
61
|
+
requirements:
|
62
|
+
- - ! '>='
|
63
|
+
- !ruby/object:Gem::Version
|
64
|
+
version: '0'
|
65
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
66
|
+
none: false
|
67
|
+
requirements:
|
68
|
+
- - ! '>='
|
69
|
+
- !ruby/object:Gem::Version
|
70
|
+
version: '0'
|
75
71
|
requirements: []
|
76
|
-
|
77
|
-
|
78
|
-
rubygems_version: 1.0.1
|
72
|
+
rubyforge_project:
|
73
|
+
rubygems_version: 1.8.11
|
79
74
|
signing_key:
|
80
|
-
specification_version:
|
75
|
+
specification_version: 3
|
81
76
|
summary: UPnP Implementation using the Miniupnpc library
|
82
|
-
test_files:
|
83
|
-
- test/UPnP/tc_upnp.rb
|
77
|
+
test_files: []
|
data/README
DELETED
@@ -1,18 +0,0 @@
|
|
1
|
-
= UPnP
|
2
|
-
Author:: Dario Meloni (mailto:mellon85@gmail.com)
|
3
|
-
License:: LGPL
|
4
|
-
|
5
|
-
The gem is based on the work of Thomas Bernard, miniupnp library
|
6
|
-
(http://miniupnp.free.fr/). The source code and his license can be
|
7
|
-
found in the ext directory.
|
8
|
-
There is a little modification in the code. In the original code there was a compile time switch to receive answer only on the UPnP ports. It is sometimes suefull with certains firewall to have it enabled, but it may give some problems with Windows XP. So i have changed it in a run time switch to be passed to upnpDiscover function.
|
9
|
-
By default it wants to receive answer on the same port (firewall friendly). If no answer are received from some devices, then maybe a test with them off (microsoft friendly, may get blocked by firewalls).
|
10
|
-
|
11
|
-
The windows version will be made as long as
|
12
|
-
i have some volounteer that can provide me the precompiled code for
|
13
|
-
windows. The library is in the module called MiniUPnP, in it you can
|
14
|
-
find all the library functions.
|
15
|
-
The module UPnP is a wrapper that simplify the access to the
|
16
|
-
underlaying library.
|
17
|
-
The interface was automatically built with swig (http://www.swig.org/),
|
18
|
-
the interface file is upnp.i
|
data/Rakefile
DELETED
@@ -1,80 +0,0 @@
|
|
1
|
-
require 'rubygems'
|
2
|
-
Gem::manage_gems
|
3
|
-
require 'rake/gempackagetask'
|
4
|
-
require 'rake/testtask'
|
5
|
-
require 'rake/packagetask'
|
6
|
-
require 'rake/rdoctask'
|
7
|
-
|
8
|
-
spec = Gem::Specification.new do |s|
|
9
|
-
s.name = "mupnp"
|
10
|
-
s.version = "0.1.2"
|
11
|
-
s.author = "Dario Meloni"
|
12
|
-
s.email = "mellon85@gmail.com"
|
13
|
-
s.homepage = "http://rubyforge.org/projects/mupnp/"
|
14
|
-
s.rubyforge_project = "mupnp"
|
15
|
-
s.summary = "UPnP Implementation using the Miniupnpc library"
|
16
|
-
s.files = FileList['lib/**/*.rb', 'test/**/*.rb', 'Rakefile',
|
17
|
-
'ext/*.[chi]'].to_a
|
18
|
-
s.extra_rdoc_files = FileList['README','ext/README','ext/LICENSE','ext/Changelog.txt'].to_a
|
19
|
-
s.require_path = ["lib", "ext"]
|
20
|
-
s.test_files = Dir.glob('test/**/tc_*.rb')
|
21
|
-
s.has_rdoc = true
|
22
|
-
s.extensions << "ext/extconf.rb"
|
23
|
-
s.require_path = 'lib'
|
24
|
-
|
25
|
-
if RUBY_PLATFORM =~ /mswin/
|
26
|
-
s.files += ["ext/miniupnp.so"]
|
27
|
-
s.extensions.clear
|
28
|
-
s.platform = Gem::Platform::WIN32
|
29
|
-
end
|
30
|
-
end
|
31
|
-
|
32
|
-
Rake::GemPackageTask.new(spec) do |p|
|
33
|
-
p.gem_spec = spec
|
34
|
-
unless RUBY_PLATFORM =~ /mswin/
|
35
|
-
p.need_tar = true
|
36
|
-
p.need_zip = true
|
37
|
-
end
|
38
|
-
end
|
39
|
-
|
40
|
-
Rake::RDocTask.new do |rd|
|
41
|
-
rd.rdoc_dir = "rdoc"
|
42
|
-
rd.rdoc_files.include("./lib/**/*.rb")
|
43
|
-
rd.rdoc_files.include("README")
|
44
|
-
rd.options = %w(-ap)
|
45
|
-
end
|
46
|
-
|
47
|
-
task :distclean => [:clobber_package, :clobber_rdoc]
|
48
|
-
task :dist => [:repackage, :gem, :rdoc]
|
49
|
-
task :clean => [:distclean, :extclean]
|
50
|
-
task :default => [:test, :dist ]
|
51
|
-
|
52
|
-
desc "Build the extension"
|
53
|
-
task :ext => ["ext/Makefile"] do
|
54
|
-
cd "ext"
|
55
|
-
if (/mswin/ =~ RUBY_PLATFORM) and ENV['make'].nil?
|
56
|
-
begin
|
57
|
-
sh "nmake"
|
58
|
-
rescue Exception => e
|
59
|
-
puts "Windows builds is absolutely experimental... all on your back"
|
60
|
-
raise e
|
61
|
-
end
|
62
|
-
else
|
63
|
-
sh "make"
|
64
|
-
end
|
65
|
-
cd ".."
|
66
|
-
end
|
67
|
-
|
68
|
-
desc "Build makefile"
|
69
|
-
file "ext/Makefile" do
|
70
|
-
cd "ext"
|
71
|
-
`ruby extconf.rb`
|
72
|
-
cd ".."
|
73
|
-
end
|
74
|
-
|
75
|
-
desc "Clean extension"
|
76
|
-
task :extclean do
|
77
|
-
cd 'ext'
|
78
|
-
rm_f FileList["*.o","*.so","*.bundle","*.dll","Makefile"]
|
79
|
-
cd '..'
|
80
|
-
end
|
data/test/UPnP/tc_upnp.rb
DELETED
@@ -1,20 +0,0 @@
|
|
1
|
-
#! /usr/bin/ruby
|
2
|
-
# Author: Dario Meloni <mellon85@gmail.com>
|
3
|
-
|
4
|
-
require 'test/unit'
|
5
|
-
require 'rubygems'
|
6
|
-
|
7
|
-
class TC_Load < Test::Unit::TestCase
|
8
|
-
|
9
|
-
def test_discover
|
10
|
-
require 'UPnP'
|
11
|
-
begin
|
12
|
-
u = UPnP::UPnP.new(false,1000)
|
13
|
-
assert(u.discoverIGD == nil)
|
14
|
-
rescue UPnP::UPnPException
|
15
|
-
puts "Can't test if no upnp device is found"
|
16
|
-
end
|
17
|
-
end
|
18
|
-
|
19
|
-
end
|
20
|
-
|