2023-08-01 22:35:47 +00:00
|
|
|
package shodan
|
|
|
|
|
|
|
|
import (
|
|
|
|
"context"
|
|
|
|
"fmt"
|
|
|
|
|
|
|
|
"git.tcp.direct/perp/shogo/internal/utils"
|
|
|
|
)
|
|
|
|
|
|
|
|
// Return your account information
|
2023-08-02 04:09:28 +00:00
|
|
|
func Info(profile_enabled bool) {
|
2023-08-01 22:35:47 +00:00
|
|
|
// Fetch API information
|
2023-08-02 04:09:28 +00:00
|
|
|
results, err := utils.Client.GetAPIInfo(context.Background())
|
|
|
|
if err != nil {
|
|
|
|
fmt.Printf("%s: %s\n", utils.Red("Error"), err.Error())
|
|
|
|
return
|
2023-08-01 22:35:47 +00:00
|
|
|
}
|
|
|
|
|
2023-08-02 04:09:28 +00:00
|
|
|
// Print results
|
|
|
|
utils.Title.Println("API")
|
|
|
|
fmt.Printf("%s: %s\n", utils.Green("Plan"), utils.Blue(results.Plan))
|
|
|
|
fmt.Printf("%s: %s\n", utils.Blue("Query credits"), utils.Green(results.QueryCredits))
|
|
|
|
fmt.Printf("%s: %s\n", utils.Green("Scan credits"), utils.Blue(results.ScanCredits))
|
|
|
|
fmt.Printf("%s: %s\n", utils.Blue("Telnet"), utils.Green(results.Telnet))
|
|
|
|
fmt.Printf("%s: %s\n", utils.Green("HTTPS"), utils.Blue(results.HTTPS))
|
|
|
|
fmt.Printf("%s: %s\n", utils.Blue("Unlocked"), utils.Green(results.Unlocked))
|
2023-08-01 22:35:47 +00:00
|
|
|
|
|
|
|
// Fetch profile information
|
|
|
|
if profile_enabled {
|
|
|
|
results, err := utils.Client.GetAccountProfile(context.Background())
|
|
|
|
if err != nil {
|
|
|
|
fmt.Printf("%s: %s\n", utils.Red("Error"), err.Error())
|
|
|
|
return
|
|
|
|
}
|
|
|
|
|
2023-08-02 04:09:28 +00:00
|
|
|
// Profile name
|
|
|
|
var name string
|
|
|
|
|
|
|
|
// Empty name
|
|
|
|
if results.Name == "" {
|
|
|
|
name = "?"
|
|
|
|
} else {
|
|
|
|
name = results.Name
|
|
|
|
}
|
|
|
|
|
2023-08-01 22:35:47 +00:00
|
|
|
// Print results
|
2023-08-02 04:09:28 +00:00
|
|
|
fmt.Println("")
|
|
|
|
|
2023-08-01 22:35:47 +00:00
|
|
|
utils.Title.Println("Profile")
|
2023-08-02 04:09:28 +00:00
|
|
|
fmt.Printf("%s: %s\n", utils.Green("Name"), utils.Blue(name))
|
2023-08-01 22:35:47 +00:00
|
|
|
fmt.Printf("%s: %s\n", utils.Blue("Member"), utils.Green(results.Member))
|
|
|
|
fmt.Printf("%s: %s\n", utils.Green("Credits"), utils.Blue(results.Credits))
|
|
|
|
fmt.Printf("%s: %s\n", utils.Blue("Created"), utils.Green(results.Created))
|
|
|
|
}
|
|
|
|
}
|