File: ssl.rb

package info (click to toggle)
puma 6.6.0-4
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 2,884 kB
  • sloc: ruby: 17,542; ansic: 2,003; java: 1,006; sh: 379; makefile: 10
file content (27 lines) | stat: -rw-r--r-- 1,158 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
module SSLHelper
  def ssl_query
    @ssl_query ||= if Puma.jruby?
      @keystore = File.expand_path "../../examples/puma/keystore.jks", __dir__
      @ssl_cipher_list = "TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256"
      "keystore=#{@keystore}&keystore-pass=jruby_puma&ssl_cipher_list=#{@ssl_cipher_list}"
    else
      @cert = File.expand_path "../../examples/puma/cert_puma.pem", __dir__
      @key  = File.expand_path "../../examples/puma/puma_keypair.pem", __dir__
      "key=#{@key}&cert=#{@cert}"
    end
  end

  # sets and returns an opts hash for use with Puma::DSL.ssl_bind_str
  def ssl_opts
    @ssl_opts ||= if Puma.jruby?
      @ssl_opts = {}
      @ssl_opts[:keystore] = File.expand_path '../../examples/puma/keystore.jks', __dir__
      @ssl_opts[:keystore_pass] = 'jruby_puma'
      @ssl_opts[:ssl_cipher_list] = 'TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256'
    else
      @ssl_opts = {}
      @ssl_opts[:cert] = File.expand_path '../../examples/puma/cert_puma.pem', __dir__
      @ssl_opts[:key]  = File.expand_path '../../examples/puma/puma_keypair.pem', __dir__
    end
  end
end