mirror of
https://github.com/sosedoff/pgweb.git
synced 2024-12-15 03:36:33 +03:00
Add option to support sslrootcert parameter
This commit is contained in:
parent
cc35a754e0
commit
9c7f566d4d
@ -19,6 +19,7 @@ type Options struct {
|
|||||||
Pass string `long:"pass" description:"Password for user"`
|
Pass string `long:"pass" description:"Password for user"`
|
||||||
DbName string `long:"db" description:"Database name"`
|
DbName string `long:"db" description:"Database name"`
|
||||||
Ssl string `long:"ssl" description:"SSL option"`
|
Ssl string `long:"ssl" description:"SSL option"`
|
||||||
|
SslRootCert string `long:"ssl-root-cert" description:"SSL Root Cert"`
|
||||||
HTTPHost string `long:"bind" description:"HTTP server host" default:"localhost"`
|
HTTPHost string `long:"bind" description:"HTTP server host" default:"localhost"`
|
||||||
HTTPPort uint `long:"listen" description:"HTTP server listen port" default:"8081"`
|
HTTPPort uint `long:"listen" description:"HTTP server listen port" default:"8081"`
|
||||||
AuthUser string `long:"auth-user" description:"HTTP basic auth user"`
|
AuthUser string `long:"auth-user" description:"HTTP basic auth user"`
|
||||||
@ -43,6 +44,7 @@ type Options struct {
|
|||||||
|
|
||||||
var Opts Options
|
var Opts Options
|
||||||
|
|
||||||
|
// ParseOptions returns a new options struct from the input arguments
|
||||||
func ParseOptions(args []string) (Options, error) {
|
func ParseOptions(args []string) (Options, error) {
|
||||||
var opts = Options{}
|
var opts = Options{}
|
||||||
|
|
||||||
|
@ -93,6 +93,8 @@ func IsBlank(opts command.Options) bool {
|
|||||||
|
|
||||||
// BuildStringFromOptions returns a new connection string built from options
|
// BuildStringFromOptions returns a new connection string built from options
|
||||||
func BuildStringFromOptions(opts command.Options) (string, error) {
|
func BuildStringFromOptions(opts command.Options) (string, error) {
|
||||||
|
query := neturl.Values{}
|
||||||
|
|
||||||
// If connection string is provided we just use that
|
// If connection string is provided we just use that
|
||||||
if opts.URL != "" {
|
if opts.URL != "" {
|
||||||
return FormatURL(opts)
|
return FormatURL(opts)
|
||||||
@ -106,14 +108,15 @@ func BuildStringFromOptions(opts command.Options) (string, error) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Disable ssl for localhost connections, most users have it disabled
|
|
||||||
if opts.Ssl == "" && (opts.Host == "localhost" || opts.Host == "127.0.0.1") {
|
|
||||||
opts.Ssl = "disable"
|
|
||||||
}
|
|
||||||
|
|
||||||
query := neturl.Values{}
|
|
||||||
if opts.Ssl != "" {
|
if opts.Ssl != "" {
|
||||||
query.Add("sslmode", opts.Ssl)
|
query.Add("sslmode", opts.Ssl)
|
||||||
|
} else {
|
||||||
|
if opts.Host == "localhost" || opts.Host == "127.0.0.1" {
|
||||||
|
query.Add("sslmode", "disable")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if opts.SslRootCert != "" {
|
||||||
|
query.Add("sslrootcert", opts.SslRootCert)
|
||||||
}
|
}
|
||||||
|
|
||||||
url := neturl.URL{
|
url := neturl.URL{
|
||||||
|
Loading…
Reference in New Issue
Block a user