Class: WpaCliRuby::WpaCli

Inherits:
Object
  • Object
show all
Defined in:
lib/wpa_cli_ruby/wpa_cli.rb

Defined Under Namespace

Classes: ListNetworkResult, Response, ScanResult, StatusResponse

Instance Method Summary collapse

Constructor Details

#initialize(wrapper = WpaCliWrapper.new) ⇒ WpaCli

Returns a new instance of WpaCli.



63
64
65
# File 'lib/wpa_cli_ruby/wpa_cli.rb', line 63

def initialize(wrapper = WpaCliWrapper.new)
  @wrapper = wrapper
end

Instance Method Details

#add_networkObject



84
85
86
87
88
# File 'lib/wpa_cli_ruby/wpa_cli.rb', line 84

def add_network
  response = @wrapper.add_network
  _, status = response.split("\n")
  network_id = status.to_i
end

#enable_network(network_id) ⇒ Object



115
116
117
118
119
120
121
# File 'lib/wpa_cli_ruby/wpa_cli.rb', line 115

def enable_network(network_id)
  response = @wrapper.enable_network(network_id)
  response = parse_interface_status_response(response)
  raise EnableNetworkFailure unless response.ok?

  response
end

#get_network(network_id, key) ⇒ Object

Raises:



106
107
108
109
110
111
112
113
# File 'lib/wpa_cli_ruby/wpa_cli.rb', line 106

def get_network(network_id, key)
  response = @wrapper.get_network(network_id, key)
  _, value = response.split("\n")

  raise NetworkNotFound if value == "FAIL"

  value
end

#get_statusObject



131
132
133
134
# File 'lib/wpa_cli_ruby/wpa_cli.rb', line 131

def get_status
  response = @wrapper.get_status
  parse_status_response(response)
end

#list_networksObject



78
79
80
81
82
# File 'lib/wpa_cli_ruby/wpa_cli.rb', line 78

def list_networks
  response = @wrapper.list_networks
  interface, header, *results = response.split("\n")
  results.map { |result| ListNetworkResult.from_string(result) }
end

#save_configObject

Raises:



98
99
100
101
102
103
104
# File 'lib/wpa_cli_ruby/wpa_cli.rb', line 98

def save_config
  response = @wrapper.save_config
  response = parse_interface_status_response(response)
  raise SaveConfigFailure unless response.ok?

  response
end

#scanObject



67
68
69
70
# File 'lib/wpa_cli_ruby/wpa_cli.rb', line 67

def scan
  response = @wrapper.scan
  parse_interface_status_response(response)
end

#scan_resultsObject



72
73
74
75
76
# File 'lib/wpa_cli_ruby/wpa_cli.rb', line 72

def scan_results
  response = @wrapper.scan_results
  interface, header, *results = response.split("\n")
  results.map { |result| ScanResult.from_string(result) }
end

#select_network(network_id) ⇒ Object



123
124
125
126
127
128
129
# File 'lib/wpa_cli_ruby/wpa_cli.rb', line 123

def select_network(network_id)
  response = @wrapper.select_network(network_id)
  response = parse_interface_status_response(response)
  raise SelectNetworkFailure unless response.ok?

  response
end

#set_ap_scan(val) ⇒ Object



136
137
138
# File 'lib/wpa_cli_ruby/wpa_cli.rb', line 136

def set_ap_scan(val)
  @wrapper.set_ap_scan(val)
end

#set_network(network_id, key, value) ⇒ Object

Raises:



90
91
92
93
94
95
96
# File 'lib/wpa_cli_ruby/wpa_cli.rb', line 90

def set_network(network_id, key, value)
  response = @wrapper.set_network(network_id, key, value)
  response = parse_interface_status_response(response)
  raise SetNetworkFailure unless response.ok?

  response
end