Page 1 of 3

HBSSL CON FUNCIONES DE DIEGO FAZIO INCLUIDAS

PostPosted: Thu Sep 16, 2021 12:06 pm
by rterraz
Hola amigos,
Necesito, si alguien la tiene, la HBSSL.LIB para Harbour/Borland con las funciones de Diego Fazio ( HB_CMS_SIGNFILE, HB_SignFile() ) incluidas para poder firmar certificados digitales.
He visto que nuestro amigo BAXAJAUN las ha logrado hacer y le he solicitado si me las podria enviar pero aún no he tenido respuesta de el.
Como estoy muy necesitado de ella para poder seguir con el desarrollo que estoy construyendo, agradeceria mucho a cualquiera de ustedes que la tenga disponible me la pueda facilitar a: rterraz@yahoo.com.ar
PD: He intentado construirlas desde las contrib de harbour sin exito!

Muchas gracias a todos por la ayuda

Re: HBSSL CON FUNCIONES DE DIEGO FAZIO INCLUIDAS

PostPosted: Thu Sep 16, 2021 12:14 pm
by Antonio Linares

Re: HBSSL CON FUNCIONES DE DIEGO FAZIO INCLUIDAS

PostPosted: Thu Sep 16, 2021 12:19 pm
by Baxajaun
Hola Raúl !

Yo las he construido con MinGW, si es así como las necesitas, te las envío sin problemas.

La necesitas para Harbour construido con MinGW ? Con Borland no he sido capaz de crearla.

Muchas gracias.

Perdona, que haya tardado en contestar, pero ahora estoy liado con otras historias y he pasado poco por el foro.

Saludos,

Re: HBSSL CON FUNCIONES DE DIEGO FAZIO INCLUIDAS

PostPosted: Thu Sep 16, 2021 12:29 pm
by Antonio Linares
Raul,

los ficheros cms.c y cms_singfile_pfx.c compilan correctamente de esta forma:

c:\bcc7\bin\bcc32 -c -Ic:\harbour\include;c:\harbour\contrib\hbssl;c:\openssl\include cms.c
c:\bcc7\bin\bcc32 -c -Ic:\harbour\include;c:\harbour\contrib\hbssl;c:\openssl\includecms_singfile_pfx.c

la distribución que nosotros proporcionamos de Harbour ya include todo lo demás

con esos dos OBJs ya tienes la libreria. No lo he probado, pero debería funcionar con este Harbour:
https://github.com/FiveTechSoft/Harbour_builder/blob/master/harbour_win32_bcc_2020_10_19.zip

Re: HBSSL CON FUNCIONES DE DIEGO FAZIO INCLUIDAS

PostPosted: Thu Sep 16, 2021 1:35 pm
by Baxajaun
Muchas gracias Antonio !

Saludos,

Re: HBSSL CON FUNCIONES DE DIEGO FAZIO INCLUIDAS

PostPosted: Thu Sep 16, 2021 1:42 pm
by rterraz
MUCHAS GRACIAS Antonio y Baxajaun por las respuestas y la ayuda!!!
lo pruebo a ver si aqui en Argentina me funciona
Saludos

Re: HBSSL CON FUNCIONES DE DIEGO FAZIO INCLUIDAS

PostPosted: Thu Sep 16, 2021 4:49 pm
by rterraz
Hola Antonio
He probado compilar los archivos con los comando que me enviaste y me estan dando este error en los dos
Embarcadero C++ 7.00 for Win32 Copyright (c) 1993-2015 Embarcadero Technologies, Inc.
cms_SignFile_pfx.c:
Error E2293 c:\openssl-win32\include\openssl/cms.h 208: ) expected
Error E2293 c:\openssl-win32\include\openssl/cms.h 273: ) expected
Error E2293 c:\openssl-win32\include\openssl/cms.h 355: ) expected
Error E2293 c:\openssl-win32\include\openssl/cms.h 364: ) expected
*** 4 errors in Compile ***

los paths estan bien y no logro entender que pasa, me puedes orientar

muchas gracias

Re: HBSSL CON FUNCIONES DE DIEGO FAZIO INCLUIDAS

PostPosted: Thu Sep 16, 2021 8:51 pm
by horacio
Perdón que me meta, es para factura electrónica-Afip?

Saludos

Re: HBSSL CON FUNCIONES DE DIEGO FAZIO INCLUIDAS

PostPosted: Thu Sep 16, 2021 10:21 pm
by cmsoft
Raul, la ultima barra del include esta al revez.
Por el resto, el path coincide...

Re: HBSSL CON FUNCIONES DE DIEGO FAZIO INCLUIDAS

PostPosted: Fri Sep 17, 2021 12:57 am
by rterraz
hola amigos,
Horacio a tu pregunta, si, es para facturas electronicas a AFIP yo lo tengo funcionando con el OpenSSL pero lo llamo desde CMD y no me gusta para nada el pantallazo que hace el DOS. Por eso estoy tratando de usar una funcion que firme el certificado y que sea nativa. En eso estoy...pidiendo ayuda a los 4 vientos :D
CmSoft, a tu pregunta, no entiendo que barra del include decis que está mal asi los llama en los fuentes de las funciones que quiero compilar
#include "hbssl.h"
#include <openssl/pem.h>
#include <openssl/err.h>
#include <openssl/pkcs12.h>
#include <openssl/cms.h>

HB_FUNC( HB_CMS_SIGNFILE_PFX )
{
// HB_SignFile( Archivo a firmar, Archivo .pfx, clave, Archivo Firmado)
BIO *in = NULL, *out = NULL;
CMS_ContentInfo *cms = NULL;
CMS_SignerInfo *si;
int flags = CMS_PARTIAL;
X509 *x509;
EVP_PKEY *priKey;
este es parte del codigo de la funcion, a los include los llama como ves...no estoy seguro pero creo que en 'C' se escriben asi, tendre que ver si no estan al reves :(

saludos a ambos

Re: HBSSL CON FUNCIONES DE DIEGO FAZIO INCLUIDAS

PostPosted: Fri Sep 17, 2021 10:37 am
by Antonio Linares
Raul,

Aqui tienes los ficheros y sus respectivos OBJs con los que puedes hacer una lib o simplemente enlazarlos al construir tu EXE:

https://github.com/FiveTechSoft/FWH_tools/blob/master/Raul_signfile.zip

Re: HBSSL CON FUNCIONES DE DIEGO FAZIO INCLUIDAS

PostPosted: Fri Sep 17, 2021 1:07 pm
by rterraz
UN GRANDE ANTONIO !!!
Siempre tan atento y servicial y ahorrándonos muchas horas de trabajo...
Aguante FWH :D :D :D
Abrazo desde Argentina

Re: HBSSL CON FUNCIONES DE DIEGO FAZIO INCLUIDAS

PostPosted: Fri Sep 17, 2021 2:26 pm
by Antonio Linares
A ver si funcionan o falta algo :-)

un abrazo

Re: HBSSL CON FUNCIONES DE DIEGO FAZIO INCLUIDAS

PostPosted: Fri Sep 17, 2021 4:02 pm
by rterraz
Antonio
Hice una pequeña lib con los obj que me mandaste, lo agregué en el .MAK , agregue #include 'hssl.ch' en el prg y lo compilé
me da estos errores, evidentemente son funciones que yo no tengo ! podria decirme donde se encuentran ?
MAKE Version 5.41 Copyright (c) 1987, 2014 Embarcadero Technologies, Inc.
c:\bcc7\bin\ilink32.exe -Gn -aa -Tpe -s -I.\OBJ @make.tmp
Turbo Incremental Link 6.70 Copyright (c) 1997-2014 Embarcadero Technologies, Inc.
Error: Unresolved external '_HB_FUN_SSL_INI' referenced from C:\WINFAR64\OBJ\WINFACEL.OBJ
Error: Unresolved external '_OPENSSL_init_crypto' referenced from C:\HB32\LIB\SIGNFILE.LIB|cms
Error: Unresolved external '_PEM_read_bio_X509' referenced from C:\HB32\LIB\SIGNFILE.LIB|cms
Error: Unresolved external '_PEM_read_bio_PrivateKey' referenced from C:\HB32\LIB\SIGNFILE.LIB|cms
Error: Unresolved external '_X509_check_private_key' referenced from C:\HB32\LIB\SIGNFILE.LIB|cms
Error: Unresolved external '_CMS_sign' referenced from C:\HB32\LIB\SIGNFILE.LIB|cms
Error: Unresolved external '_EVP_sha1' referenced from C:\HB32\LIB\SIGNFILE.LIB|cms
Error: Unresolved external '_CMS_add1_signer' referenced from C:\HB32\LIB\SIGNFILE.LIB|cms
Error: Unresolved external '_CMS_final' referenced from C:\HB32\LIB\SIGNFILE.LIB|cms
Error: Unresolved external '_BIO_new_file' referenced from C:\HB32\LIB\SIGNFILE.LIB|cms
Error: Unresolved external '_BIO_ctrl' referenced from C:\HB32\LIB\SIGNFILE.LIB|cms
Error: Unresolved external '_i2d_CMS_bio_stream' referenced from C:\HB32\LIB\SIGNFILE.LIB|cms
Error: Unresolved external '_CMS_ContentInfo_free' referenced from C:\HB32\LIB\SIGNFILE.LIB|cms
Error: Unresolved external '_X509_free' referenced from C:\HB32\LIB\SIGNFILE.LIB|cms
Error: Unresolved external '_BIO_free' referenced from C:\HB32\LIB\SIGNFILE.LIB|cms
Error: Unable to perform link

me fije en las lib que tengo en el harbour y no están , estoy usando Harbour 3.2.0dev (r1601050904)
saludos

Re: HBSSL CON FUNCIONES DE DIEGO FAZIO INCLUIDAS

PostPosted: Fri Sep 17, 2021 4:21 pm
by Antonio Linares
Tienes que enlazar hbssl.lib y libeay32.lib. Está incluido en la distribución de Harbour nuestra:

https://github.com/FiveTechSoft/Harbour_builder/raw/master/harbour_win32_bcc_2020_10_19.zip