Skip to content

Commit

Permalink
Merge branch 'release/v0.4.2'
Browse files Browse the repository at this point in the history
  • Loading branch information
iphoting committed Jul 5, 2014
2 parents aadfa5f + ebafdb6 commit 33ce057
Show file tree
Hide file tree
Showing 7 changed files with 28 additions and 15 deletions.
19 changes: 16 additions & 3 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,15 +1,28 @@
language: ruby

before_install:
- gem update bundler
- bundle version

rvm:
- 1.9.3
- 2.0.0
- 2.1
- "1.9.3"
- "2.0.0"
- "2.1"
- ruby-head
- jruby-19mode

matrix:
fast_finish: true
allow_failures:
- rvm: ruby-head
- rvm: jruby-19mode

deploy:
provider: rubygems
api_key:
secure: BQQeiJ84RINkM5Pxm7zFSAbOS2T5THi+37CoswQXe5eTi+0PIl14plWJByGOj2ho2e6kam5XU/VUgQzDexhkFz174QDP+BIuhdNxRMuMqgKuffi0Cyb9CM7JybpsB+Yd97X3nNxiubR/qoJPQ5nvG1SvCuF2TK3Zq8cL5VfxZ9o=
gem: ovpnmcgen.rb
on:
tags: true
repo: "iphoting/ovpnmcgen.rb"
branch: master
3 changes: 3 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
= 0.4.2 / 2014-07-05
* Bugfix: Default catch-all rule should be 'Ignore', any other option does not make sense.

= 0.4.1 / 2014-05-07
* Bugfix: SSIDs specified as a string in configfile now correctly output
as arrays. (#a9e638)
Expand Down
9 changes: 6 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ Although there are many possible VPN-on-Demand (VoD) triggers, this utility curr
- Else if wireless SSID matches any specified with `--untrusted-ssids`, unconditionally bring up the VPN connection on the next network attempt.
- Else if the primary network interface becomes Wifi (any SSID except those above), unconditionally bring up the VPN connection on the next network attempt.
- Else if the primary network interface becomes Cellular, leave any existing VPN connection up, but do not reconnect on demand.
- Else, unconditionally bring up the VPN connection on the next network attempt.
- Else, leave any existing VPN connection up, but do not reconnect on demand.

Note: The other match triggers, such as `DNSDomainMatch`, `DNSServerAddressMatch`, and per-connection domain inspection (`ActionParameters`), are not implemented. I reckon some kind of DSL will need to be built to support them; pull-requests are welcome.

Expand Down Expand Up @@ -91,15 +91,15 @@ For 'paranoid' security level, the following algorithm is executed upon network
- Else if wireless SSID matches any specified with `--untrusted-ssids`, unconditionally bring up the VPN connection on the next network attempt.
- Else if the primary network interface becomes Wifi (any SSID except those above), unconditionally bring up the VPN connection on the next network attempt.
- Else if the primary network interface becomes Cellular, unconditionally bring up the VPN connection on the next network attempt.
- Else, unconditionally bring up the VPN connection on the next network attempt.
- Else, leave any existing VPN connection up, but do not reconnect on demand.

For 'medium' security level, the following algorithm is executed upon network changes, in order:

- If wireless SSID matches any specified with `--trusted-ssids`, tear down the VPN connection and do not reconnect on demand.
- Else if wireless SSID matches any specified with `--untrusted-ssids`, unconditionally bring up the VPN connection on the next network attempt.
- Else if the primary network interface becomes Wifi (any SSID except those above), leave any existing VPN connection up, but do not reconnect on demand.
- Else if the primary network interface becomes Cellular, leave any existing VPN connection up, but do not reconnect on demand.
- Else, unconditionally bring up the VPN connection on the next network attempt.
- Else, leave any existing VPN connection up, but do not reconnect on demand.

### URL Probe

Expand Down Expand Up @@ -359,6 +359,9 @@ Output similar to above:
## TODO

- Config file to specify global options, such as `--cafile`, `--tafile`, `--host`, `--[un]trusted-ssids`.

See commit `#d9c015618` for feature.

- Batch-operation mode, with CSV-file as input, and a CSV UUID-index file to track generated profiles as output.

The same UUID should be used for profile updates, so that iOS knows which profile to replace, especially in MDM environments.
Expand Down
7 changes: 0 additions & 7 deletions features/gen_basic.feature
Original file line number Diff line number Diff line change
Expand Up @@ -143,13 +143,6 @@ Feature: Basic Generate Functionality
"""
<key>URLStringProbe</key>
"""
And the output should not match:
"""
<dict>
\s*<key>Action</key>
\s*<string>Ignore</string>
\s*</dict>
"""

Scenario: The [un]trusted-ssids flags are set.
When I run `ovpnmcgen.rb g --host aruba.cucumber.org --cafile ca.crt --p12file p12file.p12 --trusted-ssids trusted1,trusted2 --untrusted-ssids evil3,evil4 cucumber aruba`
Expand Down
2 changes: 1 addition & 1 deletion lib/ovpnmcgen.rb
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ def generate(inputs = {})
end
}
vodDefault = { # Default catch-all
'Action' => 'Connect'
'Action' => 'Ignore'
}

# Insert URLStringProbe conditions when enabled with --url-probe
Expand Down
2 changes: 1 addition & 1 deletion lib/ovpnmcgen/version.rb
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
module Ovpnmcgen
VERSION = "0.4.1"
VERSION = "0.4.2"
SUMMARY = "An OpenVPN iOS Configuration Profile (.mobileconfig) Utility"
end
1 change: 1 addition & 0 deletions ovpnmcgen.rb.gemspec
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ require 'ovpnmcgen/version'
Gem::Specification.new do |spec|
spec.name = "ovpnmcgen.rb"
spec.version = Ovpnmcgen::VERSION
spec.version = "#{spec.version}-pre-#{ENV['TRAVIS_BUILD_NUMBER']}" if ENV['TRAVIS']
spec.authors = ["Ronald Ip"]
spec.email = ["myself@iphoting.com"]
spec.summary = Ovpnmcgen::SUMMARY
Expand Down

0 comments on commit 33ce057

Please sign in to comment.