Jump to content

dev botao

Erro ao carregar o certificado A1 via DadosPFX - Linux


Go to solution Solved by Rafael Dias,
  • Este tópico foi criado há 1851 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Com as últimas atualizações trocamos os Add por New conforme necessário e a carga do Certifcado A1 via DadosPFX parou de funcionar.

Pelo que observei o erro está ocorrendo no arquivo ACBr/Fontes/ACBrDFe/ACBrDFeOpenSSL.pas na função GetNotAfter() que passou a dar erro na seguinte linha:

function GetNotAfter( cert: pX509 ): TDateTime;
var
 Validade: String;
 notAfter: PASN1_TIME;
begin
 notAfter := cert^.cert_info^.validity^.notAfter;
 Validade := {$IFDEF DELPHIXE4_UP}AnsiStrings.{$ENDIF}StrPas( PAnsiChar(notAfter^.data) );  <===== ERRO AQUI
 SetLength(Validade, notAfter^.length);
 Validade := OnlyNumber(Validade);
   if notAfter^.asn1_type = V_ASN1_UTCTIME then  // anos com 2 dígitos
   Validade :=  LeftStr(IntToStrZero(YearOf(Now),4),2) + Validade;
   Result := StoD(Validade);
end;

Estamos usando Linux Ubuntu 18.04 LTS com Lazarus 2.0.2, fontes do ACBr direto do SVN e libxmlsec1 1.2.28 instalada diretamente dos fontes.

Este aplicativo PDV (com TEF) está em produção há cerca de 2 anos, a versão que está rodando atualmente tem uns 2 meses, ao tentar simplesmente compilar após um "svn update" no ACBr ela parou de funcionar. A única alteração que fizemos nos nossos fontes foi trocar os Add (que estavam deprecated) por New onde necessário. No ambiente, além de atualizar o ACBr atualizamos apenas a libxmlsec1 (pois a do Ubuntu vem danificada).

Link to comment
Share on other sites

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.

The popup will be closed in 10 seconds...