pwnix-api-client 1.0 → 1.1

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/Gemfile CHANGED
@@ -1,8 +1,6 @@
1
1
  source :rubygems
2
2
 
3
- gem 'json'
4
- gem 'httparty'
5
-
6
- group :test do
3
+ group :development do
7
4
  gem 'pry'
8
5
  end
6
+ gemspec
data/Gemfile.lock CHANGED
@@ -1,24 +1,22 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ pwnix-api-client (1.0)
5
+ httparty
6
+ json
7
+
1
8
  GEM
2
9
  remote: http://rubygems.org/
3
10
  specs:
4
- coderay (1.0.7)
5
11
  httparty (0.9.0)
6
12
  multi_json (~> 1.0)
7
13
  multi_xml
8
14
  json (1.7.5)
9
- method_source (0.8)
10
15
  multi_json (1.3.6)
11
16
  multi_xml (0.5.1)
12
- pry (0.9.10)
13
- coderay (~> 1.0.5)
14
- method_source (~> 0.8)
15
- slop (~> 3.3.1)
16
- slop (3.3.3)
17
17
 
18
18
  PLATFORMS
19
19
  ruby
20
20
 
21
21
  DEPENDENCIES
22
- httparty
23
- json
24
- pry
22
+ pwnix-api-client!
@@ -3,14 +3,18 @@ require 'httparty'
3
3
  module Pwnix
4
4
  module Api
5
5
  module Client
6
- BASE_URI = "https://localhost:7967/v1"
7
- #BASE_URI = "http://localhost:9292/v1"
6
+ if ENV['PWNIX_DEV']
7
+ BASE_URI = "http://localhost:9292/v1"
8
+ else
9
+ BASE_URI = "https://localhost:7967/v1"
10
+ end
8
11
  end
9
12
  end
10
13
  end
11
14
 
12
15
  require_relative 'system'
13
16
  require_relative 'shell'
17
+ require_relative 'shell_receiver_config'
14
18
  require_relative 'mode'
15
19
  require_relative 'service'
16
20
 
@@ -42,11 +46,15 @@ module Pwnix
42
46
  attr_accessor :base_uri
43
47
  attr_accessor :system
44
48
  attr_accessor :shells
49
+ attr_accessor :shell_receiver_config
45
50
  attr_accessor :services
46
51
  attr_accessor :modes
47
52
 
53
+
48
54
  def initialize(config={})
49
55
 
56
+ @shell_receiver_config = ShellReceiverConfig.new
57
+
50
58
  @shells = {
51
59
  "dns" => Shell.new("dns"),
52
60
  "gsm" => Shell.new("gsm"),
@@ -0,0 +1,17 @@
1
+ module Pwnix
2
+ module Api
3
+ module Client
4
+ class ShellReceiverConfig
5
+ include HTTParty
6
+ base_uri Pwnix::Api::Client::BASE_URI
7
+ debug_output
8
+ format :json
9
+
10
+ def generate
11
+ self.class.post("/shells/shell_receiver_config/generate", :body => {}).parsed_response['result']
12
+ end
13
+
14
+ end
15
+ end
16
+ end
17
+ end
@@ -11,12 +11,21 @@ module Pwnix
11
11
  self.class.post("/system/network/status", :body => {}).parsed_response['result']
12
12
  end
13
13
 
14
- def change_mac(mac=nil)
15
- if mac
16
- self.class.post("/system/network/status", :body => { :mac => mac } ).parsed_response['result']
17
- else
18
- self.class.post("/system/network/status", :body => {}).parsed_response['result']
19
- end
14
+ def set_static_ip(params)
15
+ # :interface
16
+ # :dns
17
+ # :netmask
18
+ # :
19
+ # :
20
+ self.class.post("/system/network/static_ip/enable", :body => {}).parsed_response['result']
21
+ end
22
+
23
+ def set_dhcp
24
+ self.class.post("/system/network/dhcp/enable", :body => {}).parsed_response['result']
25
+ end
26
+
27
+ def set_mac(mac=nil)
28
+ self.class.post("/system/network/mac/set", :body => { :mac => mac } ).parsed_response['result']
20
29
  end
21
30
  end
22
31
  end
@@ -27,6 +27,14 @@ module Pwnix
27
27
  self.class.post("/system/os/restart", :body => {}).parsed_response['result']
28
28
  end
29
29
 
30
+ def hostname
31
+ self.class.post("/system/os/hostname", :body => {}).parsed_response['result']
32
+ end
33
+
34
+ def set_hostname(hostname)
35
+ self.class.post("/system/os/hostname/set", :body => {}).parsed_response['result']
36
+ end
37
+
30
38
  end
31
39
  end
32
40
  end
@@ -1,7 +1,7 @@
1
1
  module Pwnix
2
2
  module Api
3
3
  module Client
4
- VERSION = "1.0"
4
+ VERSION = "1.1"
5
5
  end
6
6
  end
7
7
  end
@@ -11,7 +11,6 @@ Gem::Specification.new do |s|
11
11
  s.summary = %q{Pwnix API Client}
12
12
  s.description = %q{ Remotely manage a Pwnix device. }
13
13
 
14
- #s.rubyforge_project = "PwnixApiClient"
15
14
  s.add_runtime_dependency "httparty"
16
15
  s.add_runtime_dependency "json"
17
16
 
@@ -19,4 +18,4 @@ Gem::Specification.new do |s|
19
18
  s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
20
19
  s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
21
20
  s.require_paths = ["lib"]
22
- end
21
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pwnix-api-client
3
3
  version: !ruby/object:Gem::Version
4
- version: '1.0'
4
+ version: '1.1'
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-09-26 00:00:00.000000000 Z
12
+ date: 2012-09-29 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: httparty
16
- requirement: &14348860 !ruby/object:Gem::Requirement
16
+ requirement: &8647220 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *14348860
24
+ version_requirements: *8647220
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: json
27
- requirement: &14348440 !ruby/object:Gem::Requirement
27
+ requirement: &8646800 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,7 +32,7 @@ dependencies:
32
32
  version: '0'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *14348440
35
+ version_requirements: *8646800
36
36
  description: ! ' Remotely manage a Pwnix device. '
37
37
  email:
38
38
  - jcran@pwnieexpress.com
@@ -52,6 +52,7 @@ files:
52
52
  - lib/pwnix-api-client/mode.rb
53
53
  - lib/pwnix-api-client/service.rb
54
54
  - lib/pwnix-api-client/shell.rb
55
+ - lib/pwnix-api-client/shell_receiver_config.rb
55
56
  - lib/pwnix-api-client/spec/pwnix-api-client-spec.rb
56
57
  - lib/pwnix-api-client/system.rb
57
58
  - lib/pwnix-api-client/system/hardware.rb