// Copyright (c) 2016 Intel Corporation // // SPDX-License-Identifier: Apache-2.0 // package mock import ( "os" "strconv" "sync" "time" ) // Taken from https://golang.org/src/io/ioutil/tempfile.go?s=#L19 var rand uint32 var randmu sync.Mutex func reseed() uint32 { return uint32(time.Now().UnixNano() + int64(os.Getpid())) } func nextSuffix() string { randmu.Lock() r := rand if r == 0 { r = reseed() } r = r*1664525 + 1013904223 // constants from Numerical Recipes rand = r randmu.Unlock() return strconv.Itoa(int(1e9 + r%1e9))[1:] }