aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2018-03-27 09:39:02 +0200
committerDmitry Vyukov <dvyukov@google.com>2018-03-27 09:39:02 +0200
commitc7e0d50a76c1970d8f326a49ef24fc5d19ee93c1 (patch)
treeb89065b6638c4bc24f8319580f23433e61d66529 /tools
parent0ca7878bc33e9f95369c609dd1eb56a6405479cc (diff)
tools/syz-db: allow to specify db version in pack
Diffstat (limited to 'tools')
-rw-r--r--tools/syz-db/syz-db.go19
1 files changed, 14 insertions, 5 deletions
diff --git a/tools/syz-db/syz-db.go b/tools/syz-db/syz-db.go
index 0ea8a9c10..d777c37a6 100644
--- a/tools/syz-db/syz-db.go
+++ b/tools/syz-db/syz-db.go
@@ -4,6 +4,7 @@
package main
import (
+ "flag"
"fmt"
"io/ioutil"
"os"
@@ -17,14 +18,19 @@ import (
)
func main() {
- if len(os.Args) != 4 {
+ var (
+ flagVersion = flag.Uint64("version", 0, "database version")
+ )
+ flag.Parse()
+ args := flag.Args()
+ if len(args) != 3 {
usage()
}
- switch os.Args[1] {
+ switch args[0] {
case "pack":
- pack(os.Args[2], os.Args[3])
+ pack(args[1], args[2], *flagVersion)
case "unpack":
- unpack(os.Args[2], os.Args[3])
+ unpack(args[1], args[2])
default:
usage()
}
@@ -37,7 +43,7 @@ func usage() {
os.Exit(1)
}
-func pack(dir, file string) {
+func pack(dir, file string, version uint64) {
files, err := ioutil.ReadDir(dir)
if err != nil {
failf("failed to read dir: %v", err)
@@ -47,6 +53,9 @@ func pack(dir, file string) {
if err != nil {
failf("failed to open database file: %v", err)
}
+ if err := db.BumpVersion(version); err != nil {
+ failf("failed to bump database version: %v", err)
+ }
for _, file := range files {
data, err := ioutil.ReadFile(filepath.Join(dir, file.Name()))
if err != nil {