rack-auth-ip 0.0.1 → 0.0.2
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.
- data/Rakefile +2 -2
- data/doc/output/coverage/-Library-Ruby-Gems-gems-diff-lcs-1_1_2-lib-diff-lcs-block_rb.html +1 -1
- data/doc/output/coverage/-Library-Ruby-Gems-gems-diff-lcs-1_1_2-lib-diff-lcs-callbacks_rb.html +1 -1
- data/doc/output/coverage/-Library-Ruby-Gems-gems-diff-lcs-1_1_2-lib-diff-lcs-change_rb.html +1 -1
- data/doc/output/coverage/-Library-Ruby-Gems-gems-diff-lcs-1_1_2-lib-diff-lcs-hunk_rb.html +1 -1
- data/doc/output/coverage/-Library-Ruby-Gems-gems-diff-lcs-1_1_2-lib-diff-lcs_rb.html +1 -1
- data/doc/output/coverage/-Library-Ruby-Gems-gems-rcov-0_8_1_2_0-lib-rcov_rb.html +989 -989
- data/doc/output/coverage/-System-Library-Frameworks-Ruby_framework-Versions-1_8-usr-lib-ruby-1_8-drb-drb_rb.html +1764 -1764
- data/doc/output/coverage/-System-Library-Frameworks-Ruby_framework-Versions-1_8-usr-lib-ruby-1_8-drb-eq_rb.html +17 -17
- data/doc/output/coverage/-System-Library-Frameworks-Ruby_framework-Versions-1_8-usr-lib-ruby-1_8-drb-invokemethod_rb.html +37 -37
- data/doc/output/coverage/-System-Library-Frameworks-Ruby_framework-Versions-1_8-usr-lib-ruby-1_8-forwardable_rb.html +219 -219
- data/doc/output/coverage/-System-Library-Frameworks-Ruby_framework-Versions-1_8-usr-lib-ruby-1_8-ipaddr_rb.html +530 -530
- data/doc/output/coverage/-System-Library-Frameworks-Ruby_framework-Versions-1_8-usr-lib-ruby-1_8-pp_rb.html +648 -648
- data/doc/output/coverage/-System-Library-Frameworks-Ruby_framework-Versions-1_8-usr-lib-ruby-1_8-prettyprint_rb.html +897 -897
- data/doc/output/coverage/-System-Library-Frameworks-Ruby_framework-Versions-1_8-usr-lib-ruby-1_8-timeout_rb.html +106 -106
- data/doc/output/coverage/index.html +11 -65
- data/doc/output/coverage/lib-rack-auth-ip_rb.html +51 -53
- data/lib/rack/auth/ip.rb +1 -1
- metadata +2 -4
- data/doc/output/coverage/-Library-Ruby-Gems-gems-rack-0_3_0-lib-rack-auth-abstract-handler_rb.html +0 -638
- data/doc/output/coverage/-Library-Ruby-Gems-gems-rack-0_3_0-lib-rack-auth-abstract-request_rb.html +0 -647
@@ -553,7 +553,7 @@ span.run100 {
|
|
553
553
|
</style>
|
554
554
|
</head>
|
555
555
|
<body><h3>C0 code coverage information</h3>
|
556
|
-
<p>Generated on Sat May 24
|
556
|
+
<p>Generated on Sat May 24 15:19:19 +0900 2008 with <a href='http://eigenclass.org/hiki/rcov'>rcov 0.8.1.2</a>
|
557
557
|
</p>
|
558
558
|
<hr/>
|
559
559
|
<pre><span class='marked0'>Code reported as executed by Ruby looks like this...
|
@@ -598,111 +598,111 @@ span.run100 {
|
|
598
598
|
</tr>
|
599
599
|
</tbody>
|
600
600
|
</table>
|
601
|
-
<pre><span class="
|
602
|
-
</span><span class="
|
603
|
-
</span><span class="
|
604
|
-
</span><span class="
|
605
|
-
</span><span class="
|
606
|
-
</span><span class="
|
607
|
-
</span><span class="
|
608
|
-
</span><span class="
|
609
|
-
</span><span class="
|
610
|
-
</span><span class="
|
611
|
-
</span><span class="
|
612
|
-
</span><span class="
|
613
|
-
</span><span class="
|
614
|
-
</span><span class="
|
615
|
-
</span><span class="
|
616
|
-
</span><span class="
|
617
|
-
</span><span class="
|
618
|
-
</span><span class="
|
619
|
-
</span><span class="
|
620
|
-
</span><span class="
|
621
|
-
</span><span class="
|
622
|
-
</span><span class="
|
623
|
-
</span><span class="
|
624
|
-
</span><span class="
|
625
|
-
</span><span class="
|
626
|
-
</span><span class="
|
627
|
-
</span><span class="
|
628
|
-
</span><span class="
|
629
|
-
</span><span class="
|
630
|
-
</span><span class="
|
631
|
-
</span><span class="
|
632
|
-
</span><span class="
|
633
|
-
</span><span class="
|
634
|
-
</span><span class="
|
635
|
-
</span><span class="
|
636
|
-
</span><span class="
|
637
|
-
</span><span class="
|
638
|
-
</span><span class="
|
639
|
-
</span><span class="
|
640
|
-
</span><span class="
|
641
|
-
</span><span class="
|
642
|
-
</span><span class="
|
643
|
-
</span><span class="
|
644
|
-
</span><span class="
|
645
|
-
</span><span class="
|
646
|
-
</span><span class="
|
647
|
-
</span><span class="
|
648
|
-
</span><span class="
|
649
|
-
</span><span class="
|
650
|
-
</span><span class="
|
651
|
-
</span><span class="
|
652
|
-
</span><span class="
|
653
|
-
</span><span class="
|
654
|
-
</span><span class="
|
655
|
-
</span><span class="
|
656
|
-
</span><span class="
|
657
|
-
</span><span class="
|
658
|
-
</span><span class="
|
659
|
-
</span><span class="
|
660
|
-
</span><span class="
|
661
|
-
</span><span class="
|
662
|
-
</span><span class="
|
663
|
-
</span><span class="
|
664
|
-
</span><span class="
|
665
|
-
</span><span class="
|
666
|
-
</span><span class="
|
667
|
-
</span><span class="
|
668
|
-
</span><span class="
|
669
|
-
</span><span class="
|
670
|
-
</span><span class="
|
671
|
-
</span><span class="
|
672
|
-
</span><span class="
|
673
|
-
</span><span class="
|
674
|
-
</span><span class="
|
675
|
-
</span><span class="
|
676
|
-
</span><span class="
|
677
|
-
</span><span class="
|
678
|
-
</span><span class="
|
679
|
-
</span><span class="
|
680
|
-
</span><span class="
|
681
|
-
</span><span class="
|
682
|
-
</span><span class="
|
683
|
-
</span><span class="
|
684
|
-
</span><span class="
|
685
|
-
</span><span class="
|
686
|
-
</span><span class="
|
687
|
-
</span><span class="
|
688
|
-
</span><span class="
|
689
|
-
</span><span class="
|
690
|
-
</span><span class="
|
691
|
-
</span><span class="
|
692
|
-
</span><span class="
|
693
|
-
</span><span class="
|
694
|
-
</span><span class="
|
695
|
-
</span><span class="
|
696
|
-
</span><span class="
|
697
|
-
</span><span class="
|
698
|
-
</span><span class="
|
699
|
-
</span><span class="
|
700
|
-
</span><span class="
|
701
|
-
</span><span class="
|
702
|
-
</span><span class="
|
703
|
-
</span><span class="
|
704
|
-
</span><span class="
|
705
|
-
</span><span class="
|
601
|
+
<pre><span class="inferred0"><a name="line1"></a> 1 #--
|
602
|
+
</span><span class="inferred1"><a name="line2"></a> 2 # = timeout.rb
|
603
|
+
</span><span class="inferred0"><a name="line3"></a> 3 #
|
604
|
+
</span><span class="inferred1"><a name="line4"></a> 4 # execution timeout
|
605
|
+
</span><span class="inferred0"><a name="line5"></a> 5 #
|
606
|
+
</span><span class="inferred1"><a name="line6"></a> 6 # = Copyright
|
607
|
+
</span><span class="inferred0"><a name="line7"></a> 7 #
|
608
|
+
</span><span class="inferred1"><a name="line8"></a> 8 # Copyright:: (C) 2000 Network Applied Communication Laboratory, Inc.
|
609
|
+
</span><span class="inferred0"><a name="line9"></a> 9 # Copyright:: (C) 2000 Information-technology Promotion Agency, Japan
|
610
|
+
</span><span class="inferred1"><a name="line10"></a> 10 #
|
611
|
+
</span><span class="inferred0"><a name="line11"></a> 11 #++
|
612
|
+
</span><span class="inferred1"><a name="line12"></a> 12 #
|
613
|
+
</span><span class="inferred0"><a name="line13"></a> 13 # = Description
|
614
|
+
</span><span class="inferred1"><a name="line14"></a> 14 #
|
615
|
+
</span><span class="inferred0"><a name="line15"></a> 15 # A way of performing a potentially long-running operation in a thread, and
|
616
|
+
</span><span class="inferred1"><a name="line16"></a> 16 # terminating it's execution if it hasn't finished within fixed amount of
|
617
|
+
</span><span class="inferred0"><a name="line17"></a> 17 # time.
|
618
|
+
</span><span class="inferred1"><a name="line18"></a> 18 #
|
619
|
+
</span><span class="inferred0"><a name="line19"></a> 19 # Previous versions of timeout didn't use a module for namespace. This version
|
620
|
+
</span><span class="inferred1"><a name="line20"></a> 20 # provides both Timeout.timeout, and a backwards-compatible #timeout.
|
621
|
+
</span><span class="inferred0"><a name="line21"></a> 21 #
|
622
|
+
</span><span class="inferred1"><a name="line22"></a> 22 # = Synopsis
|
623
|
+
</span><span class="inferred0"><a name="line23"></a> 23 #
|
624
|
+
</span><span class="inferred1"><a name="line24"></a> 24 # require 'timeout'
|
625
|
+
</span><span class="inferred0"><a name="line25"></a> 25 # status = Timeout::timeout(5) {
|
626
|
+
</span><span class="inferred1"><a name="line26"></a> 26 # # Something that should be interrupted if it takes too much time...
|
627
|
+
</span><span class="inferred0"><a name="line27"></a> 27 # }
|
628
|
+
</span><span class="inferred1"><a name="line28"></a> 28 #
|
629
|
+
</span><span class="inferred0"><a name="line29"></a> 29
|
630
|
+
</span><span class="marked1"><a name="line30"></a> 30 module Timeout
|
631
|
+
</span><span class="inferred0"><a name="line31"></a> 31
|
632
|
+
</span><span class="inferred1"><a name="line32"></a> 32 ##
|
633
|
+
</span><span class="inferred0"><a name="line33"></a> 33 # Raised by Timeout#timeout when the block times out.
|
634
|
+
</span><span class="inferred1"><a name="line34"></a> 34
|
635
|
+
</span><span class="marked0"><a name="line35"></a> 35 class Error<Interrupt
|
636
|
+
</span><span class="inferred1"><a name="line36"></a> 36 end
|
637
|
+
</span><span class="inferred0"><a name="line37"></a> 37
|
638
|
+
</span><span class="inferred1"><a name="line38"></a> 38 ##
|
639
|
+
</span><span class="inferred0"><a name="line39"></a> 39 # Executes the method's block. If the block execution terminates before +sec+
|
640
|
+
</span><span class="inferred1"><a name="line40"></a> 40 # seconds has passed, it returns true. If not, it terminates the execution
|
641
|
+
</span><span class="inferred0"><a name="line41"></a> 41 # and raises +exception+ (which defaults to Timeout::Error).
|
642
|
+
</span><span class="inferred1"><a name="line42"></a> 42 #
|
643
|
+
</span><span class="inferred0"><a name="line43"></a> 43 # Note that this is both a method of module Timeout, so you can 'include
|
644
|
+
</span><span class="inferred1"><a name="line44"></a> 44 # Timeout' into your classes so they have a #timeout method, as well as a
|
645
|
+
</span><span class="inferred0"><a name="line45"></a> 45 # module method, so you can call it directly as Timeout.timeout().
|
646
|
+
</span><span class="inferred1"><a name="line46"></a> 46
|
647
|
+
</span><span class="marked0"><a name="line47"></a> 47 def timeout(sec, exception=Error)
|
648
|
+
</span><span class="marked1"><a name="line48"></a> 48 return yield if sec == nil or sec.zero?
|
649
|
+
</span><span class="uncovered0"><a name="line49"></a> 49 raise ThreadError, "timeout within critical session" if Thread.critical
|
650
|
+
</span><span class="uncovered1"><a name="line50"></a> 50 begin
|
651
|
+
</span><span class="uncovered0"><a name="line51"></a> 51 x = Thread.current
|
652
|
+
</span><span class="uncovered1"><a name="line52"></a> 52 y = Thread.start {
|
653
|
+
</span><span class="uncovered0"><a name="line53"></a> 53 sleep sec
|
654
|
+
</span><span class="uncovered1"><a name="line54"></a> 54 x.raise exception, "execution expired" if x.alive?
|
655
|
+
</span><span class="uncovered0"><a name="line55"></a> 55 }
|
656
|
+
</span><span class="uncovered1"><a name="line56"></a> 56 yield sec
|
657
|
+
</span><span class="uncovered0"><a name="line57"></a> 57 # return true
|
658
|
+
</span><span class="uncovered1"><a name="line58"></a> 58 ensure
|
659
|
+
</span><span class="uncovered0"><a name="line59"></a> 59 y.kill if y and y.alive?
|
660
|
+
</span><span class="uncovered1"><a name="line60"></a> 60 end
|
661
|
+
</span><span class="uncovered0"><a name="line61"></a> 61 end
|
662
|
+
</span><span class="inferred1"><a name="line62"></a> 62
|
663
|
+
</span><span class="marked0"><a name="line63"></a> 63 module_function :timeout
|
664
|
+
</span><span class="inferred1"><a name="line64"></a> 64
|
665
|
+
</span><span class="inferred0"><a name="line65"></a> 65 end
|
666
|
+
</span><span class="inferred1"><a name="line66"></a> 66
|
667
|
+
</span><span class="inferred0"><a name="line67"></a> 67 ##
|
668
|
+
</span><span class="inferred1"><a name="line68"></a> 68 # Identical to:
|
669
|
+
</span><span class="inferred0"><a name="line69"></a> 69 #
|
670
|
+
</span><span class="inferred1"><a name="line70"></a> 70 # Timeout::timeout(n, e, &block).
|
671
|
+
</span><span class="inferred0"><a name="line71"></a> 71 #
|
672
|
+
</span><span class="inferred1"><a name="line72"></a> 72 # Defined for backwards compatibility with earlier versions of timeout.rb, see
|
673
|
+
</span><span class="inferred0"><a name="line73"></a> 73 # Timeout#timeout.
|
674
|
+
</span><span class="inferred1"><a name="line74"></a> 74
|
675
|
+
</span><span class="marked0"><a name="line75"></a> 75 def timeout(n, e=Timeout::Error, &block) # :nodoc:
|
676
|
+
</span><span class="uncovered1"><a name="line76"></a> 76 Timeout::timeout(n, e, &block)
|
677
|
+
</span><span class="uncovered0"><a name="line77"></a> 77 end
|
678
|
+
</span><span class="inferred1"><a name="line78"></a> 78
|
679
|
+
</span><span class="inferred0"><a name="line79"></a> 79 ##
|
680
|
+
</span><span class="inferred1"><a name="line80"></a> 80 # Another name for Timeout::Error, defined for backwards compatibility with
|
681
|
+
</span><span class="inferred0"><a name="line81"></a> 81 # earlier versions of timeout.rb.
|
682
|
+
</span><span class="inferred1"><a name="line82"></a> 82
|
683
|
+
</span><span class="marked0"><a name="line83"></a> 83 TimeoutError = Timeout::Error # :nodoc:
|
684
|
+
</span><span class="inferred1"><a name="line84"></a> 84
|
685
|
+
</span><span class="marked0"><a name="line85"></a> 85 if __FILE__ == $0
|
686
|
+
</span><span class="uncovered1"><a name="line86"></a> 86 p timeout(5) {
|
687
|
+
</span><span class="uncovered0"><a name="line87"></a> 87 45
|
688
|
+
</span><span class="uncovered1"><a name="line88"></a> 88 }
|
689
|
+
</span><span class="uncovered0"><a name="line89"></a> 89 p timeout(5, TimeoutError) {
|
690
|
+
</span><span class="uncovered1"><a name="line90"></a> 90 45
|
691
|
+
</span><span class="uncovered0"><a name="line91"></a> 91 }
|
692
|
+
</span><span class="uncovered1"><a name="line92"></a> 92 p timeout(nil) {
|
693
|
+
</span><span class="uncovered0"><a name="line93"></a> 93 54
|
694
|
+
</span><span class="uncovered1"><a name="line94"></a> 94 }
|
695
|
+
</span><span class="uncovered0"><a name="line95"></a> 95 p timeout(0) {
|
696
|
+
</span><span class="uncovered1"><a name="line96"></a> 96 54
|
697
|
+
</span><span class="uncovered0"><a name="line97"></a> 97 }
|
698
|
+
</span><span class="uncovered1"><a name="line98"></a> 98 p timeout(5) {
|
699
|
+
</span><span class="uncovered0"><a name="line99"></a> 99 loop {
|
700
|
+
</span><span class="uncovered1"><a name="line100"></a>100 p 10
|
701
|
+
</span><span class="uncovered0"><a name="line101"></a>101 sleep 1
|
702
|
+
</span><span class="uncovered1"><a name="line102"></a>102 }
|
703
|
+
</span><span class="uncovered0"><a name="line103"></a>103 }
|
704
|
+
</span><span class="uncovered1"><a name="line104"></a>104 end
|
705
|
+
</span><span class="inferred0"><a name="line105"></a>105
|
706
706
|
</span></pre><hr/>
|
707
707
|
<p>Generated using the <a href='http://eigenclass.org/hiki.rb?rcov'>rcov code coverage analysis tool for Ruby</a>
|
708
708
|
version 0.8.1.2.</p>
|
@@ -148,7 +148,7 @@ table.report tr.dark {
|
|
148
148
|
</script>
|
149
149
|
</head>
|
150
150
|
<body><h3>C0 code coverage information</h3>
|
151
|
-
<p>Generated on Sat May 24
|
151
|
+
<p>Generated on Sat May 24 15:19:15 +0900 2008 with <a href='http://eigenclass.org/hiki/rcov'>rcov 0.8.1.2</a>
|
152
152
|
</p>
|
153
153
|
<hr/>
|
154
154
|
<table class='report'><thead><tr><td class='heading'>Name</td>
|
@@ -159,11 +159,11 @@ table.report tr.dark {
|
|
159
159
|
</tr>
|
160
160
|
</thead>
|
161
161
|
<tbody><tr class='light'><td>TOTAL</td>
|
162
|
-
<td class='lines_total'><tt>
|
162
|
+
<td class='lines_total'><tt>7146</tt>
|
163
163
|
</td>
|
164
|
-
<td class='lines_code'><tt>
|
164
|
+
<td class='lines_code'><tt>4131</tt>
|
165
165
|
</td>
|
166
|
-
<td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>
|
166
|
+
<td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>42.9%</tt>
|
167
167
|
</td>
|
168
168
|
<td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='43'/>
|
169
169
|
<td class='uncovered' width='57'/>
|
@@ -173,7 +173,7 @@ table.report tr.dark {
|
|
173
173
|
</tr>
|
174
174
|
</table>
|
175
175
|
</td>
|
176
|
-
<td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_code'>
|
176
|
+
<td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_code'>15.9%</tt>
|
177
177
|
</td>
|
178
178
|
<td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='16'/>
|
179
179
|
<td class='uncovered' width='84'/>
|
@@ -319,60 +319,6 @@ table.report tr.dark {
|
|
319
319
|
</table>
|
320
320
|
</td>
|
321
321
|
</tr>
|
322
|
-
<tr class='light'><td><a href='-Library-Ruby-Gems-gems-rack-0_3_0-lib-rack-auth-abstract-handler_rb.html'>/Library/Ruby/Gems/gems/rack-0.3.0/lib/rack/auth/abstract/handler.rb</a>
|
323
|
-
</td>
|
324
|
-
<td class='lines_total'><tt>28</tt>
|
325
|
-
</td>
|
326
|
-
<td class='lines_code'><tt>17</tt>
|
327
|
-
</td>
|
328
|
-
<td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>64.3%</tt>
|
329
|
-
</td>
|
330
|
-
<td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='64'/>
|
331
|
-
<td class='uncovered' width='36'/>
|
332
|
-
</tr>
|
333
|
-
</table>
|
334
|
-
</td>
|
335
|
-
</tr>
|
336
|
-
</table>
|
337
|
-
</td>
|
338
|
-
<td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_code'>47.1%</tt>
|
339
|
-
</td>
|
340
|
-
<td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='47'/>
|
341
|
-
<td class='uncovered' width='53'/>
|
342
|
-
</tr>
|
343
|
-
</table>
|
344
|
-
</td>
|
345
|
-
</tr>
|
346
|
-
</table>
|
347
|
-
</td>
|
348
|
-
</tr>
|
349
|
-
<tr class='dark'><td><a href='-Library-Ruby-Gems-gems-rack-0_3_0-lib-rack-auth-abstract-request_rb.html'>/Library/Ruby/Gems/gems/rack-0.3.0/lib/rack/auth/abstract/request.rb</a>
|
350
|
-
</td>
|
351
|
-
<td class='lines_total'><tt>37</tt>
|
352
|
-
</td>
|
353
|
-
<td class='lines_code'><tt>26</tt>
|
354
|
-
</td>
|
355
|
-
<td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>54.1%</tt>
|
356
|
-
</td>
|
357
|
-
<td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='54'/>
|
358
|
-
<td class='uncovered' width='46'/>
|
359
|
-
</tr>
|
360
|
-
</table>
|
361
|
-
</td>
|
362
|
-
</tr>
|
363
|
-
</table>
|
364
|
-
</td>
|
365
|
-
<td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_code'>42.3%</tt>
|
366
|
-
</td>
|
367
|
-
<td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='42'/>
|
368
|
-
<td class='uncovered' width='58'/>
|
369
|
-
</tr>
|
370
|
-
</table>
|
371
|
-
</td>
|
372
|
-
</tr>
|
373
|
-
</table>
|
374
|
-
</td>
|
375
|
-
</tr>
|
376
322
|
<tr class='light'><td><a href='-Library-Ruby-Gems-gems-rcov-0_8_1_2_0-lib-rcov_rb.html'>/Library/Ruby/Gems/gems/rcov-0.8.1.2.0/lib/rcov.rb</a>
|
377
323
|
</td>
|
378
324
|
<td class='lines_total'><tt>988</tt>
|
@@ -618,11 +564,11 @@ table.report tr.dark {
|
|
618
564
|
</tr>
|
619
565
|
<tr class='dark'><td><a href='lib-rack-auth-ip_rb.html'>lib/rack/auth/ip.rb</a>
|
620
566
|
</td>
|
621
|
-
<td class='lines_total'><tt>
|
567
|
+
<td class='lines_total'><tt>44</tt>
|
622
568
|
</td>
|
623
|
-
<td class='lines_code'><tt>
|
569
|
+
<td class='lines_code'><tt>38</tt>
|
624
570
|
</td>
|
625
|
-
<td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>93.
|
571
|
+
<td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>93.2%</tt>
|
626
572
|
</td>
|
627
573
|
<td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='93'/>
|
628
574
|
<td class='uncovered' width='7'/>
|
@@ -632,10 +578,10 @@ table.report tr.dark {
|
|
632
578
|
</tr>
|
633
579
|
</table>
|
634
580
|
</td>
|
635
|
-
<td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_code'>92.
|
581
|
+
<td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_code'>92.1%</tt>
|
636
582
|
</td>
|
637
|
-
<td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='
|
638
|
-
<td class='uncovered' width='
|
583
|
+
<td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='92'/>
|
584
|
+
<td class='uncovered' width='8'/>
|
639
585
|
</tr>
|
640
586
|
</table>
|
641
587
|
</td>
|
@@ -553,7 +553,7 @@ span.run100 {
|
|
553
553
|
</style>
|
554
554
|
</head>
|
555
555
|
<body><h3>C0 code coverage information</h3>
|
556
|
-
<p>Generated on Sat May 24
|
556
|
+
<p>Generated on Sat May 24 15:19:19 +0900 2008 with <a href='http://eigenclass.org/hiki/rcov'>rcov 0.8.1.2</a>
|
557
557
|
</p>
|
558
558
|
<hr/>
|
559
559
|
<pre><span class='marked0'>Code reported as executed by Ruby looks like this...
|
@@ -571,11 +571,11 @@ span.run100 {
|
|
571
571
|
</thead>
|
572
572
|
<tbody><tr class='light'><td><a href='lib-rack-auth-ip_rb.html'>lib/rack/auth/ip.rb</a>
|
573
573
|
</td>
|
574
|
-
<td class='lines_total'><tt>
|
574
|
+
<td class='lines_total'><tt>44</tt>
|
575
575
|
</td>
|
576
|
-
<td class='lines_code'><tt>
|
576
|
+
<td class='lines_code'><tt>38</tt>
|
577
577
|
</td>
|
578
|
-
<td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>93.
|
578
|
+
<td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>93.2%</tt>
|
579
579
|
</td>
|
580
580
|
<td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='93'/>
|
581
581
|
<td class='uncovered' width='7'/>
|
@@ -585,10 +585,10 @@ span.run100 {
|
|
585
585
|
</tr>
|
586
586
|
</table>
|
587
587
|
</td>
|
588
|
-
<td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_code'>92.
|
588
|
+
<td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_code'>92.1%</tt>
|
589
589
|
</td>
|
590
|
-
<td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='
|
591
|
-
<td class='uncovered' width='
|
590
|
+
<td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='92'/>
|
591
|
+
<td class='uncovered' width='8'/>
|
592
592
|
</tr>
|
593
593
|
</table>
|
594
594
|
</td>
|
@@ -598,52 +598,50 @@ span.run100 {
|
|
598
598
|
</tr>
|
599
599
|
</tbody>
|
600
600
|
</table>
|
601
|
-
<pre><span class="
|
602
|
-
</span><span class="
|
603
|
-
</span><span class="
|
604
|
-
</span><span class="
|
605
|
-
</span><span class="
|
606
|
-
</span><span class="
|
607
|
-
</span><span class="
|
608
|
-
</span><span class="
|
609
|
-
</span><span class="
|
610
|
-
</span><span class="
|
611
|
-
</span><span class="
|
612
|
-
</span><span class="
|
613
|
-
</span><span class="
|
614
|
-
</span><span class="
|
615
|
-
</span><span class="
|
616
|
-
</span><span class="
|
617
|
-
</span><span class="
|
618
|
-
</span><span class="
|
619
|
-
</span><span class="
|
620
|
-
</span><span class="
|
621
|
-
</span><span class="
|
622
|
-
</span><span class="
|
623
|
-
</span><span class="
|
624
|
-
</span><span class="
|
625
|
-
</span><span class="
|
626
|
-
</span><span class="
|
627
|
-
</span><span class="
|
628
|
-
</span><span class="
|
629
|
-
</span><span class="
|
630
|
-
</span><span class="
|
631
|
-
</span><span class="
|
632
|
-
</span><span class="
|
633
|
-
</span><span class="
|
634
|
-
</span><span class="
|
635
|
-
</span><span class="
|
636
|
-
</span><span class="
|
637
|
-
</span><span class="
|
638
|
-
</span><span class="
|
639
|
-
</span><span class="
|
640
|
-
</span><span class="
|
641
|
-
</span><span class="
|
642
|
-
</span><span class="
|
643
|
-
</span><span class="
|
644
|
-
</span><span class="
|
645
|
-
</span><span class="inferred0"><a name="line45"></a>45 end
|
646
|
-
</span><span class="inferred1"><a name="line46"></a>46 end
|
601
|
+
<pre><span class="marked1"><a name="line1"></a> 1 require 'ipaddr'
|
602
|
+
</span><span class="marked0"><a name="line2"></a> 2 module Rack
|
603
|
+
</span><span class="marked1"><a name="line3"></a> 3 module Auth
|
604
|
+
</span><span class="marked0"><a name="line4"></a> 4 class IP
|
605
|
+
</span><span class="marked1"><a name="line5"></a> 5 module Util
|
606
|
+
</span><span class="inferred0"><a name="line6"></a> 6 # consider using reverse proxy
|
607
|
+
</span><span class="marked1"><a name="line7"></a> 7 def detect_ip env
|
608
|
+
</span><span class="marked0"><a name="line8"></a> 8 if env['HTTP_X_FORWARDED_FOR']
|
609
|
+
</span><span class="marked1"><a name="line9"></a> 9 env['HTTP_X_FORWARDED_FOR'].split(',').pop
|
610
|
+
</span><span class="inferred0"><a name="line10"></a>10 else
|
611
|
+
</span><span class="marked1"><a name="line11"></a>11 env["REMOTE_ADDR"]
|
612
|
+
</span><span class="inferred0"><a name="line12"></a>12 end
|
613
|
+
</span><span class="marked1"><a name="line13"></a>13 end
|
614
|
+
</span><span class="inferred0"><a name="line14"></a>14
|
615
|
+
</span><span class="marked1"><a name="line15"></a>15 module_function :detect_ip
|
616
|
+
</span><span class="inferred0"><a name="line16"></a>16 end
|
617
|
+
</span><span class="marked1"><a name="line17"></a>17 include Util
|
618
|
+
</span><span class="inferred0"><a name="line18"></a>18
|
619
|
+
</span><span class="marked1"><a name="line19"></a>19 def initialize app, ip_list=nil
|
620
|
+
</span><span class="marked0"><a name="line20"></a>20 @app = app
|
621
|
+
</span><span class="marked1"><a name="line21"></a>21 @ip_list = ip_list
|
622
|
+
</span><span class="inferred0"><a name="line22"></a>22
|
623
|
+
</span><span class="marked1"><a name="line23"></a>23 if @ip_list
|
624
|
+
</span><span class="marked0"><a name="line24"></a>24 @ip_list = @ip_list.map {|ip| IPAddr.new(ip) }
|
625
|
+
</span><span class="inferred1"><a name="line25"></a>25 end
|
626
|
+
</span><span class="inferred0"><a name="line26"></a>26 end
|
627
|
+
</span><span class="inferred1"><a name="line27"></a>27
|
628
|
+
</span><span class="marked0"><a name="line28"></a>28 def call env
|
629
|
+
</span><span class="marked1"><a name="line29"></a>29 req_ip = IPAddr.new(detect_ip(env))
|
630
|
+
</span><span class="inferred0"><a name="line30"></a>30
|
631
|
+
</span><span class="marked1"><a name="line31"></a>31 if @ip_list
|
632
|
+
</span><span class="marked0"><a name="line32"></a>32 if @ip_list.find {|ip| ip.include? req_ip }
|
633
|
+
</span><span class="marked1"><a name="line33"></a>33 return @app.call(env)
|
634
|
+
</span><span class="inferred0"><a name="line34"></a>34 end
|
635
|
+
</span><span class="inferred1"><a name="line35"></a>35 else
|
636
|
+
</span><span class="marked0"><a name="line36"></a>36 if yield(req_ip)
|
637
|
+
</span><span class="uncovered1"><a name="line37"></a>37 return @app.call(env)
|
638
|
+
</span><span class="uncovered0"><a name="line38"></a>38 end
|
639
|
+
</span><span class="uncovered1"><a name="line39"></a>39 end
|
640
|
+
</span><span class="marked0"><a name="line40"></a>40 return [403, {'Content-Type' => 'text/plain' }, 'Forbidden' ]
|
641
|
+
</span><span class="inferred1"><a name="line41"></a>41 end
|
642
|
+
</span><span class="inferred0"><a name="line42"></a>42 end
|
643
|
+
</span><span class="inferred1"><a name="line43"></a>43 end
|
644
|
+
</span><span class="inferred0"><a name="line44"></a>44 end
|
647
645
|
</span></pre><hr/>
|
648
646
|
<p>Generated using the <a href='http://eigenclass.org/hiki.rb?rcov'>rcov code coverage analysis tool for Ruby</a>
|
649
647
|
version 0.8.1.2.</p>
|
data/lib/rack/auth/ip.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rack-auth-ip
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Keiji, Yoshimi
|
@@ -47,8 +47,6 @@ files:
|
|
47
47
|
- doc/output/coverage/-Library-Ruby-Gems-gems-diff-lcs-1_1_2-lib-diff-lcs-change_rb.html
|
48
48
|
- doc/output/coverage/-Library-Ruby-Gems-gems-diff-lcs-1_1_2-lib-diff-lcs-hunk_rb.html
|
49
49
|
- doc/output/coverage/-Library-Ruby-Gems-gems-diff-lcs-1_1_2-lib-diff-lcs_rb.html
|
50
|
-
- doc/output/coverage/-Library-Ruby-Gems-gems-rack-0_3_0-lib-rack-auth-abstract-handler_rb.html
|
51
|
-
- doc/output/coverage/-Library-Ruby-Gems-gems-rack-0_3_0-lib-rack-auth-abstract-request_rb.html
|
52
50
|
- doc/output/coverage/-Library-Ruby-Gems-gems-rcov-0_8_1_2_0-lib-rcov_rb.html
|
53
51
|
- doc/output/coverage/-System-Library-Frameworks-Ruby_framework-Versions-1_8-usr-lib-ruby-1_8-drb-drb_rb.html
|
54
52
|
- doc/output/coverage/-System-Library-Frameworks-Ruby_framework-Versions-1_8-usr-lib-ruby-1_8-drb-eq_rb.html
|
@@ -63,7 +61,7 @@ files:
|
|
63
61
|
- tasks/basic_config.rake
|
64
62
|
- tasks/basic_tasks.rake
|
65
63
|
has_rdoc: true
|
66
|
-
homepage: http://
|
64
|
+
homepage: http://github.com/walf443/rack-auth-ip/tree/master
|
67
65
|
post_install_message:
|
68
66
|
rdoc_options:
|
69
67
|
- --charset
|