Added parts counting on token checker

This commit is contained in:
Patrick Alvin Alcala 2025-11-11 14:54:49 +08:00
parent 7f14cbd044
commit 79407086f3

View file

@ -77,21 +77,36 @@ func TokenChecker() gin.HandlerFunc {
} }
parts := strings.Split(decrypted, "-") parts := strings.Split(decrypted, "-")
requested := parts[2] partCount := len(parts)
requestedNum, _ := strconv.Atoi(requested) var finalRequest int
expiration := parts[3] var finalExpiration int
expirationNum, _ := strconv.Atoi(expiration)
if partCount == 4 {
requested := parts[2]
requestedNum, _ := strconv.Atoi(requested)
finalRequest = requestedNum
expiration := parts[3]
expirationNum, _ := strconv.Atoi(expiration)
finalExpiration = expirationNum
} else {
requested := parts[3]
requestedNum, _ := strconv.Atoi(requested)
finalRequest = requestedNum
expiration := parts[4]
expirationNum, _ := strconv.Atoi(expiration)
finalExpiration = expirationNum
}
unix := strconv.FormatInt(time.Now().UTC().Unix(), 10) unix := strconv.FormatInt(time.Now().UTC().Unix(), 10)
unixNum, _ := strconv.Atoi(unix) unixNum, _ := strconv.Atoi(unix)
if requestedNum > expirationNum { if finalRequest > finalExpiration {
c.JSON(http.StatusUnauthorized, gin.H{"error": "Invalid OCBO Token Value"}) c.JSON(http.StatusUnauthorized, gin.H{"error": "Invalid OCBO Token Value"})
c.Abort() c.Abort()
return return
} }
if unixNum > expirationNum { if unixNum > finalExpiration {
c.JSON(http.StatusUnauthorized, gin.H{"error": "OCBO Token Expired"}) c.JSON(http.StatusUnauthorized, gin.H{"error": "OCBO Token Expired"})
c.Abort() c.Abort()
return return