summaryrefslogtreecommitdiff
path: root/hisgle.go
diff options
context:
space:
mode:
Diffstat (limited to 'hisgle.go')
-rw-r--r--hisgle.go20
1 files changed, 14 insertions, 6 deletions
diff --git a/hisgle.go b/hisgle.go
index de01ce9..ea7a397 100644
--- a/hisgle.go
+++ b/hisgle.go
@@ -10,7 +10,7 @@ import ( "fmt"
// _ "code.google.com/p/gosqlite/sqlite3"
import (
"database/sql"
- _ "github.com/mxk/go-sqlite/sqlite3"
+ _ "github.com/mattn/go-sqlite3"
"github.com/pborman/getopt"
)
@@ -40,26 +40,34 @@ func hosts(db *sql.DB, vlan int) {
var (
ipv4 string
name string
+ suffix *string
alias string
+ hostpart string
)
// CREATE TABLE devices (name, mac, interface);
// CREATE TABLE addresses (mac, vlan, ipv4);
- rows, err := db.Query("SELECT a.ipv4, d.name FROM addresses AS a JOIN " +
- "devices AS d ON a.mac=d.mac WHERE vlan=?", vlan)
+ rows, err := db.Query("SELECT a.ipv4, d.name, d.suffix " +
+ "FROM addresses AS a JOIN devices AS d ON a.mac=d.mac WHERE vlan=?",
+ vlan)
if err != nil {
log.Fatal(err)
}
for rows.Next() {
- err := rows.Scan(&ipv4, &name)
+ err := rows.Scan(&ipv4, &name, &suffix)
if err != nil {
log.Fatal(err)
}
- fmt.Print(ipv4, "\t", name)
+ if suffix != nil {
+ hostpart = name + "-" + *suffix
+ } else {
+ hostpart = name
+ }
+ fmt.Print(ipv4, "\t", hostpart)
// CREATE TABLE aliases (alias, target);
- rows, err := db.Query("SELECT alias FROM aliases WHERE target=?", name)
+ rows, err := db.Query("SELECT alias FROM aliases WHERE target=?", hostpart)
if err != nil {
log.Fatal(err)
}