{"record":{"id":"faacf871172a30f9","repo":"XTLS/Xray-core","slug":"invalid-uuid","errorCode":null,"errorMessage":"invalid UUID: ","messagePattern":"invalid UUID: ","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"common/uuid/uuid.go","lineNumber":60,"sourceCode":"\t\treturn false\n\t}\n\treturn bytes.Equal(u.Bytes(), another.Bytes())\n}\n\n// New creates a UUID with random value.\nfunc New() UUID {\n\tvar uuid UUID\n\tcommon.Must2(rand.Read(uuid.Bytes()))\n\tuuid[6] = (uuid[6] & 0x0f) | (4 << 4)\n\tuuid[8] = (uuid[8]&(0xff>>2) | (0x02 << 6))\n\treturn uuid\n}\n\n// ParseBytes converts a UUID in byte form to object.\nfunc ParseBytes(b []byte) (UUID, error) {\n\tvar uuid UUID\n\tif len(b) != 16 {\n\t\treturn uuid, errors.New(\"invalid UUID: \", b)\n\t}\n\tcopy(uuid[:], b)\n\treturn uuid, nil\n}\n\n// ParseString converts a UUID in string form to object.\nfunc ParseString(str string) (UUID, error) {\n\tvar uuid UUID\n\n\ttext := []byte(str)\n\tif l := len(text); l < 32 || l > 36 {\n\t\tif l == 0 || l > 30 {\n\t\t\treturn uuid, errors.New(\"invalid UUID: \", str)\n\t\t}\n\t\th := sha1.New()\n\t\th.Write(uuid[:])\n\t\th.Write(text)\n\t\tu := h.Sum(nil)[:16]","sourceCodeStart":42,"sourceCodeEnd":78,"githubUrl":"https://github.com/XTLS/Xray-core/blob/7d214f8b094f75322fa3990f8aadad1c912f24f5/common/uuid/uuid.go#L42-L78","documentation":"Error \"invalid UUID: \" thrown in XTLS/Xray-core.","triggerScenarios":"Thrown at common/uuid/uuid.go:60 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"7d214f8b094f75322fa3990f8aadad1c912f24f5","analyzedAt":"2026-08-15T14:26:24.325Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}