소스 검색

Send access check fixes

Adjust checks for max access count, expiration date, and deletion date.
The date checks aren't that important, but the access count check
currently allows one more access than it should.
Jeremy Lin 4 년 전
부모
커밋
00d56d7295
1개의 변경된 파일6개의 추가작업 그리고 6개의 파일을 삭제
  1. 6 6
      src/api/core/sends.rs

+ 6 - 6
src/api/core/sends.rs

@@ -197,18 +197,18 @@ fn post_access(access_id: String, data: JsonUpcase<SendAccessData>, conn: DbConn
     };
 
     if let Some(max_access_count) = send.max_access_count {
-        if send.access_count > max_access_count {
+        if send.access_count >= max_access_count {
             err_code!("Max access count reached", 404);
         }
     }
 
     if let Some(expiration) = send.expiration_date {
-        if Utc::now().naive_utc() > expiration {
+        if Utc::now().naive_utc() >= expiration {
             err_code!("Send has expired", 404)
         }
     }
 
-    if Utc::now().naive_utc() > send.deletion_date {
+    if Utc::now().naive_utc() >= send.deletion_date {
         err_code!("Send has been deleted", 404)
     }
 
@@ -248,18 +248,18 @@ fn post_access_file(
     };
 
     if let Some(max_access_count) = send.max_access_count {
-        if send.access_count > max_access_count {
+        if send.access_count >= max_access_count {
             err_code!("Max access count reached", 404);
         }
     }
 
     if let Some(expiration) = send.expiration_date {
-        if Utc::now().naive_utc() > expiration {
+        if Utc::now().naive_utc() >= expiration {
             err_code!("Send has expired", 404)
         }
     }
 
-    if Utc::now().naive_utc() > send.deletion_date {
+    if Utc::now().naive_utc() >= send.deletion_date {
         err_code!("Send has been deleted", 404)
     }