Refactored detection logic to include ports and a confidence score
This commit is contained in:
@@ -32,7 +32,7 @@ func TestDetectSSH(t *testing.T) {
|
||||
httpBanner := []byte("GET / HTTP/1.1\r\nHost: example.com\r\n\r\n")
|
||||
|
||||
t.Run("OpenSSH client", func(t *testing.T) {
|
||||
p, err := Detect(Server, openSSHBanner)
|
||||
p, _, err := Detect(Server, openSSHBanner, 0, 22)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
return
|
||||
@@ -45,7 +45,7 @@ func TestDetectSSH(t *testing.T) {
|
||||
})
|
||||
|
||||
t.Run("OpenSSH server", func(t *testing.T) {
|
||||
p, err := Detect(Server, openSSHBanner)
|
||||
p, _, err := Detect(Server, openSSHBanner, 0, 22)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
return
|
||||
@@ -58,7 +58,7 @@ func TestDetectSSH(t *testing.T) {
|
||||
})
|
||||
|
||||
t.Run("OpenSSH server with banner", func(t *testing.T) {
|
||||
p, err := Detect(Server, preBannerSSH)
|
||||
p, _, err := Detect(Server, preBannerSSH, 0, 22)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
return
|
||||
@@ -71,7 +71,7 @@ func TestDetectSSH(t *testing.T) {
|
||||
})
|
||||
|
||||
t.Run("Dropbear server", func(t *testing.T) {
|
||||
p, err := Detect(Server, dropbearBanner)
|
||||
p, _, err := Detect(Server, dropbearBanner, 0, 22)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
return
|
||||
@@ -84,7 +84,7 @@ func TestDetectSSH(t *testing.T) {
|
||||
})
|
||||
|
||||
t.Run("Invalid MySQL banner", func(t *testing.T) {
|
||||
_, err := Detect(Server, mysqlBanner)
|
||||
_, _, err := Detect(Server, mysqlBanner, 0, 3306)
|
||||
if !errors.Is(err, ErrUnknown) {
|
||||
t.Fatalf("expected unknown format, got error %T: %q", err, err)
|
||||
} else {
|
||||
@@ -93,7 +93,7 @@ func TestDetectSSH(t *testing.T) {
|
||||
})
|
||||
|
||||
t.Run("Invalid HTTP banner", func(t *testing.T) {
|
||||
_, err := Detect(Server, httpBanner)
|
||||
_, _, err := Detect(Server, httpBanner, 0, 80)
|
||||
if !errors.Is(err, ErrUnknown) {
|
||||
t.Fatalf("expected unknown format, got error %T: %q", err, err)
|
||||
} else {
|
||||
|
Reference in New Issue
Block a user