Petri Hintukainen pushed to branch master at VideoLAN / libaacs


Commits:
7e49f7b3 by John Doe at 2020-06-21T03:07:34+03:00
Cache MEDIA KEY

- - - - -


1 changed file:

- src/libaacs/aacs.c


Changes:

=====================================
src/libaacs/aacs.c
=====================================
@@ -562,6 +562,12 @@ static int _calc_mk(AACS *aacs, uint8_t *mk, pk_list *pkl, 
dk_list *dkl)
         return AACS_SUCCESS;
     }
 
+    /* get cached mk */
+    if (!aacs->no_cache && keycache_find("mk", aacs->disc_id, mk, 16)) {
+        BD_DEBUG(DBG_AACS, "Using cached MK\n");
+        return AACS_SUCCESS;
+    }
+
     BD_DEBUG(DBG_AACS, "Calculate media key...\n");
 
     mkb = _mkb_open(aacs);
@@ -586,6 +592,12 @@ static int _calc_mk(AACS *aacs, uint8_t *mk, pk_list *pkl, 
dk_list *dkl)
 
     if (result == AACS_SUCCESS) {
         memcpy(aacs->mk, mk, sizeof(aacs->mk));
+        /* cache mk */
+        if (!aacs->no_cache) {
+            if (memcmp(aacs->disc_id, empty_key, sizeof(aacs->disc_id))) {
+                keycache_save("mk", aacs->disc_id, mk, 16);
+            }
+        }
     }
 
     mkb_close(mkb);



View it on GitLab: 
https://code.videolan.org/videolan/libaacs/-/commit/7e49f7b3f3274ef2d4009e5335775b789eac5c8f

-- 
View it on GitLab: 
https://code.videolan.org/videolan/libaacs/-/commit/7e49f7b3f3274ef2d4009e5335775b789eac5c8f
You're receiving this email because of your account on code.videolan.org.


_______________________________________________
libaacs-devel mailing list
libaacs-devel@videolan.org
https://mailman.videolan.org/listinfo/libaacs-devel

Reply via email to