ssl / etc pra emails

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

ssl / etc pra emails

Mensagem por JoséQuintas »

Parece que o cerco está se fechando pra SSL/TLS no que se refere a emails.

Como está isso no harbour atualmente ?
Dá pra gerar harbour com isso sem precisar de DLL ?
Vai depender da versão do mingw ?
Onde baixar os adicionais pra qualquer mingw, é possível ?
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

ssl / etc pra emails

Mensagem por JoséQuintas »

Porque pergunto isso?

Numa época era com DLL, mesmo gerando LIB.
O tal IMPLIB da Borland, muita gente confunde com converter DLL pra LIB, mas não tem nada a ver.

No caso de DLL, pode ser gerada uma LIB, que é uma intermediária da DLL.
Ela faz as conversões de chamada, mas continua dependendo da DLL.
Se a DLL não existir, o programa nem executa.
Era assim antigamente.

Depois, com alterações do Viktor, foi possível compilar com a opção de não obrigatória.
O programa podia funcionar sem a DLL, mas sem o recurso.
Ao usar o recurso, só com a DLL instalada, meio parecido com quando usamos win_OleCreateObject(), onde o recurso pode ou não estar instalado.

Me deu a impressão de que depois foi possível compilar como tudo no EXE, mas não tenho certeza.
Nesta opção, sem depender de nada externo.
Talvez porque com MSYS2 já baixe tudo compatível.
Também não sei qual vai ser o tamanho do EXE neste caso.

Então.... como está agora e como fazer, já que não faz parte dos fontes do harbour ?
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

ssl / etc pra emails

Mensagem por JoséQuintas »

oficial.png
Lembrei que criaram compilações no oficial.
Mas com erro, não é nada animador.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

ssl / etc pra emails

Mensagem por JoséQuintas »

Código: Selecionar todos

# Keep them at top
-depimplibs=openssl:../out32dll/libeay32.dll
-depimplibs=openssl:../out32dll/ssleay32.dll
-depimplibs=openssl:../dll/libeay32.dll
-depimplibs=openssl:../dll/ssleay32.dll
-depimplibs=openssl:../libeay32.dll
-depimplibs=openssl:../ssleay32.dll
-depimplibs=openssl:../bin/libcrypto-1_1.dll
-depimplibs=openssl:../bin/libssl-1_1.dll
-depimplibs=openssl:../bin/libcrypto-1_1-x64.dll
-depimplibs=openssl:../bin/libssl-1_1-x64.dll
-depimplibs=openssl:../bin/libcrypto-3.dll
-depimplibs=openssl:../bin/libssl-3.dll
-depimplibs=openssl:../bin/libcrypto-3-x64.dll
-depimplibs=openssl:../bin/libssl-3-x64.dll

hbssl.hbm

{allwin&HBMK_HAS_OPENSSL}-cflag=-I${HB_WITH_OPENSSL}/../inc32

-iflag={bcc}-a

hbssls.hbp
Pelo hbp, continua dependente de dlls, várias
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

ssl / etc pra emails

Mensagem por Itamar M. Lins Jr. »

Olá!
Vou retestar essa parte -fullstatic
Agora tô no Linux.
De toda forma eu uso SQLMIX e precisa de rodar o Runtime da Microsoft para instalar as DLL de conexão.(caso não tenha na máquina)

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

ssl / etc pra emails

Mensagem por Itamar M. Lins Jr. »

Olá!
lembrei aqui que usando msys2 vem os arquivos .a, .dll .lib
Creio que usando -fullstatic ele link as libs .a do OpenSSL ai não precisa de .dll

Código: Selecionar todos

itamar@itamar-desktop:/usr/lib/x86_64-linux-gnu$ ls -l libcry*
-rw-r--r-- 1 root root   271404 abr  8 13:09 libcrypt.a
-rw-r--r-- 1 root root 10014908 mai 14 06:06 libcrypto.a
lrwxrwxrwx 1 root root       14 mai 14 06:06 libcrypto.so -> libcrypto.so.3
-rw-r--r-- 1 root root  2954080 jul  4  2022 libcrypto.so.1.1
-rw-r--r-- 1 root root  5305304 mai 14 06:06 libcrypto.so.3
lrwxrwxrwx 1 root root       24 abr  8 11:37 libcryptsetup.so.12 -> libcryptsetup.so.12.10.0
-rw-r--r-- 1 root root   583024 abr  8 11:37 libcryptsetup.so.12.10.0
lrwxrwxrwx 1 root root       17 abr  8 13:09 libcrypt.so -> libcrypt.so.1.1.0
lrwxrwxrwx 1 root root       17 abr  8 13:09 libcrypt.so.1 -> libcrypt.so.1.1.0
-rw-r--r-- 1 root root   198664 abr  8 13:09 libcrypt.so.1.1.0
itamar@itamar-desktop:/usr/lib/x86_64-linux-gnu$ 
-fullstatic deve linkar junto essas libs, .a Se não me falha a memória.

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

ssl / etc pra emails

Mensagem por JoséQuintas »

Vixe...
Inventaram mais outra agora
Algumas centrais, incluindo o gmail, além do limite por hora, também tem limite diário.
Vale tudo pra tirar dinheiro.

Por exemplo, numa delas o limite é 100 por hora, e 500 por dia.
E pode ter limite por domínio.
Numa central, CADA email a mais por hora custa 1 real por mês.

Pois é... cada vez mais caro trabalhar....
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
ANDRIL
Usuário Nível 5
Usuário Nível 5
Mensagens: 1297
Registrado em: 06 Jul 2004 00:44
Contato:

ssl / etc pra emails

Mensagem por ANDRIL »

O aperto é real com relação ao uso de protocolo de segurança SSL,TLS no envio de email através de aplicativos clientes. Se quer usar a própria linguagem esbarra em ter que criar, linkar dll e outros ajustes operacionais. Se vai usar algum aplicativo, um faz envio assim, mas não faz assado. Se usa email gratuito GMAIL, HOTMAIL etc, cai nas políticas de usos de seguranças e políticas deles.

No meu caso uso o envio por domínio/hospedagem paga e mesmo assim não me livrei dos problemas de envio através de aplicativos clientes (BLAT,SMTPSEND, CDOSYS), optei em usar a própria estrutura de envio da hospedagem, assim me livrei pelo menos por enquanto desses problemas.

Usando uma linguagem servidor, no caso Php, com uso de FTP para subir os anexos para o site, consigo enviar normalmente os emails pela hospedagem. O script php recebe os anexos, o conteúdo da mensagem, os destinatários e monto o email e disparo. Tem dado muito certo até agora.
Clipper 5.2e / Blinker 5.1 / Harbour 3.2 / GTwvg
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

ssl / etc pra emails

Mensagem por Itamar M. Lins Jr. »

Olá!
Voltando ao assunto.
Compilei aqui o sistema com --fullstatic
Ao que tudo indica todas as libs que tem .a foram linkadas junto.
Apaguei as DLL da pasta e o .EXE rodou sem problema.

Código: Selecionar todos

#require "sddodbc"  
#require "rddsql"    
//#require "sddpg"  
#require "hbssl" 
#require "hbtip" 

REQUEST DBFCDX, DBFFPT, DBFDBT, LETO, SQLMIX, SDDODBC //, SDDPG
Tive que comentar o acesso ao PostgreSQL não tem a lib .a e pede a DLL

Código: Selecionar todos

C:\msys64\ucrt64\lib>dir libss*.a
 O volume na unidade C não tem nome.
 O Número de Série do Volume é 980F-D8EF

 Pasta de C:\msys64\ucrt64\lib

27/04/2024  16:12            16.142 libssdpapi.a
10/09/2023  12:04           364.748 libssh2.a
10/09/2023  12:04            97.118 libssh2.dll.a
27/04/2024  16:12             3.864 libssinc.a
29/04/2024  14:58         1.563.836 libssl.a
29/04/2024  14:58           399.728 libssl.dll.a
27/04/2024  16:12                 8 libssp.a
27/04/2024  16:12            81.284 libsspicli.a
27/04/2024  16:12                 8 libssp_nonshared.a
...
C:\msys64\ucrt64\lib>dir libcry*.a
 O volume na unidade C não tem nome.
 O Número de Série do Volume é 980F-D8EF

 Pasta de C:\msys64\ucrt64\lib

27/04/2024  16:12           241.508 libcrypt32.a
27/04/2024  16:12            10.084 libcryptbase.a
27/04/2024  16:12            18.080 libcryptdlg.a
27/04/2024  16:12            16.710 libcryptdll.a
27/04/2024  16:12            25.422 libcryptext.a
27/04/2024  16:12            18.716 libcryptnet.a
29/04/2024  14:58         8.429.690 libcrypto.a
29/04/2024  14:58         3.748.572 libcrypto.dll.a
27/04/2024  16:12            51.714 libcryptsp.a
27/04/2024  16:12             3.142 libcryptsvc.a
27/04/2024  16:12            55.746 libcryptui.a
27/04/2024  16:12            16.526 libcryptxml.a
              12 arquivo(s)     12.635.910 bytes

Usando 64Bits UCRT.(Padrão novo)

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

ssl / etc pra emails

Mensagem por JoséQuintas »

Descobri mais uma:
Error WINOLE/1007 O servidor rejeitou um ou mais endereços de destinatário. A resposta do servidor foi: 450 4.1.2 <almoxarifado@xxxx>: Recipient address rejected: Domain not found
Talvez dê pra testar isso no aplicativo.
A mensagem dá a idéia de como fazer.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Responder