Simple util to print original email based on hash.

This commit is contained in:
Bill Thiede 2014-03-29 22:39:00 -07:00
parent 8fb345cfb1
commit b79c894575

View File

@ -0,0 +1,59 @@
package main
import (
"database/sql"
"flag"
"fmt"
"os"
"github.com/golang/glog"
_ "github.com/lib/pq"
)
func fetchMessage(db *sql.DB, hash string) error {
rows, err := db.Query(`
SELECT
blob
FROM
original
WHERE
hash = $1
`, hash)
if err != nil {
return err
}
var b []byte
for rows.Next() {
if err := rows.Scan(&b); err != nil {
return err
}
fmt.Println(string(b))
}
if err := rows.Err(); err != nil {
return err
}
return nil
}
func main() {
defer glog.Flush()
flag.Parse()
// TODO(wathiede): make a set of flags.
db, err := sql.Open("postgres", "user=gomail dbname=gomail sslmode=disable")
if err != nil {
glog.Fatal(err)
}
if flag.NArg() == 0 {
fmt.Println("Must specify message hashes to print")
os.Exit(1)
}
for _, hash := range flag.Args() {
if err := fetchMessage(db, hash); err != nil {
glog.Fatal(err)
}
}
}