intranet-core 2.3.2 → 2.3.3
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.
- checksums.yaml +4 -4
- data/lib/intranet/core.rb +3 -2
- data/lib/intranet/core/version.rb +1 -1
- data/spec/intranet/core_spec.rb +25 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 76f13ef8a3ab5032152a1a6d5c4a94fca53f02a74492ae02fe3e0af354e06e2c
|
4
|
+
data.tar.gz: ee7c7404de4b6c417ff25f1d39d94eef2adc8a482e0a9b1ed5f7817f6b62a5e8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d5e60003e1e2071a6da97d46d54a116cafd4b66d171d98914f0fb6c88ebee962a700681e96dd5ffbfdf2799a49677148840c49443aa1e31d0c4085688678a0d2
|
7
|
+
data.tar.gz: 2c40affb90abccfca11a0c38032f03f094c8fa9f907cf60cf1815a93a35c51b0736b9572bb4e249ed71462305e2a834ba245c73bb2aa387a7123f15dd17d7ee4
|
data/lib/intranet/core.rb
CHANGED
@@ -91,10 +91,11 @@ module Intranet
|
|
91
91
|
# See https://github.com/nahi/webrick/blob/master/lib/webrick/accesslog.rb#L69
|
92
92
|
ACCESSLOG_FMT = "%h '%r' -> %s (%b bytes in %Ts)"
|
93
93
|
|
94
|
-
def load_http_server(preferred_port)
|
94
|
+
def load_http_server(preferred_port) # rubocop:disable Metrics/MethodLength
|
95
95
|
@port = preferred_port
|
96
96
|
begin
|
97
|
-
WEBrick::HTTPServer.new(Port: @port, Logger: @logger, AccessLog: [[@logger, ACCESSLOG_FMT]]
|
97
|
+
WEBrick::HTTPServer.new(Port: @port, Logger: @logger, AccessLog: [[@logger, ACCESSLOG_FMT]],
|
98
|
+
ServerSoftware: nil)
|
98
99
|
rescue Errno::EACCES # not enough permission to use port 80
|
99
100
|
@port = 8080
|
100
101
|
retry
|
data/spec/intranet/core_spec.rb
CHANGED
@@ -61,6 +61,31 @@ RSpec.describe Intranet::Core do
|
|
61
61
|
thread&.join
|
62
62
|
end
|
63
63
|
|
64
|
+
it 'should not advertise server version in HTTP response headers' do
|
65
|
+
@intranet = described_class.new(Intranet::Logger.new(Intranet::Logger::FATAL))
|
66
|
+
thread = Thread.new { @intranet.start }
|
67
|
+
while @intranet.instance_variable_get(:@server).status != :Running
|
68
|
+
end
|
69
|
+
|
70
|
+
socket = TCPSocket.new('localhost', @intranet.port)
|
71
|
+
socket.puts("GET /design/favicon.ico HTTP/1.1\r\nHost: localhost:#{@intranet.port}\r\n\r\n")
|
72
|
+
server_identification = ''
|
73
|
+
expect(socket.gets).to include('HTTP/1.1 200 OK') # pre-requisite
|
74
|
+
while (line = socket.gets.chomp) # look for Server response header
|
75
|
+
break if line.empty?
|
76
|
+
|
77
|
+
if line.start_with?('Server: ')
|
78
|
+
server_identification = line[8..-1]
|
79
|
+
break
|
80
|
+
end
|
81
|
+
end
|
82
|
+
expect(server_identification).to be_empty
|
83
|
+
socket.close
|
84
|
+
|
85
|
+
@intranet.stop
|
86
|
+
thread&.join
|
87
|
+
end
|
88
|
+
|
64
89
|
context 'when no module is registered' do
|
65
90
|
it 'should return HTTP error 404 when requested for /index.html' do
|
66
91
|
@intranet = described_class.new(Intranet::Logger.new(Intranet::Logger::FATAL))
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: intranet-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.3.
|
4
|
+
version: 2.3.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ebling Mis
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-05-
|
11
|
+
date: 2021-05-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: haml
|