From 0b42f8837460779a046e7574ab7b9e9d911327ce Mon Sep 17 00:00:00 2001 From: Radu Ioan Fericean Date: Sat, 6 Dec 2014 21:40:03 +0200 Subject: [PATCH 1/2] better uuid4 function --- utils/coreutils.go | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/utils/coreutils.go b/utils/coreutils.go index 7d4279fb5..0a1f15618 100644 --- a/utils/coreutils.go +++ b/utils/coreutils.go @@ -24,12 +24,12 @@ import ( "crypto/rand" "crypto/sha1" "crypto/tls" - "encoding/hex" "encoding/json" "errors" "fmt" "io" "io/ioutil" + "log" "math" "net/http" "os" @@ -62,8 +62,7 @@ func NewTPid() string { return Sha1(GenUUID()) } -// helper function for uuid generation -func GenUUID() string { +/*func GenUUID() string { uuid := make([]byte, 16) n, err := rand.Read(uuid) if n != len(uuid) || err != nil { @@ -74,6 +73,19 @@ func GenUUID() string { uuid[4] = 0x40 // version 4 Pseudo Random, see page 7 return hex.EncodeToString(uuid) +}*/ + +// helper function for uuid generation +func GenUUID() string { + b := make([]byte, 16) + _, err := io.ReadFull(rand.Reader, b) + if err != nil { + log.Fatal(err) + } + b[6] = (b[6] & 0x0F) | 0x40 + b[8] = (b[8] &^ 0x40) | 0x80 + return fmt.Sprintf("%x-%x-%x-%x-%x", b[:4], b[4:6], b[6:8], b[8:10], + b[10:]) } // Round return rounded version of x with prec precision. From 660e57f08588b5a03ff901c466341409e57912c9 Mon Sep 17 00:00:00 2001 From: Radu Ioan Fericean Date: Sun, 7 Dec 2014 12:56:21 +0200 Subject: [PATCH 2/2] changed column names in sql scripts as well --- data/storage/mysql/create_tariffplan_tables.sql | 4 ++-- data/storage/postgres/create_tariffplan_tables.sql | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/data/storage/mysql/create_tariffplan_tables.sql b/data/storage/mysql/create_tariffplan_tables.sql index 5d4af75ee..0b5b9df1f 100644 --- a/data/storage/mysql/create_tariffplan_tables.sql +++ b/data/storage/mysql/create_tariffplan_tables.sql @@ -147,10 +147,10 @@ CREATE TABLE `tp_actions` ( `action` varchar(24) NOT NULL, `balance_tag` varchar(64) NOT NULL, `balance_type` varchar(24) NOT NULL, - `direction` varchar(8) NOT NULL, + `balance_direction` varchar(8) NOT NULL, `units` DECIMAL(20,4) NOT NULL, `expiry_time` varchar(24) NOT NULL, - `destination_tag` varchar(64) NOT NULL, + `balance_destination_tag` varchar(64) NOT NULL, `rating_subject` varchar(64) NOT NULL, `category` varchar(16) NOT NULL, `shared_group` varchar(64) NOT NULL, diff --git a/data/storage/postgres/create_tariffplan_tables.sql b/data/storage/postgres/create_tariffplan_tables.sql index ebb8d252e..d76070b7c 100644 --- a/data/storage/postgres/create_tariffplan_tables.sql +++ b/data/storage/postgres/create_tariffplan_tables.sql @@ -169,12 +169,12 @@ CREATE TABLE tp_action_triggers ( tag VARCHAR(64) NOT NULL, balance_tag VARCHAR(64) NOT NULL, balance_type VARCHAR(24) NOT NULL, - direction VARCHAR(8) NOT NULL, + balance_direction VARCHAR(8) NOT NULL, threshold_type char(12) NOT NULL, threshold_value NUMERIC(20,4) NOT NULL, recurrent BOOLEAN NOT NULL, min_sleep INTEGER NOT NULL, - destination_tag VARCHAR(64) NOT NULL, + balance_destination_tag VARCHAR(64) NOT NULL, balance_weight NUMERIC(8,2) NOT NULL, balance_expiry_time VARCHAR(24) NOT NULL, balance_rating_subject VARCHAR(64) NOT NULL,