Răsfoiți Sursa

ADD: TLS 1.1, 1.2

Alexander Koblov 10 ani în urmă
părinte
comite
cfd30642d9
1 a modificat fișierele cu 20 adăugiri și 0 ștergeri
  1. 20 0
      plugins/wfx/ftp/synapse/ssl_winssl_lib.pas

+ 20 - 0
plugins/wfx/ftp/synapse/ssl_winssl_lib.pas

@@ -53,6 +53,14 @@ const
   SP_PROT_TLS1_CLIENT       =      $00000080;
   SP_PROT_TLS1              =      (SP_PROT_TLS1_SERVER or SP_PROT_TLS1_CLIENT);
 
+  SP_PROT_TLS1_1_SERVER     =      $00000100;
+  SP_PROT_TLS1_1_CLIENT     =      $00000200;
+  SP_PROT_TLS1_1            =      (SP_PROT_TLS1_1_SERVER or SP_PROT_TLS1_1_CLIENT);
+
+  SP_PROT_TLS1_2_SERVER     =      $00000400;
+  SP_PROT_TLS1_2_CLIENT     =      $00000800;
+  SP_PROT_TLS1_2            =      (SP_PROT_TLS1_2_SERVER or SP_PROT_TLS1_2_CLIENT);
+
 const
   UNISP_NAME_A = AnsiString('Microsoft Unified Security Protocol Provider');
   UNISP_NAME_W = WideString('Microsoft Unified Security Protocol Provider');
@@ -836,6 +844,16 @@ begin
   Result := PSSL_METHOD(SP_PROT_TLS1);
 end;
 
+function TLSv1_1_method(): PSSL_METHOD; cdecl;
+begin
+  Result := PSSL_METHOD(SP_PROT_TLS1_1);
+end;
+
+function TLSv1_2_method(): PSSL_METHOD; cdecl;
+begin
+  Result := PSSL_METHOD(SP_PROT_TLS1_2);
+end;
+
 procedure SSL_CTX_set_verify(ctx: PSSL_CTX; mode: cint; func: Pointer); cdecl;
 begin
   if (ctx <> nil) then ctx^.bVerify := mode <> 0;
@@ -865,6 +883,8 @@ exports
   SSLv2_method,
   SSLv3_method,
   TLSv1_method,
+  TLSv1_1_method,
+  TLSv1_2_method,
   SSL_CTX_set_verify,
   SSL_get_error;