1 --- gst-plugins-bad-0.10.23/ext/apexsink/gstapexraop.c~ 2018-09-22 17:27:06.000000000 +0200
2 +++ gst-plugins-bad-0.10.23/ext/apexsink/gstapexraop.c 2018-09-22 17:28:24.899555435 +0200
3 @@ -676,7 +676,7 @@ gst_apexraop_write (GstApExRAOP * con, g
4 guchar *buffer, *frame_data;
6 gint bit_offset, byte_offset, i, out_len, res;
7 - EVP_CIPHER_CTX aes_ctx;
8 + EVP_CIPHER_CTX *aes_ctx;
9 _GstApExRAOP *conn = (_GstApExRAOP *) con;
10 const int frame_header_size = conn->generation == GST_APEX_GENERATION_ONE
11 ? GST_APEX_RAOP_FRAME_HEADER_SIZE : GST_APEX_RTP_FRAME_HEADER_SIZE;
12 @@ -736,13 +736,13 @@ gst_apexraop_write (GstApExRAOP * con, g
13 &bit_offset, &byte_offset);
16 - EVP_CIPHER_CTX_init (&aes_ctx);
17 - EVP_CipherInit_ex (&aes_ctx, EVP_aes_128_cbc (), NULL, conn->aes_ky,
18 + aes_ctx = EVP_CIPHER_CTX_new ();
19 + EVP_CipherInit_ex (aes_ctx, EVP_aes_128_cbc (), NULL, conn->aes_ky,
20 conn->aes_iv, AES_ENCRYPT);
21 - EVP_CipherUpdate (&aes_ctx, frame_data, &out_len, frame_data, /*( */
22 + EVP_CipherUpdate (aes_ctx, frame_data, &out_len, frame_data, /*( */
23 GST_APEX_RAOP_ALAC_HEADER_SIZE +
24 length /*) / AES_BLOCK_SIZE * AES_BLOCK_SIZE */ );
25 - EVP_CIPHER_CTX_cleanup (&aes_ctx);
26 + EVP_CIPHER_CTX_free (aes_ctx);
29 gst_apexraop_send (conn->data_sd, buffer,
30 --- gst-plugins-bad-0.10.23/ext/apexsink/gstapexraop.c~ 2018-09-22 17:32:17.000000000 +0200
31 +++ gst-plugins-bad-0.10.23/ext/apexsink/gstapexraop.c 2018-09-22 17:41:22.253666922 +0200
32 @@ -258,7 +258,7 @@ gst_apexraop_connect (GstApExRAOP * con)
34 guchar buf[4 + 8 + 16];
38 struct sockaddr_in ioaddr;
40 GstRTSPStatusCode res;
41 @@ -292,9 +292,8 @@ gst_apexraop_connect (GstApExRAOP * con)
44 mod = g_base64_decode (GST_APEX_RAOP_RSA_PUBLIC_MOD, &size);
45 - rsa->n = BN_bin2bn (mod, size, NULL);
46 - exp = g_base64_decode (GST_APEX_RAOP_RSA_PUBLIC_EXP, &size);
47 - rsa->e = BN_bin2bn (exp, size, NULL);
48 + exp = g_base64_decode (GST_APEX_RAOP_RSA_PUBLIC_EXP, &size2);
49 + RSA_set0_key(rsa, BN_bin2bn (mod, size, NULL), BN_bin2bn (exp, size2, NULL), NULL);
51 RSA_public_encrypt (AES_BLOCK_SIZE, conn->aes_ky, rsakey, rsa,
52 RSA_PKCS1_OAEP_PADDING);