fix(reprot): use SQLite3 in current dir if not specified (#1103)
This commit is contained in:
108
config/config.go
108
config/config.go
@@ -760,16 +760,15 @@ func (c *HTTPConf) Validate() (errs []error) {
|
||||
|
||||
const httpKey = "VULS_HTTP_URL"
|
||||
|
||||
// Overwrite set options with the following priority.
|
||||
// 1. Command line option
|
||||
// 2. Environment variable
|
||||
// 3. config.toml
|
||||
func (c *HTTPConf) Overwrite(cmdOpt HTTPConf) {
|
||||
// Init set options with the following priority.
|
||||
// 1. Environment variable
|
||||
// 2. config.toml
|
||||
func (c *HTTPConf) Init(toml HTTPConf) {
|
||||
if os.Getenv(httpKey) != "" {
|
||||
c.URL = os.Getenv(httpKey)
|
||||
}
|
||||
if cmdOpt.URL != "" {
|
||||
c.URL = cmdOpt.URL
|
||||
if toml.URL != "" {
|
||||
c.URL = toml.URL
|
||||
}
|
||||
}
|
||||
|
||||
@@ -799,11 +798,10 @@ const cveDBType = "CVEDB_TYPE"
|
||||
const cveDBURL = "CVEDB_URL"
|
||||
const cveDBPATH = "CVEDB_SQLITE3_PATH"
|
||||
|
||||
// Overwrite set options with the following priority.
|
||||
// 1. Command line option
|
||||
// 2. Environment variable
|
||||
// 3. config.toml
|
||||
func (cnf *GoCveDictConf) Overwrite(cmdOpt GoCveDictConf) {
|
||||
// Init set options with the following priority.
|
||||
// 1. Environment variable
|
||||
// 2. config.toml
|
||||
func (cnf *GoCveDictConf) Init() {
|
||||
if os.Getenv(cveDBType) != "" {
|
||||
cnf.Type = os.Getenv(cveDBType)
|
||||
}
|
||||
@@ -813,16 +811,6 @@ func (cnf *GoCveDictConf) Overwrite(cmdOpt GoCveDictConf) {
|
||||
if os.Getenv(cveDBPATH) != "" {
|
||||
cnf.SQLite3Path = os.Getenv(cveDBPATH)
|
||||
}
|
||||
|
||||
if cmdOpt.Type != "" {
|
||||
cnf.Type = cmdOpt.Type
|
||||
}
|
||||
if cmdOpt.URL != "" {
|
||||
cnf.URL = cmdOpt.URL
|
||||
}
|
||||
if cmdOpt.SQLite3Path != "" {
|
||||
cnf.SQLite3Path = cmdOpt.SQLite3Path
|
||||
}
|
||||
cnf.setDefault()
|
||||
}
|
||||
|
||||
@@ -858,11 +846,10 @@ const govalType = "OVALDB_TYPE"
|
||||
const govalURL = "OVALDB_URL"
|
||||
const govalPATH = "OVALDB_SQLITE3_PATH"
|
||||
|
||||
// Overwrite set options with the following priority.
|
||||
// 1. Command line option
|
||||
// 2. Environment variable
|
||||
// 3. config.toml
|
||||
func (cnf *GovalDictConf) Overwrite(cmdOpt GovalDictConf) {
|
||||
// Init set options with the following priority.
|
||||
// 1. Environment variable
|
||||
// 2. config.toml
|
||||
func (cnf *GovalDictConf) Init() {
|
||||
if os.Getenv(govalType) != "" {
|
||||
cnf.Type = os.Getenv(govalType)
|
||||
}
|
||||
@@ -872,16 +859,6 @@ func (cnf *GovalDictConf) Overwrite(cmdOpt GovalDictConf) {
|
||||
if os.Getenv(govalPATH) != "" {
|
||||
cnf.SQLite3Path = os.Getenv(govalPATH)
|
||||
}
|
||||
|
||||
if cmdOpt.Type != "" {
|
||||
cnf.Type = cmdOpt.Type
|
||||
}
|
||||
if cmdOpt.URL != "" {
|
||||
cnf.URL = cmdOpt.URL
|
||||
}
|
||||
if cmdOpt.SQLite3Path != "" {
|
||||
cnf.SQLite3Path = cmdOpt.SQLite3Path
|
||||
}
|
||||
cnf.setDefault()
|
||||
}
|
||||
|
||||
@@ -916,11 +893,10 @@ const gostDBType = "GOSTDB_TYPE"
|
||||
const gostDBURL = "GOSTDB_URL"
|
||||
const gostDBPATH = "GOSTDB_SQLITE3_PATH"
|
||||
|
||||
// Overwrite set options with the following priority.
|
||||
// 1. Command line option
|
||||
// 2. Environment variable
|
||||
// 3. config.toml
|
||||
func (cnf *GostConf) Overwrite(cmdOpt GostConf) {
|
||||
// Init set options with the following priority.
|
||||
// 1. Environment variable
|
||||
// 2. config.toml
|
||||
func (cnf *GostConf) Init() {
|
||||
if os.Getenv(gostDBType) != "" {
|
||||
cnf.Type = os.Getenv(gostDBType)
|
||||
}
|
||||
@@ -930,16 +906,6 @@ func (cnf *GostConf) Overwrite(cmdOpt GostConf) {
|
||||
if os.Getenv(gostDBPATH) != "" {
|
||||
cnf.SQLite3Path = os.Getenv(gostDBPATH)
|
||||
}
|
||||
|
||||
if cmdOpt.Type != "" {
|
||||
cnf.Type = cmdOpt.Type
|
||||
}
|
||||
if cmdOpt.URL != "" {
|
||||
cnf.URL = cmdOpt.URL
|
||||
}
|
||||
if cmdOpt.SQLite3Path != "" {
|
||||
cnf.SQLite3Path = cmdOpt.SQLite3Path
|
||||
}
|
||||
cnf.setDefault()
|
||||
}
|
||||
|
||||
@@ -974,11 +940,10 @@ const exploitDBType = "EXPLOITDB_TYPE"
|
||||
const exploitDBURL = "EXPLOITDB_URL"
|
||||
const exploitDBPATH = "EXPLOITDB_SQLITE3_PATH"
|
||||
|
||||
// Overwrite set options with the following priority.
|
||||
// 1. Command line option
|
||||
// 2. Environment variable
|
||||
// 3. config.toml
|
||||
func (cnf *ExploitConf) Overwrite(cmdOpt ExploitConf) {
|
||||
// Init set options with the following priority.
|
||||
// 1. Environment variable
|
||||
// 2. config.toml
|
||||
func (cnf *ExploitConf) Init() {
|
||||
if os.Getenv(exploitDBType) != "" {
|
||||
cnf.Type = os.Getenv(exploitDBType)
|
||||
}
|
||||
@@ -988,16 +953,6 @@ func (cnf *ExploitConf) Overwrite(cmdOpt ExploitConf) {
|
||||
if os.Getenv(exploitDBPATH) != "" {
|
||||
cnf.SQLite3Path = os.Getenv(exploitDBPATH)
|
||||
}
|
||||
|
||||
if cmdOpt.Type != "" {
|
||||
cnf.Type = cmdOpt.Type
|
||||
}
|
||||
if cmdOpt.URL != "" {
|
||||
cnf.URL = cmdOpt.URL
|
||||
}
|
||||
if cmdOpt.SQLite3Path != "" {
|
||||
cnf.SQLite3Path = cmdOpt.SQLite3Path
|
||||
}
|
||||
cnf.setDefault()
|
||||
}
|
||||
|
||||
@@ -1032,11 +987,10 @@ const metasploitDBType = "METASPLOITDB_TYPE"
|
||||
const metasploitDBURL = "METASPLOITDB_URL"
|
||||
const metasploitDBPATH = "METASPLOITDB_SQLITE3_PATH"
|
||||
|
||||
// Overwrite set options with the following priority.
|
||||
// 1. Command line option
|
||||
// 2. Environment variable
|
||||
// 3. config.toml
|
||||
func (cnf *MetasploitConf) Overwrite(cmdOpt MetasploitConf) {
|
||||
// Init set options with the following priority.
|
||||
// 1. Environment variable
|
||||
// 2. config.toml
|
||||
func (cnf *MetasploitConf) Init() {
|
||||
if os.Getenv(metasploitDBType) != "" {
|
||||
cnf.Type = os.Getenv(metasploitDBType)
|
||||
}
|
||||
@@ -1046,16 +1000,6 @@ func (cnf *MetasploitConf) Overwrite(cmdOpt MetasploitConf) {
|
||||
if os.Getenv(metasploitDBPATH) != "" {
|
||||
cnf.SQLite3Path = os.Getenv(metasploitDBPATH)
|
||||
}
|
||||
|
||||
if cmdOpt.Type != "" {
|
||||
cnf.Type = cmdOpt.Type
|
||||
}
|
||||
if cmdOpt.URL != "" {
|
||||
cnf.URL = cmdOpt.URL
|
||||
}
|
||||
if cmdOpt.SQLite3Path != "" {
|
||||
cnf.SQLite3Path = cmdOpt.SQLite3Path
|
||||
}
|
||||
cnf.setDefault()
|
||||
}
|
||||
|
||||
|
||||
@@ -275,6 +275,12 @@ func (c TOMLLoader) Load(pathToToml, keyPass string) error {
|
||||
servers[serverName] = s
|
||||
}
|
||||
Conf.Servers = servers
|
||||
|
||||
Conf.CveDict.Init()
|
||||
Conf.OvalDict.Init()
|
||||
Conf.Gost.Init()
|
||||
Conf.Exploit.Init()
|
||||
Conf.Metasploit.Init()
|
||||
return nil
|
||||
}
|
||||
|
||||
|
||||
@@ -37,7 +37,7 @@ type HTTPResponseWriter struct {
|
||||
func (w HTTPResponseWriter) Write(rs ...models.ScanResult) (err error) {
|
||||
res, err := json.Marshal(rs)
|
||||
if err != nil {
|
||||
return xerrors.Errorf("Failed to marshal scah results: %w", err)
|
||||
return xerrors.Errorf("Failed to marshal scan results: %w", err)
|
||||
}
|
||||
w.Writer.Header().Set("Content-Type", "application/json")
|
||||
_, err = w.Writer.Write(res)
|
||||
|
||||
@@ -163,7 +163,7 @@ func (p *ReportCmd) Execute(_ context.Context, f *flag.FlagSet, _ ...interface{}
|
||||
util.Log.Errorf("Error loading %s, %+v", p.configPath, err)
|
||||
return subcommands.ExitUsageError
|
||||
}
|
||||
c.Conf.HTTP.Overwrite(p.httpConf)
|
||||
c.Conf.HTTP.Init(p.httpConf)
|
||||
|
||||
var dir string
|
||||
var err error
|
||||
|
||||
Reference in New Issue
Block a user