mirror of
https://github.com/projectdiscovery/nuclei.git
synced 2025-12-18 04:55:28 +00:00
* make ssh module store the connection * make ssh module able to execute commands using the client * add bingen + update docs --------- Co-authored-by: Tarun Koyalwar <tarun@projectdiscovery.io>
48 lines
1.2 KiB
Cheetah
48 lines
1.2 KiB
Cheetah
package {{.PackageName}}
|
|
|
|
{{$pkgName:=(printf "lib_%s" .PackageName) -}}
|
|
|
|
import (
|
|
{{$pkgName}} "{{.PackagePath}}"
|
|
|
|
"github.com/dop251/goja"
|
|
"github.com/projectdiscovery/nuclei/v3/pkg/js/gojs"
|
|
)
|
|
|
|
var (
|
|
module = gojs.NewGojaModule("nuclei/{{.PackageName}}")
|
|
)
|
|
|
|
func init() {
|
|
module.Set(
|
|
gojs.Objects{
|
|
{{- $pkgFuncs:=.PackageFuncs}}
|
|
// Functions
|
|
{{- range $objName, $objDefine := .PackageFuncs}}
|
|
"{{$objName}}": {{$pkgName}}.{{$objDefine}},
|
|
{{- end}}
|
|
|
|
// Var and consts
|
|
{{- range $objName, $objDefine := .PackageVars}}
|
|
"{{$objName}}": {{$pkgName}}.{{$objDefine}},
|
|
{{- end}}
|
|
|
|
// Types (value type)
|
|
{{- range $objName, $objDefine := .PackageTypes}}
|
|
"{{$objName}}": {{printf "func() %s.%s { return %s.%s{} }" $pkgName $objDefine $pkgName $objDefine}},
|
|
{{- end}}
|
|
|
|
// Types (pointer type)
|
|
{{range $objName, $objDefine := .PackageTypes}}
|
|
{{- $newObjName := printf "%s%s" "New" $objName -}}
|
|
{{- if not (exist $pkgFuncs $newObjName) -}}
|
|
"{{$newObjName}}": {{printf "func() *%s.%s { return &%s.%s{} }" $pkgName $objDefine $pkgName $objDefine}},
|
|
{{end -}}
|
|
{{- end -}}
|
|
},
|
|
).Register()
|
|
}
|
|
|
|
func Enable(runtime *goja.Runtime) {
|
|
module.Enable(runtime)
|
|
} |