Module: Proxy::OpenSCAP
- Extended by:
- Log
- Defined in:
- lib/smart_proxy_openscap/version.rb,
lib/smart_proxy_openscap/fetch_file.rb,
lib/smart_proxy_openscap/storage_fs.rb,
lib/smart_proxy_openscap/openscap_api.rb,
lib/smart_proxy_openscap/openscap_lib.rb,
lib/smart_proxy_openscap/openscap_plugin.rb,
lib/smart_proxy_openscap/spool_forwarder.rb,
lib/smart_proxy_openscap/foreman_forwarder.rb,
lib/smart_proxy_openscap/fetch_scap_content.rb,
lib/smart_proxy_openscap/openscap_exception.rb,
lib/smart_proxy_openscap/openscap_import_api.rb,
lib/smart_proxy_openscap/fetch_tailoring_file.rb,
lib/smart_proxy_openscap/openscap_report_parser.rb,
lib/smart_proxy_openscap/openscap_content_parser.rb,
lib/smart_proxy_openscap/storage.rb,
lib/smart_proxy_openscap.rb
Defined Under Namespace
Classes: Api, ContentParser, FetchFile, FetchScapContent, FetchTailoringFile, FileNotFound, ForemanForwarder, ImportApi, OpenSCAPException, Parse, Plugin, SpoolForwarder, Storage, StorageFS, StoreCorruptedError, StoreFailedError, StoreReportError, StoreSpoolError
Constant Summary
collapse
- VERSION =
'0.6.3'
- HTTP_ERRORS =
[
EOFError,
Errno::ECONNRESET,
Errno::EINVAL,
Net::HTTPBadResponse,
Net::,
Net::ProtocolError,
Timeout::Error
]
Class Method Summary
collapse
Class Method Details
.common_name(request) ⇒ Object
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
# File 'lib/smart_proxy_openscap/openscap_lib.rb', line 29
def self.common_name(request)
client_cert = request.env['SSL_CLIENT_CERT']
raise Proxy::Error::Unauthorized, "Client certificate required!" if client_cert.to_s.empty?
begin
client_cert = OpenSSL::X509::Certificate.new(client_cert)
rescue OpenSSL::OpenSSLError => e
raise Proxy::Error::Unauthorized, e.message
end
cn = client_cert.subject.to_a.detect { |name, value| name == 'CN' }
cn = cn[1] unless cn.nil?
raise Proxy::Error::Unauthorized, "Common Name not found in the certificate" unless cn
cn
end
|
.fullpath(path = Proxy::OpenSCAP::Plugin.settings.contentdir) ⇒ Object
50
51
52
53
|
# File 'lib/smart_proxy_openscap/openscap_lib.rb', line 50
def self.fullpath(path = Proxy::OpenSCAP::Plugin.settings.contentdir)
pathname = Pathname.new(path)
pathname.relative? ? pathname.expand_path(Sinatra::Base.root).to_s : path
end
|
.send_spool_to_foreman ⇒ Object
44
45
46
47
48
|
# File 'lib/smart_proxy_openscap/openscap_lib.rb', line 44
def self.send_spool_to_foreman
arf_dir = File.join(Proxy::OpenSCAP::Plugin.settings.spooldir, "/arf")
return unless File.exist? arf_dir
SpoolForwarder.new.post_arf_from_spool(arf_dir)
end
|