libidav/crypto.c

changeset 747
efbd59642577
parent 728
35a421f441d5
child 789
378b5ab86f77
--- a/libidav/crypto.c	Sun Apr 16 14:12:24 2023 +0200
+++ b/libidav/crypto.c	Fri Apr 21 21:25:32 2023 +0200
@@ -1487,26 +1487,26 @@
 
 
 
-UcxBuffer* aes_encrypt_buffer(UcxBuffer *in, DavKey *key) {
-    UcxBuffer *encbuf = ucx_buffer_new(
-            NULL,
-            in->size+16,
-            UCX_BUFFER_AUTOEXTEND);
+CxBuffer* aes_encrypt_buffer(CxBuffer *in, DavKey *key) {
+    CxBuffer *encbuf = cxBufferCreate(NULL, in->size, cxDefaultAllocator, CX_BUFFER_FREE_CONTENTS|CX_BUFFER_AUTO_EXTEND);
+    if(!encbuf) {
+        return NULL;
+    }
     
     AESEncrypter *enc = aes_encrypter_new(
             key,
             in,
-            (dav_read_func)ucx_buffer_read,
+            (dav_read_func)cxBufferRead,
             NULL);
     if(!enc) {
-        ucx_buffer_free(encbuf);
+        cxBufferFree(encbuf);
         return NULL;
     }
     
     char buf[1024];
     size_t r;
     while((r = aes_read(buf, 1, 1024, enc)) > 0) {
-        ucx_buffer_write(buf, 1, r, encbuf);
+        cxBufferWrite(buf, 1, r, encbuf);
     }
     aes_encrypter_close(enc);
     
@@ -1514,15 +1514,19 @@
     return encbuf;
 }
 
-UcxBuffer* aes_decrypt_buffer(UcxBuffer *in, DavKey *key) {
-    UcxBuffer *decbuf = ucx_buffer_new(
-            NULL,
-            in->size,
-            UCX_BUFFER_AUTOEXTEND);
+CxBuffer* aes_decrypt_buffer(CxBuffer *in, DavKey *key) {
+    CxBuffer *decbuf = cxBufferCreate(NULL, in->size, cxDefaultAllocator, CX_BUFFER_FREE_CONTENTS|CX_BUFFER_AUTO_EXTEND);
+    if(!decbuf) {
+        return NULL;
+    }
     AESDecrypter *dec = aes_decrypter_new(
             key,
             decbuf,
-            (dav_write_func)ucx_buffer_write);
+            (dav_write_func)cxBufferWrite);
+    if(!dec) {
+        cxBufferFree(decbuf);
+        return NULL;
+    }
     
     aes_write(in->space, 1, in->size, dec);
     aes_decrypter_shutdown(dec);

mercurial