Browse Source

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 năm trước cách đây
mục cha
commit
00d56d7295
1 tập tin đã thay đổi với 6 bổ sung6 xóa
  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)
     }