mirror of
https://github.com/projectdiscovery/nuclei.git
synced 2025-12-18 08:45:27 +00:00
* initial implementation with manual code generation * testing generation * refactor to package methods + auto memoize * more memos * fixing signatures * refactor * adding gen util * adding util * regenerate memoized files --------- Co-authored-by: Tarun Koyalwar <tarun@projectdiscovery.io>
74 lines
1.9 KiB
Go
Executable File
74 lines
1.9 KiB
Go
Executable File
// Warning - This is generated code
|
|
package redis
|
|
|
|
import (
|
|
"errors"
|
|
"fmt"
|
|
|
|
"github.com/projectdiscovery/nuclei/v3/pkg/protocols/common/protocolstate"
|
|
)
|
|
|
|
func memoizedgetServerInfo(host string, port int) (string, error) {
|
|
hash := "getServerInfo" + ":" + fmt.Sprint(host) + ":" + fmt.Sprint(port)
|
|
|
|
v, err, _ := protocolstate.Memoizer.Do(hash, func() (interface{}, error) {
|
|
return getServerInfo(host, port)
|
|
})
|
|
if err != nil {
|
|
return "", err
|
|
}
|
|
if value, ok := v.(string); ok {
|
|
return value, nil
|
|
}
|
|
|
|
return "", errors.New("could not convert cached result")
|
|
}
|
|
|
|
func memoizedconnect(host string, port int, password string) (bool, error) {
|
|
hash := "connect" + ":" + fmt.Sprint(host) + ":" + fmt.Sprint(port) + ":" + fmt.Sprint(password)
|
|
|
|
v, err, _ := protocolstate.Memoizer.Do(hash, func() (interface{}, error) {
|
|
return connect(host, port, password)
|
|
})
|
|
if err != nil {
|
|
return false, err
|
|
}
|
|
if value, ok := v.(bool); ok {
|
|
return value, nil
|
|
}
|
|
|
|
return false, errors.New("could not convert cached result")
|
|
}
|
|
|
|
func memoizedgetServerInfoAuth(host string, port int, password string) (string, error) {
|
|
hash := "getServerInfoAuth" + ":" + fmt.Sprint(host) + ":" + fmt.Sprint(port) + ":" + fmt.Sprint(password)
|
|
|
|
v, err, _ := protocolstate.Memoizer.Do(hash, func() (interface{}, error) {
|
|
return getServerInfoAuth(host, port, password)
|
|
})
|
|
if err != nil {
|
|
return "", err
|
|
}
|
|
if value, ok := v.(string); ok {
|
|
return value, nil
|
|
}
|
|
|
|
return "", errors.New("could not convert cached result")
|
|
}
|
|
|
|
func memoizedisAuthenticated(host string, port int) (bool, error) {
|
|
hash := "isAuthenticated" + ":" + fmt.Sprint(host) + ":" + fmt.Sprint(port)
|
|
|
|
v, err, _ := protocolstate.Memoizer.Do(hash, func() (interface{}, error) {
|
|
return isAuthenticated(host, port)
|
|
})
|
|
if err != nil {
|
|
return false, err
|
|
}
|
|
if value, ok := v.(bool); ok {
|
|
return value, nil
|
|
}
|
|
|
|
return false, errors.New("could not convert cached result")
|
|
}
|