apache-authtkt 1.0.0 → 1.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.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/apache_auth_tkt.rb +18 -1
  3. metadata +6 -6
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 79c0570d80ebd51b02fedbaccad5d6dd4878a855
4
- data.tar.gz: ad6beba55080206d6e402e2f7bf419d399d4d5d4
3
+ metadata.gz: 353b7f8c49e48911c176329008f44137108593d4
4
+ data.tar.gz: 5f60be52c687c3ede560e08f9cbf64a0058b868f
5
5
  SHA512:
6
- metadata.gz: 59e4aadf2e1c0109cad3bf619943db49672ce70205f9889bd8a83641dcbf975a36a7826d0fc1a4b4ee663391d98f74c66da9eed7587764f91139befd8eaff354
7
- data.tar.gz: c157e47579aa31c6ba95df06bc0993964c14e1b337dd0f6cdf49df58bfd551e3d63beee4b9c8576d182e4a6e0bb066f30bc9942cda8f778ec76bf7b0f895c71d
6
+ metadata.gz: 4a8b51b9e10f34d31c109bd860a445e2d460f996c98eeedc0fe7ee4dc1a5775fa7fb2845e0c07d0943aa514e879e6df7b41fd0072c57152c4a43c23f4aa77567
7
+ data.tar.gz: a54a9b4a549e1ed10a4cf4f9eee36ea50a55c488798624b841a2bfc45bf29767e4b28d7c54fd93078d7ced37a9aa8897725ff8670fea9dad5b21668d792aeb1e
@@ -18,6 +18,7 @@
18
18
  # dependencies
19
19
  require 'rubygems'
20
20
  require 'base64'
21
+ require 'digest'
21
22
 
22
23
  class ApacheAuthTkt
23
24
 
@@ -27,6 +28,7 @@ class ApacheAuthTkt
27
28
  attr_accessor :conf_file
28
29
  attr_accessor :error
29
30
  attr_accessor :base64encode
31
+ attr_accessor :lifetime
30
32
 
31
33
  def initialize(args)
32
34
 
@@ -62,6 +64,12 @@ class ApacheAuthTkt
62
64
  @base64encode = true
63
65
  end
64
66
 
67
+ if (args.has_key? :lifetime)
68
+ @lifetime = args[:lifetime]
69
+ else
70
+ # 8 hours.
71
+ @lifetime = 28800
72
+ end
65
73
 
66
74
  end
67
75
 
@@ -153,7 +161,7 @@ class ApacheAuthTkt
153
161
  # test if base64 encoded before decoding
154
162
  if (@base64encode && tkt.length % 4 == 0 && tkt =~ /^[A-Za-z0-9+\/=]+\Z/)
155
163
  tkt = Base64.decode64(tkt)
156
- end
164
+ end
157
165
 
158
166
  # sanity checks
159
167
  if (tkt.length < 40)
@@ -185,4 +193,13 @@ class ApacheAuthTkt
185
193
  return parsed
186
194
  end
187
195
 
196
+ def expired?(tkt)
197
+ return false if @lifetime.nil?
198
+ parsed = self.parse_ticket(tkt)
199
+ if (!parsed)
200
+ return false
201
+ end
202
+ !(parsed[:ts] + @lifetime >= Time.now.to_i)
203
+ end
204
+
188
205
  end
metadata CHANGED
@@ -1,41 +1,41 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: apache-authtkt
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter Karman
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-03-04 00:00:00.000000000 Z
11
+ date: 2014-05-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
19
  version: '0'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rspec
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
33
  version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  description: Ruby client for mod_auth_tkt. See http://www.openfusion.com.au/labs/mod_auth_tkt/