github.com/projectdiscovery/nuclei/v2@v2.9.15/pkg/protocols/common/generators/env.go (about) 1 package generators 2 3 import ( 4 "os" 5 6 stringsutil "github.com/projectdiscovery/utils/strings" 7 ) 8 9 var envVars map[string]interface{} 10 11 func parseEnvVars() map[string]interface{} { 12 sliceEnvVars := os.Environ() 13 parsedEnvVars := make(map[string]interface{}, len(sliceEnvVars)) 14 for _, envVar := range sliceEnvVars { 15 key, _ := stringsutil.Before(envVar, "=") 16 val, _ := stringsutil.After(envVar, "=") 17 parsedEnvVars[key] = val 18 } 19 return parsedEnvVars 20 } 21 22 // EnvVars returns a map with all environment variables into a map 23 func EnvVars() map[string]interface{} { 24 if envVars == nil { 25 envVars = parseEnvVars() 26 } 27 28 return envVars 29 }