arpscanner 0.1.0

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.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 60a6fd991e59e363f27de94070f6203351d2e79b
4
+ data.tar.gz: 17b8bfe1a8b756e6df4f0c0ab98d1a6e8bb3431f
5
+ SHA512:
6
+ metadata.gz: 54dbd28b0c6ab8204925d8856143ed5a8094d25b922a5ffd1e9dc1e0769bee79d82f806238e2a4385adf59ce6e3220781994b103b8b36c111f13ffcb269979af
7
+ data.tar.gz: ab7f18c930b879581abe9d1d429ae664ae0cee8ae24b464a1c4dd7828f0d1c53472745fda0873cceb40b5ac3d4eb133e08ae3802580e071c3af0369ce178a888
Binary file
@@ -0,0 +1 @@
1
+ �=�mm;9)���[ĬC��m �%�۩�)� � *�n�b��O�.s����T݄���˲r�yL'( ��v%=s1�1�{���:���9f<wn[�C���o��� �wS��jS!��<\�V����k��͢�R�\��'�EI>��oVJ��߂B�nv}������4&�/���o!�FL��x2C> k�(_��*��'���ht��;�L�I!Cv�
@@ -0,0 +1,41 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ # file: arpscanner.rb
4
+
5
+
6
+ class ArpScanner
7
+
8
+ def initialize()
9
+
10
+ package = 'arp-scan'
11
+
12
+ found = `dpkg --get-selections | grep #{package}`
13
+
14
+ if found.empty? then
15
+ raise 'ArpScanner: arp-scanner package not found'
16
+ end
17
+
18
+ @arpscan_cmd = "sudo #{package} --interface=eth0 --localnet"
19
+
20
+ end
21
+
22
+ def scan()
23
+
24
+ a = `#{@arpscan_cmd}`.lines
25
+ a.shift 2
26
+ a2 = a.map {|x| %i(ip mac mfr).zip(x.chomp.split("\t")).to_h}
27
+
28
+ # Add additional vendors
29
+ h = {/^b8:27:eb:/ => 'Raspberry Pi Foundation'}
30
+
31
+ a2.map do |x|
32
+
33
+ _, vendor = h.detect {|mac, mfr| x[:mac] =~ mac }
34
+ x[:mfr] = vendor if vendor
35
+ x
36
+
37
+ end
38
+
39
+ end
40
+
41
+ end
metadata ADDED
@@ -0,0 +1,68 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: arpscanner
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - James Robertson
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain:
11
+ - |
12
+ -----BEGIN CERTIFICATE-----
13
+ MIIDljCCAn6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBIMRIwEAYDVQQDDAlnZW1t
14
+ YXN0ZXIxHjAcBgoJkiaJk/IsZAEZFg5qYW1lc3JvYmVydHNvbjESMBAGCgmSJomT
15
+ 8ixkARkWAmV1MB4XDTE3MDQyNDA5MzA0MloXDTE4MDQyNDA5MzA0MlowSDESMBAG
16
+ A1UEAwwJZ2VtbWFzdGVyMR4wHAYKCZImiZPyLGQBGRYOamFtZXNyb2JlcnRzb24x
17
+ EjAQBgoJkiaJk/IsZAEZFgJldTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
18
+ ggEBAN+QLE6Yi4Jch6ppEryYSM+k3fSq28g+YIoMO6GwTBEOg2z/FOWS4ycQF5Zg
19
+ RrZGCWlegCnvkvgCwo6BsH7WeU0zNUg63QWjS1BPPKpPSWkUmG3Yo3SQMynL7gAO
20
+ NaacqrnW9DPgKoSHwtHPSk8tribyDAuZHATNWtO4GiKXWMl+8tyWvM3QlcyJtUER
21
+ FP0W5eXGXtjdUVk1+7WSWVJRKR8jySRTTAjH4bbTxBf837HzjMtgLKCfyW8L4Asn
22
+ drJ/JhG3SkcwSdv6Ak0i2fT9+3UaHUtC2M6O+xHtbyDhFzt3zShWDa3mgcnwRgSe
23
+ wm1j2Ndn6FK7XtRRgpOZv5QPj70CAwEAAaOBijCBhzAJBgNVHRMEAjAAMAsGA1Ud
24
+ DwQEAwIEsDAdBgNVHQ4EFgQU6gvSWNYHJnNpLXV+IZy6iXV9nDswJgYDVR0RBB8w
25
+ HYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1h
26
+ c3RlckBqYW1lc3JvYmVydHNvbi5ldTANBgkqhkiG9w0BAQUFAAOCAQEAtK/D1dXv
27
+ J/IA8H8dyRSrYKcUIIiOdO2IBWGwHv575z6Mn/N8t0QKI/J0KajTmdmJgzSpLMdi
28
+ vlL3GHtq7FuSSyIS0x4DUAsrnnqW0wLO5RO45StesM3Ox50Fnns3bZ+mzNbnie9w
29
+ JTBFt0JaDfm7XX4YBGoRAVx09MGb2nY9+b6ADmuxc8RKnES6aBcUjKeiekjvwCSp
30
+ rSG6h0tzkS+T20MrUsoAFbUZrl9M66n/bRiOi4M3a5+yXtdFl8mNUao9AEy1agrY
31
+ zGbFtmj+qxIMN740pko5J1wO5TCj/o4CkGZgKODzlJWD41lgJTffttClCxwyaqrY
32
+ zkG+5A2e9mDZwA==
33
+ -----END CERTIFICATE-----
34
+ date: 2017-04-24 00:00:00.000000000 Z
35
+ dependencies: []
36
+ description:
37
+ email: james@jamesrobertson.eu
38
+ executables: []
39
+ extensions: []
40
+ extra_rdoc_files: []
41
+ files:
42
+ - lib/arpscanner.rb
43
+ homepage: https://github.com/jrobertson/arpscanner
44
+ licenses:
45
+ - MIT
46
+ metadata: {}
47
+ post_install_message:
48
+ rdoc_options: []
49
+ require_paths:
50
+ - lib
51
+ required_ruby_version: !ruby/object:Gem::Requirement
52
+ requirements:
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ version: '0'
56
+ required_rubygems_version: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ version: '0'
61
+ requirements: []
62
+ rubyforge_project:
63
+ rubygems_version: 2.6.8
64
+ signing_key:
65
+ specification_version: 4
66
+ summary: A wrapper for the package arp-scan. It can detect if a found MAC address
67
+ belongs to a Raspberry Pi.
68
+ test_files: []
Binary file