<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: securekeylib - error in compilation in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/securekeylib-error-in-compilation/m-p/1241829#M170504</link>
    <description>&lt;P&gt;I have solved some problems adapting symbol definitions in the Makefile.&lt;/P&gt;&lt;P&gt;Now I got the securekeylib compiled but I am stuck compiling the&lt;/P&gt;&lt;PRE&gt; secureobj_openssl_engine&lt;/PRE&gt;&lt;P&gt;It's the last step stated at&amp;nbsp;&lt;A href="https://source.codeaurora.org/external/imxsupport/imx_sec_apps/tree/enhanced-openssl/README.md" target="_self"&gt;https://source.codeaurora.org/external/imxsupport/imx_sec_apps/tree/enhanced-openssl/README.md&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;eng_secure_obj.c: In function ‘bind’:&lt;BR /&gt;eng_secure_obj.c:819:2: error: too few arguments to function ‘EC_KEY_METHOD_set_verify’&lt;BR /&gt;EC_KEY_METHOD_set_verify(secureobj_ec, secure_obj_ec_verify_sig);&lt;BR /&gt;I get :&lt;/P&gt;&lt;P&gt;^~~~~~~~~~~~~~~~~~~~~~~~&lt;/P&gt;&lt;P&gt;In file included from /home/develop/openssl/1.1.1b-r0/image/usr/include//openssl/engine.h:22,&lt;BR /&gt;from eng_secure_obj.c:16:&lt;BR /&gt;/home/develop/openssl/1.1.1b-r0/image/usr/include//openssl/ec.h:1312:6: note: declared here&lt;BR /&gt;void EC_KEY_METHOD_set_verify(EC_KEY_METHOD *meth,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am using the imx bsp 4.9.35 rather than what is stated in the readme where they use&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;4.14.98-2.0.0&lt;/PRE&gt;&lt;P&gt;could this be the cause of the problem ?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Mon, 08 Mar 2021 15:32:29 GMT</pubDate>
    <dc:creator>antonio_santagi</dc:creator>
    <dc:date>2021-03-08T15:32:29Z</dc:date>
    <item>
      <title>securekeylib - error in compilation</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/securekeylib-error-in-compilation/m-p/1241701#M170488</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&amp;nbsp;I am following the guide at :&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="https://source.codeaurora.org/external/imxsupport/imx_sec_apps/tree/enhanced-openssl/README.md" target="_blank"&gt;https://source.codeaurora.org/external/imxsupport/imx_sec_apps/tree/enhanced-openssl/README.md&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It is all good up to the point :&lt;/P&gt;&lt;PRE&gt;&lt;SPAN class="gu"&gt;###&lt;/SPAN&gt; To install library:

cd securekey_lib

make&lt;/PRE&gt;&lt;P&gt;when I try this,&amp;nbsp;I get these errors :&amp;nbsp;&lt;/P&gt;&lt;P&gt;cc1: error: /include: No such file or directory [-Werror=missing-include-dirs]&lt;BR /&gt;cc1: error: /include: No such file or directory [-Werror=missing-include-dirs]&lt;BR /&gt;src/securekey.c:10:10: fatal error: tee_client_api.h: No such file or directory&lt;BR /&gt;#include &amp;lt;tee_client_api.h&amp;gt;&lt;BR /&gt;^~~~~~~~~~~~~~~~~~&lt;/P&gt;&lt;P&gt;what does that "error: /include No such file or directory" refer to?&lt;/P&gt;&lt;P&gt;I checked the Makefile and added exported definition of CURDIR.&amp;nbsp;&lt;/P&gt;&lt;P&gt;is there anything else needed to define that is not in stated in the Readme instructions ?&lt;/P&gt;&lt;P&gt;I am sure OPTEE_CLIENT_EXPORT is set correctly.&lt;/P&gt;&lt;P&gt;In general I can build correctly other OP-TEE examples apps.&lt;/P&gt;&lt;P&gt;thank you&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 08 Mar 2021 10:43:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/securekeylib-error-in-compilation/m-p/1241701#M170488</guid>
      <dc:creator>antonio_santagi</dc:creator>
      <dc:date>2021-03-08T10:43:11Z</dc:date>
    </item>
    <item>
      <title>Re: securekeylib - error in compilation</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/securekeylib-error-in-compilation/m-p/1241829#M170504</link>
      <description>&lt;P&gt;I have solved some problems adapting symbol definitions in the Makefile.&lt;/P&gt;&lt;P&gt;Now I got the securekeylib compiled but I am stuck compiling the&lt;/P&gt;&lt;PRE&gt; secureobj_openssl_engine&lt;/PRE&gt;&lt;P&gt;It's the last step stated at&amp;nbsp;&lt;A href="https://source.codeaurora.org/external/imxsupport/imx_sec_apps/tree/enhanced-openssl/README.md" target="_self"&gt;https://source.codeaurora.org/external/imxsupport/imx_sec_apps/tree/enhanced-openssl/README.md&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;eng_secure_obj.c: In function ‘bind’:&lt;BR /&gt;eng_secure_obj.c:819:2: error: too few arguments to function ‘EC_KEY_METHOD_set_verify’&lt;BR /&gt;EC_KEY_METHOD_set_verify(secureobj_ec, secure_obj_ec_verify_sig);&lt;BR /&gt;I get :&lt;/P&gt;&lt;P&gt;^~~~~~~~~~~~~~~~~~~~~~~~&lt;/P&gt;&lt;P&gt;In file included from /home/develop/openssl/1.1.1b-r0/image/usr/include//openssl/engine.h:22,&lt;BR /&gt;from eng_secure_obj.c:16:&lt;BR /&gt;/home/develop/openssl/1.1.1b-r0/image/usr/include//openssl/ec.h:1312:6: note: declared here&lt;BR /&gt;void EC_KEY_METHOD_set_verify(EC_KEY_METHOD *meth,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am using the imx bsp 4.9.35 rather than what is stated in the readme where they use&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;4.14.98-2.0.0&lt;/PRE&gt;&lt;P&gt;could this be the cause of the problem ?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 08 Mar 2021 15:32:29 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/securekeylib-error-in-compilation/m-p/1241829#M170504</guid>
      <dc:creator>antonio_santagi</dc:creator>
      <dc:date>2021-03-08T15:32:29Z</dc:date>
    </item>
    <item>
      <title>Re: securekeylib - error in compilation</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/securekeylib-error-in-compilation/m-p/1241845#M170506</link>
      <description>&lt;P&gt;original reference to this topic is on application note AN12632 at :&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="https://www.nxp.com.cn/docs/en/application-note/AN12632.pdf" target="_self"&gt;https://www.nxp.com.cn/docs/en/application-note/AN12632.pdf&lt;/A&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 08 Mar 2021 16:31:36 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/securekeylib-error-in-compilation/m-p/1241845#M170506</guid>
      <dc:creator>antonio_santagi</dc:creator>
      <dc:date>2021-03-08T16:31:36Z</dc:date>
    </item>
    <item>
      <title>Re: securekeylib - error in compilation</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/securekeylib-error-in-compilation/m-p/1241863#M170509</link>
      <description>&lt;P&gt;checked the history of ec.h at&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="https://git.openssl.org/?p=openssl.git;a=history;f=include/openssl/ec.h;h=7978d96a34c693328cd0743c693eb5b19ed5b1b4;hb=4e9b720e90ec154c9708139e96ec0ff8e2796c82" target="_self"&gt;https://git.openssl.org/?p=openssl.git;a=history;f=include/openssl/ec.h;h=7978d96a34c693328cd0743c693eb5b19ed5b1b4;hb=4e9b720e90ec154c9708139e96ec0ff8e2796c82&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;and method has always been with these parameters, since the very beginning :&amp;nbsp;&lt;/P&gt;&lt;DIV class="diff add"&gt;+void&amp;nbsp;EC_KEY_METHOD_set_verify(EC_KEY_METHOD&amp;nbsp;*meth,&lt;/DIV&gt;&lt;DIV class="diff add"&gt;+&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int&amp;nbsp;(*verify)(int&amp;nbsp;type,&amp;nbsp;const&amp;nbsp;unsigned&lt;/DIV&gt;&lt;DIV class="diff add"&gt;+&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;char&amp;nbsp;*dgst,&amp;nbsp;int&amp;nbsp;dgst_len,&lt;/DIV&gt;&lt;DIV class="diff add"&gt;+&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;const&amp;nbsp;unsigned&amp;nbsp;char&amp;nbsp;*sigbuf,&lt;/DIV&gt;&lt;DIV class="diff add"&gt;+&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int&amp;nbsp;sig_len,&amp;nbsp;EC_KEY&amp;nbsp;*eckey),&lt;/DIV&gt;&lt;DIV class="diff add"&gt;+&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int&amp;nbsp;(*verify_sig)(const&amp;nbsp;unsigned&amp;nbsp;char&amp;nbsp;*dgst,&lt;/DIV&gt;&lt;DIV class="diff add"&gt;+&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int&amp;nbsp;dgst_len,&lt;/DIV&gt;&lt;DIV class="diff add"&gt;+&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;const&amp;nbsp;ECDSA_SIG&amp;nbsp;*sig,&lt;/DIV&gt;&lt;DIV class="diff add"&gt;+&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;EC_KEY&amp;nbsp;*eckey));&lt;/DIV&gt;&lt;DIV class="diff add"&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV class="diff add"&gt;so, how can the&amp;nbsp;eng_secure_obj.c file&amp;nbsp;&lt;/DIV&gt;&lt;DIV class="diff add"&gt;at&amp;nbsp;&lt;A href="https://source.codeaurora.org/external/imxsupport/imx_sec_apps/tree/enhanced-openssl/secureobj_openssl_engine/eng_secure_obj.c" target="_self"&gt;https://source.codeaurora.org/external/imxsupport/imx_sec_apps/tree/enhanced-openssl/secureobj_openssl_engine/eng_secure_obj.c&lt;/A&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV class="diff add"&gt;call the method with non matching number of parameters ?&lt;/DIV&gt;&lt;DIV class="diff add"&gt;&amp;nbsp;&lt;/DIV&gt;</description>
      <pubDate>Mon, 08 Mar 2021 16:29:46 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/securekeylib-error-in-compilation/m-p/1241863#M170509</guid>
      <dc:creator>antonio_santagi</dc:creator>
      <dc:date>2021-03-08T16:29:46Z</dc:date>
    </item>
    <item>
      <title>Re: securekeylib - error in compilation</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/securekeylib-error-in-compilation/m-p/1241949#M170520</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;It is an older version, the recommendation is to use the one stated in the readme.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;BR,&lt;/P&gt;
&lt;P&gt;Ivan.&lt;/P&gt;</description>
      <pubDate>Mon, 08 Mar 2021 19:24:19 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/securekeylib-error-in-compilation/m-p/1241949#M170520</guid>
      <dc:creator>IvanRuiz</dc:creator>
      <dc:date>2021-03-08T19:24:19Z</dc:date>
    </item>
    <item>
      <title>Re: securekeylib - error in compilation</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/securekeylib-error-in-compilation/m-p/1242349#M170556</link>
      <description>&lt;P&gt;thank you, but versions I am using are more recent, so should I revert to older version ?I think we can't do that for some reasons.&lt;/P&gt;</description>
      <pubDate>Tue, 09 Mar 2021 08:22:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/securekeylib-error-in-compilation/m-p/1242349#M170556</guid>
      <dc:creator>antonio_santagi</dc:creator>
      <dc:date>2021-03-09T08:22:15Z</dc:date>
    </item>
    <item>
      <title>Re: securekeylib - error in compilation</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/securekeylib-error-in-compilation/m-p/1242469#M170564</link>
      <description>&lt;P&gt;Hi,&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Please see also:&amp;nbsp;&lt;A href="https://www.nxp.com/docs/en/application-note/AN12838.pdf" target="_blank"&gt;https://www.nxp.com/docs/en/application-note/AN12838.pdf.&amp;nbsp;&lt;/A&gt;Depending on your use-case, it can be a good option.&lt;/P&gt;
&lt;P&gt;Regards,&lt;/P&gt;
&lt;P&gt;Andreea&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 09 Mar 2021 10:53:40 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/securekeylib-error-in-compilation/m-p/1242469#M170564</guid>
      <dc:creator>andreea-brandusa_proca</dc:creator>
      <dc:date>2021-03-09T10:53:40Z</dc:date>
    </item>
    <item>
      <title>Re: securekeylib - error in compilation</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/securekeylib-error-in-compilation/m-p/1261308#M172526</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;I stuck in a similar way of Antonio but&lt;BR /&gt;I'm using exactly the same version described in the readme:&lt;BR /&gt;&lt;A href="https://source.codeaurora.org/external/imxsupport/imx_sec_apps/tree/enhanced-openssl/README.md" target="_self" rel="nofollow noopener noreferrer"&gt;https://source.codeaurora.org/external/imxsupport/imx_sec_apps/tree/enhanced-openssl/README.md&amp;nbsp;&lt;/A&gt;so:&lt;BR /&gt;- IMX BSP version imx-4.14.98-2.0.0_ga&lt;BR /&gt;- openssl 1.0.2p-r0&lt;/P&gt;&lt;P&gt;and secureobj_openssl_engine give errors when compiling:&lt;/P&gt;&lt;P&gt;main problem is secure_obj_ec_sign() and secure_obj_ec_verify_sig() have different number of parameter rather then the function pointer prototype described in the ecdsa.h header in the openssl library.&lt;/P&gt;&lt;P&gt;from ecdsa.h:&lt;/P&gt;&lt;P&gt;void ECDSA_METHOD_set_sign(&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ECDSA_METHOD *ecdsa_method,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ECDSA_SIG *(*ecdsa_do_sign (const unsigned char&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *dgst, int dgst_len,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; const BIGNUM *inv,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; const BIGNUM *rp,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EC_KEY *eckey)&lt;BR /&gt;);&lt;/P&gt;&lt;P&gt;void ECDSA_METHOD_set_verify(&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ECDSA_METHOD *ecdsa_method,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; int (*ecdsa_do_verify) (const unsigned char&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *dgst, int dgst_len,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; const ECDSA_SIG *sig,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EC_KEY *eckey)&lt;BR /&gt;);&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;from the eng_secure_obj.c:&lt;BR /&gt;&lt;BR /&gt;static int secure_obj_ec_sign (&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int type, const unsigned char *dgst,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int dlen, unsigned char *sig,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; unsigned int *siglen,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; const BIGNUM *kinv, const BIGNUM *r,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EC_KEY *eckey&lt;BR /&gt;)&lt;BR /&gt;&lt;BR /&gt;static int secure_obj_ec_verify_sig(&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; int type,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; const unsigned char *dgst,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; int dgst_len,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; const unsigned char *sigbuf,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; int sig_len,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; EC_KEY *eckey&lt;BR /&gt;)&lt;BR /&gt;&lt;BR /&gt;So functions paramenters don't mach....&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;What are exactly the condicion where the openssl engine is build?&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;In attachment the compiler output:&lt;BR /&gt;&lt;BR /&gt;| Building Secure Object OpenSSL Engine App&lt;BR /&gt;| aarch64-poky-linux-gcc --sysroot=/opt/kas/imx-linux-sumo/build-xwayland/tmp/work/aarch64-poky-linux/securestorage-ta/r2-r0/recipe-sysroot -I/opt/kas/imx-linux-sumo/build-xwayland/tmp/work/aarch64-poky-linux/securestorage-ta/r2-r0/recipe-sysroot/usr/include/include -o app/sobj_eng_app app/sobj_eng_app.c -L -lssl -lcrypto&lt;BR /&gt;| eng_secure_obj.c: In function 'secure_obj_ec_verify_sig':&lt;BR /&gt;| eng_secure_obj.c:345:27: warning: passing argument 2 of 'ECDSA_verify' makes pointer from integer without a cast [-Wint-conversion]&lt;BR /&gt;| ret = ECDSA_verify(type, *dgst, dgst_len, *sigbuf,&lt;BR /&gt;| ^&lt;BR /&gt;| In file included from /opt/kas/imx-linux-sumo/build-xwayland/tmp/work/aarch64-poky-linux/securestorage-ta/r2-r0/recipe-sysroot/usr/include/openssl/engine.h:89:0,&lt;BR /&gt;| from eng_secure_obj.c:16:&lt;BR /&gt;| /opt/kas/imx-linux-sumo/build-xwayland/tmp/work/aarch64-poky-linux/securestorage-ta/r2-r0/recipe-sysroot/usr/include/openssl/ecdsa.h:221:5: note: expected 'const unsigned char *' but argument is of type 'unsigned char'&lt;BR /&gt;| int ECDSA_verify(int type, const unsigned char *dgst, int dgstlen,&lt;BR /&gt;| ^~~~~~~~~~~~&lt;BR /&gt;| eng_secure_obj.c:345:44: warning: passing argument 4 of 'ECDSA_verify' makes pointer from integer without a cast [-Wint-conversion]&lt;BR /&gt;| ret = ECDSA_verify(type, *dgst, dgst_len, *sigbuf,&lt;BR /&gt;| ^&lt;BR /&gt;| In file included from /opt/kas/imx-linux-sumo/build-xwayland/tmp/work/aarch64-poky-linux/securestorage-ta/r2-r0/recipe-sysroot/usr/include/openssl/engine.h:89:0,&lt;BR /&gt;| from eng_secure_obj.c:16:&lt;BR /&gt;| /opt/kas/imx-linux-sumo/build-xwayland/tmp/work/aarch64-poky-linux/securestorage-ta/r2-r0/recipe-sysroot/usr/include/openssl/ecdsa.h:221:5: note: expected 'const unsigned char *' but argument is of type 'unsigned char'&lt;BR /&gt;| int ECDSA_verify(int type, const unsigned char *dgst, int dgstlen,&lt;BR /&gt;| ^~~~~~~~~~~~&lt;BR /&gt;| eng_secure_obj.c: In function 'bind':&lt;BR /&gt;| eng_secure_obj.c:763:38: warning: passing argument 2 of 'ECDSA_METHOD_set_sign' from incompatible pointer type [-Wincompatible-pointer-types]&lt;BR /&gt;| ECDSA_METHOD_set_sign(secureobj_ec, secure_obj_ec_sign);&lt;BR /&gt;| ^~~~~~~~~~~~~~~~~~&lt;BR /&gt;| In file included from /opt/kas/imx-linux-sumo/build-xwayland/tmp/work/aarch64-poky-linux/securestorage-ta/r2-r0/recipe-sysroot/usr/include/openssl/engine.h:89:0,&lt;BR /&gt;| from eng_secure_obj.c:16:&lt;BR /&gt;| /opt/kas/imx-linux-sumo/build-xwayland/tmp/work/aarch64-poky-linux/securestorage-ta/r2-r0/recipe-sysroot/usr/include/openssl/ecdsa.h:262:6: note: expected 'ECDSA_SIG * (*)(const unsigned char *, int, const BIGNUM *, const BIGNUM *, EC_KEY *) {aka struct ECDSA_SIG_st * (*)(const unsigned char *, int, const struct bignum_st *, const struct bignum_st *, struct ec_key_st *)}' but argument is of type 'int (*)(int, const unsigned char *, int, unsigned char *, unsigned int *, const BIGNUM *, const BIGNUM *, EC_KEY *) {aka int (*)(int, const unsigned char *, int, unsigned char *, unsigned int *, const struct bignum_st *, const struct bignum_st *, struct ec_key_st *)}'&lt;BR /&gt;| void ECDSA_METHOD_set_sign(ECDSA_METHOD *ecdsa_method,&lt;BR /&gt;| ^~~~~~~~~~~~~~~~~~~~~&lt;BR /&gt;| eng_secure_obj.c:765:40: warning: passing argument 2 of 'ECDSA_METHOD_set_verify' from incompatible pointer type [-Wincompatible-pointer-types]&lt;BR /&gt;| /(secureobj_ec, secure_obj_ec_verify_sig);&lt;BR /&gt;| ^~~~~~~~~~~~~~~~~~~~~~~~&lt;BR /&gt;| In file included from /opt/kas/imx-linux-sumo/build-xwayland/tmp/work/aarch64-poky-linux/securestorage-ta/r2-r0/recipe-sysroot/usr/include/openssl/engine.h:89:0,&lt;BR /&gt;| from eng_secure_obj.c:16:&lt;BR /&gt;| /opt/kas/imx-linux-sumo/build-xwayland/tmp/work/aarch64-poky-linux/securestorage-ta/r2-r0/recipe-sysroot/usr/include/openssl/ecdsa.h:285:6: note: expected 'int (*)(const unsigned char *, int, const ECDSA_SIG *, EC_KEY *) {aka int (*)(const unsigned char *, int, const struct ECDSA_SIG_st *, struct ec_key_st *)}' but argument is of type 'int (*)(int, const unsigned char *, int, const unsigned char *, int, EC_KEY *) {aka int (*)(int, const unsigned char *, int, const unsigned char *, int, struct ec_key_st *)}'&lt;BR /&gt;| void ECDSA_METHOD_set_verify(ECDSA_METHOD *ecdsa_method,&lt;BR /&gt;| ^~~~~~~~~~~~~~~~~~~~~~~&lt;BR /&gt;| aarch64-poky-linux-gcc --sysroot=/opt/kas/imx-linux-sumo/build-xwayland/tmp/work/aarch64-poky-linux/securestorage-ta/r2-r0/recipe-sysroot -shared -fPIC -o libeng_secure_obj.so *.o -lpthread -L -lcrypto -L../SecureKey_Lib/out/securekey_lib -lsecure_obj&lt;BR /&gt;| /opt/kas/imx-linux-sumo/build-xwayland/tmp/work/aarch64-poky-linux/securestorage-ta/r2-r0/recipe-sysroot-native/usr/bin/aarch64-poky-linux/../../libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/7.3.0/ld: cannot find -lsecure_obj&lt;BR /&gt;| collect2: error: ld returned 1 exit status&lt;BR /&gt;| Makefile:8: recipe for target 'engine' failed&lt;BR /&gt;| make: *** [engine] Error 1&lt;BR /&gt;| ERROR: oe_runmake failed&lt;BR /&gt;| WARNING: exit code 1 from a shell command.&lt;BR /&gt;| ERROR: Function failed: do_compile (log file is located at /opt/kas/imx-linux-sumo/build-xwayland/tmp/work/aarch64-poky-linux/securestorage-ta/r2-r0/temp/log.do_compile.407)&lt;BR /&gt;ERROR: Task (/opt/kas/imx-linux-sumo/sources/meta-teox/recipes-security/optee-imx/securestorage-ta.bb:do_compile) failed with exit code '1'&lt;/P&gt;</description>
      <pubDate>Tue, 13 Apr 2021 13:16:58 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/securekeylib-error-in-compilation/m-p/1261308#M172526</guid>
      <dc:creator>matteo-facchinetti</dc:creator>
      <dc:date>2021-04-13T13:16:58Z</dc:date>
    </item>
    <item>
      <title>Re: securekeylib - error in compilation</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/securekeylib-error-in-compilation/m-p/1272970#M173681</link>
      <description>&lt;P&gt;I have also fallen into the NXP "trap" using enhanced-openssl, saw it in the Video but then it is hell to get parts to compile. But now that I get exactly the same c-code compile errors that you others have. How can any of this ever been used? Passing in a char instead of a pointer e.g - how can that ever have worked? And then the set_verify() lacking the second callback function parameter.&lt;/P&gt;&lt;P&gt;Even if i get this all working eventually it seems just be a proof of concept but we wanted it for production.&lt;/P&gt;</description>
      <pubDate>Thu, 06 May 2021 11:26:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/securekeylib-error-in-compilation/m-p/1272970#M173681</guid>
      <dc:creator>petter-osterlund</dc:creator>
      <dc:date>2021-05-06T11:26:59Z</dc:date>
    </item>
  </channel>
</rss>

