hotspotlogin 0.1.1 → 0.1.1.1
Sign up to get free protection for your applications and to get access to all the features.
- data/README.rdoc +4 -4
- data/bin/hotspotlogin.rb +27 -18
- data/lib/hotspotlogin/config.rb +2 -2
- data/lib/hotspotlogin/constants.rb +1 -1
- metadata +11 -20
data/README.rdoc
CHANGED
@@ -22,11 +22,11 @@ On the command-line:
|
|
22
22
|
|
23
23
|
==== Options
|
24
24
|
|
25
|
-
--daemon daemonize
|
25
|
+
--[no-]daemon daemonize [by default, executes in foreground]
|
26
26
|
|
27
|
-
--log log file (ignored when no
|
27
|
+
--log log file (ignored when --no-daemon)
|
28
28
|
|
29
|
-
--pid pid file (ignored when no
|
29
|
+
--pid pid file (ignored when --no-daemon)
|
30
30
|
|
31
31
|
--port [default 4990]
|
32
32
|
|
@@ -50,7 +50,7 @@ See also chilli.conf(5) manual page.
|
|
50
50
|
|
51
51
|
(The MIT License)
|
52
52
|
|
53
|
-
Copyright (c) 2010 Guido De Rosa
|
53
|
+
Copyright (c) 2010 Guido De Rosa <job*guidoderosa.net>
|
54
54
|
|
55
55
|
Permission is hereby granted, free of charge, to any person obtaining
|
56
56
|
a copy of this software and associated documentation files (the
|
data/bin/hotspotlogin.rb
CHANGED
@@ -16,26 +16,35 @@ require File.expand_path(
|
|
16
16
|
File.dirname(file) + "/../lib/hotspotlogin"
|
17
17
|
)
|
18
18
|
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
19
|
+
# The $0 hack also would break the following code :-/
|
20
|
+
|
21
|
+
# RubyGems sucks 'cause it includes bin/ directories into the $LOAD_PATH
|
22
|
+
#
|
23
|
+
# So, this file may be actually used to just 'require' the
|
24
|
+
# hotspotlogin library (in this case $0 != __FILE__)
|
25
|
+
|
26
|
+
if $0 == __FILE__ # actually start hotspotlogin service
|
27
|
+
config = HotSpotLogin.config!
|
28
|
+
|
29
|
+
if config['daemon']
|
30
|
+
pid = fork do
|
31
|
+
if config['log']
|
32
|
+
STDOUT.reopen(config['log'], 'a')
|
33
|
+
STDERR.reopen(config['log'], 'a')
|
34
|
+
Signal.trap('USR1') do
|
35
|
+
STDOUT.flush
|
36
|
+
STDERR.flush
|
37
|
+
end
|
29
38
|
end
|
39
|
+
HotSpotLogin::App.run!
|
40
|
+
FileUtils.rm config['pid'] if config['pid'] and File.exists? config['pid']
|
30
41
|
end
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
File.open config['pid'], 'w' do |f|
|
36
|
-
f.write pid
|
42
|
+
if config['pid'] =~ /\S/
|
43
|
+
File.open config['pid'], 'w' do |f|
|
44
|
+
f.write pid
|
45
|
+
end
|
37
46
|
end
|
47
|
+
else # run in foreground
|
48
|
+
HotSpotLogin::App.run!
|
38
49
|
end
|
39
|
-
else
|
40
|
-
HotSpotLogin::App.run!
|
41
50
|
end
|
data/lib/hotspotlogin/config.rb
CHANGED
@@ -28,8 +28,8 @@ module HotSpotLogin
|
|
28
28
|
|
29
29
|
# Command line switches override configuration file.
|
30
30
|
|
31
|
-
opts.on('--daemon', 'become a daemon') do
|
32
|
-
@@config['daemon'] =
|
31
|
+
opts.on('--[no-]daemon', 'become a daemon') do |daemonize|
|
32
|
+
@@config['daemon'] = daemonize
|
33
33
|
end
|
34
34
|
|
35
35
|
opts.on('--log FILE', 'log file (overwrite existing)') do |filename|
|
metadata
CHANGED
@@ -1,12 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hotspotlogin
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
segments:
|
6
|
-
- 0
|
7
|
-
- 1
|
8
|
-
- 1
|
9
|
-
version: 0.1.1
|
4
|
+
version: 0.1.1.1
|
10
5
|
platform: ruby
|
11
6
|
authors:
|
12
7
|
- Guido De Rosa
|
@@ -14,25 +9,23 @@ autorequire:
|
|
14
9
|
bindir: bin
|
15
10
|
cert_chain: []
|
16
11
|
|
17
|
-
date: 2010-03-04 00:00:00 +
|
12
|
+
date: 2010-03-04 00:00:00 +01:00
|
18
13
|
default_executable:
|
19
14
|
dependencies:
|
20
15
|
- !ruby/object:Gem::Dependency
|
21
16
|
name: sinatra
|
22
|
-
|
23
|
-
|
17
|
+
type: :runtime
|
18
|
+
version_requirement:
|
19
|
+
version_requirements: !ruby/object:Gem::Requirement
|
24
20
|
requirements:
|
25
21
|
- - ">="
|
26
22
|
- !ruby/object:Gem::Version
|
27
|
-
segments:
|
28
|
-
- 0
|
29
23
|
version: "0"
|
30
|
-
|
31
|
-
version_requirements: *id001
|
24
|
+
version:
|
32
25
|
description: Traditionally, a PHP or Perl/CGI web page has been used to login unauthenticated users to a Network Access Controller like ChilliSpot; this hotspotlogin implementation is based on Ruby and Sinatra (the classy web framework).
|
33
26
|
email: guidoderosa@gmail.com
|
34
|
-
executables:
|
35
|
-
|
27
|
+
executables:
|
28
|
+
- hotspotlogin.rb
|
36
29
|
extensions: []
|
37
30
|
|
38
31
|
extra_rdoc_files:
|
@@ -64,20 +57,18 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
64
57
|
requirements:
|
65
58
|
- - ">="
|
66
59
|
- !ruby/object:Gem::Version
|
67
|
-
segments:
|
68
|
-
- 0
|
69
60
|
version: "0"
|
61
|
+
version:
|
70
62
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
71
63
|
requirements:
|
72
64
|
- - ">="
|
73
65
|
- !ruby/object:Gem::Version
|
74
|
-
segments:
|
75
|
-
- 0
|
76
66
|
version: "0"
|
67
|
+
version:
|
77
68
|
requirements: []
|
78
69
|
|
79
70
|
rubyforge_project:
|
80
|
-
rubygems_version: 1.3.
|
71
|
+
rubygems_version: 1.3.5
|
81
72
|
signing_key:
|
82
73
|
specification_version: 3
|
83
74
|
summary: Ruby/Sinatra implementation of the login page used with ChilliSpot and friends.
|