On Thu, Jan 23, 2014, Rogrio Saulo wrote:
> Hi all,
>
> Sorry if it as a stupid question but...
>
> I'm trying to add an custom policy qualifier attribute with another NID
> different from NID_id_qt_cps to an PKCS7 envelope.
>
> If I use the NID_id_qt_cps all works fine, BUT if I change the NID to another
> created by OBJ_create the program crashes at thei2d_POLICYINFO function.
>
> I cannot use the POLICYQUALINFO object with another NID different from
> NID_id_qt_cps??
>
> There is my working code :
>
> ASN1_OBJECT *polID;
> POLICYINFO *pInfo = POLICYINFO_new();
> polID = OBJ_txt2obj("2.16.76.1.7.1.2.2.1", 0);
> pInfo->policyid = polID;
> POLICYQUALINFO *pQInfo;
> pQInfo = POLICYQUALINFO_new();
> pInfo->qualifiers = sk_POLICYQUALINFO_new_null();
> pQInfo = POLICYQUALINFO_new();
> sk_POLICYQUALINFO_push(pInfo->qualifiers, pQInfo);
> pQInfo->pqualid = OBJ_nid2obj(NID_id_qt_cps);
> pQInfo->d.cpsuri = M_ASN1_IA5STRING_new();
> char *urlPolitica = "http://politicas.icpbrasil.gov.br/PA_AD_RT_v2_1.der";
> ASN1_STRING_set(pQInfo->d.cpsuri, urlPolitica, strlen(urlPolitica));
> POLICY_add_attrib(si, pInfo); // WORKS FINE
>
> If I change the line :
>
> pQInfo->pqualid = OBJ_nid2obj(NID_id_qt_cps);
>
> With :
>
> int NID_id_spq_ets_uri = OBJ_create("1.2.840.113549.1.9.16.5.1",
> "id_spq_ets_uri", "id_spq_ets_uri");
> pQInfo->pqualid = OBJ_nid2obj(NID_id_spq_ets_uri);
>
> The program crashes at function POLICY_add_attrib in THIS LINE :
>
> int len = i2d_POLICYINFO(pInfo, NULL);
>
> What I'm doing wrong???
>
There isn't an OpenSSL function call POLICY_add_attrib.
Steve.
--
Dr Stephen N. Henson. OpenSSL project core developer.
Commercial tech support now available see: http://www.openssl.org
______________________________________________________________________
OpenSSL Project http://www.openssl.org
User Support Mailing List [email protected]
Automated List Manager [email protected]