apache-authtkt 1.0.0 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
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/