Skip to content
Snippets Groups Projects
Commit c694061e authored by Will McCutchen's avatar Will McCutchen
Browse files

Panic if we can't read random data for uuid

parent 69273a27
No related branches found
No related tags found
No related merge requests found
......@@ -898,13 +898,8 @@ func (h *HTTPBin) DigestAuth(w http.ResponseWriter, r *http.Request) {
// UUID - responds with a generated UUID
func (h *HTTPBin) UUID(w http.ResponseWriter, r *http.Request) {
u, err := uuidv4()
if err != nil {
http.Error(w, fmt.Sprintf("Failed to generate uuid: %s", err), http.StatusInternalServerError)
return
}
resp, _ := json.Marshal(&uuidResponse{
UUID: u,
UUID: uuidv4(),
})
writeJSON(w, resp, http.StatusOK)
}
......
......@@ -236,16 +236,15 @@ func sha1hash(input string) string {
return fmt.Sprintf("%x", h.Sum([]byte(input)))
}
func uuidv4() (string, error) {
func uuidv4() string {
buff := make([]byte, 16)
_, err := rand.Read(buff[:])
if err != nil {
return "", err
panic(err)
}
buff[6] = (buff[6] & 0x0f) | 0x40 // Version 4
buff[8] = (buff[8] & 0x3f) | 0x80 // Variant 10
uuid := fmt.Sprintf("%x-%x-%x-%x-%x", buff[0:4], buff[4:6], buff[6:8], buff[8:10], buff[10:])
return uuid, nil
return fmt.Sprintf("%x-%x-%x-%x-%x", buff[0:4], buff[4:6], buff[6:8], buff[8:10], buff[10:])
}
// base64Helper - describes the base64 operation (encode|decode) and input data
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment