wakeonlan 0.0.1 → 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.
- data/bin/wakeonlan +12 -2
- data/lib/wakeonlan.rb +9 -4
- data/wakeonlan.gemspec +4 -2
- data.tar.gz.sig +2 -0
- metadata +23 -3
- metadata.gz.sig +1 -0
data/bin/wakeonlan
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
-
# $Id: wakeonlan
|
2
|
+
# $Id: wakeonlan 2 2009-10-28 13:30:42Z hilli $
|
3
3
|
|
4
4
|
require 'optparse'
|
5
5
|
require 'rubygems'
|
@@ -60,10 +60,20 @@ if wakies.to_s.strip.empty?
|
|
60
60
|
exit 1
|
61
61
|
end
|
62
62
|
|
63
|
+
errors = false
|
63
64
|
@wol = WakeOnLan.new
|
64
65
|
@wol.ethers = options[:ethers] if options[:ethers]
|
65
66
|
@wol.verbose = options[:verbose] if options[:verbose]
|
66
67
|
wakies.split.each do |wake|
|
67
|
-
@wol.
|
68
|
+
mac = @wol.resolve_to_mac(wake)
|
69
|
+
if mac != nil
|
70
|
+
@wol.wake(mac, options[:ip], options[:port])
|
71
|
+
else
|
72
|
+
STDERR.puts "Address #{wake} does not resolve or validate"
|
73
|
+
errors = true
|
74
|
+
end
|
68
75
|
end
|
69
76
|
@wol.close
|
77
|
+
if errors
|
78
|
+
exit 1
|
79
|
+
end
|
data/lib/wakeonlan.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
-
# $Id: wakeonlan.rb
|
2
|
+
# $Id: wakeonlan.rb 2 2009-10-28 13:30:42Z hilli $
|
3
3
|
# Jens Hilligsoe <jens@hilli.dk>, 2009
|
4
4
|
#
|
5
5
|
# Based on work by
|
@@ -14,7 +14,7 @@ class WakeOnLan
|
|
14
14
|
|
15
15
|
GEM = "wakeonlan"
|
16
16
|
NAME = "WakeOnLan"
|
17
|
-
VERSION = "0.0.
|
17
|
+
VERSION = "0.0.2"
|
18
18
|
|
19
19
|
attr_reader :socket
|
20
20
|
attr_accessor :ethers
|
@@ -49,6 +49,7 @@ class WakeOnLan
|
|
49
49
|
@socket.connect(ip,port)
|
50
50
|
puts "Sending magic packet to #{ip}:#{port} with #{mac}" if @verbose
|
51
51
|
3.times{ socket.send(magic,0) }
|
52
|
+
return nil
|
52
53
|
end
|
53
54
|
|
54
55
|
# Shorthand class method to facilitate WakeOnLan.wake!(MAC) kind of action
|
@@ -56,6 +57,7 @@ class WakeOnLan
|
|
56
57
|
wol = WakeOnLan.new
|
57
58
|
wol.wake(resolve_to_mac(mac), ip, port)
|
58
59
|
wol.close
|
60
|
+
return nil
|
59
61
|
end
|
60
62
|
|
61
63
|
# Try to resolve the input given to a MAC address. Input can be either a hostname, IP or MAC address
|
@@ -71,12 +73,15 @@ class WakeOnLan
|
|
71
73
|
if File.exist?(@ethers) and File.readable?(@ethers)
|
72
74
|
File.open(@ethers,'r') do |f|
|
73
75
|
f.each_line do |line|
|
74
|
-
|
75
|
-
if
|
76
|
+
next if line.match(/^#/)
|
77
|
+
next if line.match(/^\s$/)
|
78
|
+
mac, host = line.chomp.split
|
79
|
+
if /^#{input}$/.match(host)
|
76
80
|
return mac
|
77
81
|
end
|
78
82
|
end
|
79
83
|
end
|
84
|
+
return nil
|
80
85
|
end
|
81
86
|
end
|
82
87
|
|
data/wakeonlan.gemspec
CHANGED
@@ -2,11 +2,12 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = %q{wakeonlan}
|
5
|
-
s.version = "0.0.
|
5
|
+
s.version = "0.0.2"
|
6
6
|
|
7
7
|
s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
|
8
8
|
s.authors = ["Jens Hilligsoe"]
|
9
|
-
s.
|
9
|
+
s.cert_chain = ["/home/hilli/.gem/gem-public_cert.pem"]
|
10
|
+
s.date = %q{2009-10-28}
|
10
11
|
s.default_executable = %q{wakeonlan}
|
11
12
|
s.description = %q{ WakeOnLAN is a WOL client and library written in pure Ruby.
|
12
13
|
}
|
@@ -19,6 +20,7 @@ Gem::Specification.new do |s|
|
|
19
20
|
s.require_paths = ["lib"]
|
20
21
|
s.rubyforge_project = %q{wakeonlan}
|
21
22
|
s.rubygems_version = %q{1.3.5}
|
23
|
+
s.signing_key = %q{/home/hilli/.gem/gem-private_key.pem}
|
22
24
|
s.summary = %q{A Wake On LAN (WOL) client and library.}
|
23
25
|
|
24
26
|
if s.respond_to? :specification_version then
|
data.tar.gz.sig
ADDED
metadata
CHANGED
@@ -1,15 +1,35 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: wakeonlan
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jens Hilligsoe
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
|
-
cert_chain:
|
10
|
+
cert_chain:
|
11
|
+
- |
|
12
|
+
-----BEGIN CERTIFICATE-----
|
13
|
+
MIIDJDCCAgygAwIBAgIBADANBgkqhkiG9w0BAQUFADA4MQ0wCwYDVQQDDARqZW5z
|
14
|
+
MRMwEQYKCZImiZPyLGQBGRYDZGlyMRIwEAYKCZImiZPyLGQBGRYCZGswHhcNMDkx
|
15
|
+
MDA3MTM0NzQ5WhcNMTAxMDA3MTM0NzQ5WjA4MQ0wCwYDVQQDDARqZW5zMRMwEQYK
|
16
|
+
CZImiZPyLGQBGRYDZGlyMRIwEAYKCZImiZPyLGQBGRYCZGswggEiMA0GCSqGSIb3
|
17
|
+
DQEBAQUAA4IBDwAwggEKAoIBAQDaMMfAzIwXhauDtOrSBPO5FeL0DnI0yr/VLYNs
|
18
|
+
xx76XXuBNkDElagYN4R1opuorQsHWH1c8RyDZCNPH60AlQV6kfvLpoaLLZgZiR00
|
19
|
+
N7FkcThVrHsQNQfpG/HLWim+f2cFcrRoGzJi1tEHGTlnWIJ/ByEUFhRsV6Vkr+sq
|
20
|
+
+SXXnsZLHavVUAS51nGfIBcX4y9AQQHJb23SiETeou6qEaX5k2UA1iCXBuHrvM5I
|
21
|
+
AdqvULqQCGKOmefv1k2/s2aSSSmMYGEbIyhgWslaKdrFhUIJZrCUM6h2ba0aHyiu
|
22
|
+
b1z4DnEi52bTrGTJzLanKoMM+KUK5fph5CM8aunV6amhnB2RAgMBAAGjOTA3MAkG
|
23
|
+
A1UdEwQCMAAwCwYDVR0PBAQDAgSwMB0GA1UdDgQWBBQ7/Jf2j/nsKDDPyX6caWo2
|
24
|
+
MrBN3DANBgkqhkiG9w0BAQUFAAOCAQEAIkPbhF2yqg39nd9iXYzlvj/XRI3dveZ0
|
25
|
+
F4crcq2wW4H+rA+lTWpMjBE92VAbFg7faAGJQDtMvXESiBU2KHpuM/ZLMVBQp/+/
|
26
|
+
uN4CYKPK8viyjna9deFa/gBREf5ZAnETFMrks9hQ+U3X9leY4FwN6cxg33+h3eY7
|
27
|
+
YGAxaw/HYrFOaZW76argQ28Y8MNnQHtpQlxKiVjLqers8Wa2vA1sHkV0/b9PDjHX
|
28
|
+
QU9oSBnHjBtt0o96vsO5F/pxZhRcgcHyJFvL6+ORPpZ35b7/7RQJCvLV5j1qlN7B
|
29
|
+
tvoU77Ap9SAQDY8mf1pqbtVwJm96YC7ECt4eRf/bgFpLLYSHVbXESw==
|
30
|
+
-----END CERTIFICATE-----
|
11
31
|
|
12
|
-
date: 2009-10-
|
32
|
+
date: 2009-10-28 00:00:00 +01:00
|
13
33
|
default_executable:
|
14
34
|
dependencies:
|
15
35
|
- !ruby/object:Gem::Dependency
|
metadata.gz.sig
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
�"��@;��е� T)��4!'8*ٓ�`T�j�0�H�@NJ�S5I��tE�*�`0I�©KZTfEG�)��&k;Ӫ�O�3�\�����#�X�>1�8��e�N��B�YیR`z?�RNSF6y�W�)�N��j���<ᒦդX��nw@�����6E#K�P�|'��k�������ĸ� �I���o���aN.�xN�t}*%�ċV�Ra��"++21H�t|�w^��a�!-h����˳�M<� ��
|