Browse Source

Merge branch 'master' into dev

Source commit: c8cd3284728766a7834dc8fd8d2524f4a22e4ae9
Martin Prikryl 4 years ago
parent
commit
e5e3a471b9

+ 13 - 0
dotnet/RemotePath.cs

@@ -24,6 +24,19 @@ namespace WinSCP
             return path + mask;
         }
 
+        public static string EscapeOperationMask(string operationMask)
+        {
+            if (operationMask == null)
+            {
+                throw new ArgumentNullException(nameof(operationMask));
+            }
+            int lastSlash = operationMask.LastIndexOf('/');
+            string path = lastSlash > 0 ? operationMask.Substring(0, lastSlash + 1) : string.Empty;
+            string mask = lastSlash > 0 ? operationMask.Substring(lastSlash + 1) : operationMask;
+            mask = mask.Replace("\\", "\\\\").Replace("*", "\\*").Replace("?", "\\?");
+            return path + mask;
+        }
+
         [Obsolete("Use RemotePath.Combine method")]
         public static string CombinePaths(string path1, string path2)
         {

+ 2 - 2
dotnet/Session.cs

@@ -827,7 +827,7 @@ namespace WinSCP
                 _process.StdIn = stream ?? throw Logger.WriteException(new ArgumentNullException(nameof(stream)));
                 try
                 {
-                    remoteFilePath = RemotePath.EscapeFileMask(remoteFilePath);
+                    remoteFilePath = RemotePath.EscapeOperationMask(remoteFilePath);
                     TransferOperationResult operationResult = DoPutFiles("-", remoteFilePath, false, options);
                     operationResult.Check();
                     // Assert that any transfer took place at all
@@ -850,7 +850,7 @@ namespace WinSCP
                 }
 
                 string localDirectory = Path.GetDirectoryName(localFilePath);
-                string filemask = RemotePath.EscapeFileMask(Path.GetFileName(localFilePath));
+                string filemask = Path.GetFileName(localFilePath);
 
                 TransferOperationResult operationResult = PutFilesToDirectory(localDirectory, remoteDirectory, filemask, remove, options);
                 operationResult.Check();

+ 12 - 1
dotnet/internal/Logger.cs

@@ -42,7 +42,18 @@ namespace WinSCP
 
             // It's also good to know that the CodeBase is not guaranteed to be set for assemblies in the GAC.
             // Location will always be set for assemblies loaded from disk, however.
-            string codeBase = assembly.CodeBase;
+            string codeBase;
+            try
+            {
+                codeBase = assembly.CodeBase;
+            }
+            catch (NotSupportedException e)
+            {
+                // CodeBase is not supported on assemblies loaded from a single-file bundle
+                WriteLine($"CodeBase not supported: {e.Message}");
+                codeBase = string.Empty;
+            }
+
             string location = assembly.Location;
 
             // cannot use Uri.UnescapeDataString, because it treats some characters valid in

+ 0 - 1
dotnet/internal/PipeStream.cs

@@ -1,6 +1,5 @@
 using System;
 using System.Collections.Generic;
-using System.Globalization;
 using System.IO;
 using System.Threading;
 

+ 3 - 1
libs/openssl/crypto/asn1/asn1_err.c

@@ -1,6 +1,6 @@
 /*
  * Generated by util/mkerr.pl DO NOT EDIT
- * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright 1995-2020 The OpenSSL Project Authors. All Rights Reserved.
  *
  * Licensed under the OpenSSL license (the "License").  You may not use
  * this file except in compliance with the License.  You can obtain a copy
@@ -49,6 +49,7 @@ static const ERR_STRING_DATA ASN1_str_functs[] = {
      "asn1_item_embed_d2i"},
     {ERR_PACK(ERR_LIB_ASN1, ASN1_F_ASN1_ITEM_EMBED_NEW, 0),
      "asn1_item_embed_new"},
+    {ERR_PACK(ERR_LIB_ASN1, ASN1_F_ASN1_ITEM_EX_I2D, 0), "ASN1_item_ex_i2d"},
     {ERR_PACK(ERR_LIB_ASN1, ASN1_F_ASN1_ITEM_FLAGS_I2D, 0),
      "asn1_item_flags_i2d"},
     {ERR_PACK(ERR_LIB_ASN1, ASN1_F_ASN1_ITEM_I2D_BIO, 0), "ASN1_item_i2d_bio"},
@@ -160,6 +161,7 @@ static const ERR_STRING_DATA ASN1_str_reasons[] = {
     "asn1 sig parse error"},
     {ERR_PACK(ERR_LIB_ASN1, 0, ASN1_R_AUX_ERROR), "aux error"},
     {ERR_PACK(ERR_LIB_ASN1, 0, ASN1_R_BAD_OBJECT_HEADER), "bad object header"},
+    {ERR_PACK(ERR_LIB_ASN1, 0, ASN1_R_BAD_TEMPLATE), "bad template"},
     {ERR_PACK(ERR_LIB_ASN1, 0, ASN1_R_BMPSTRING_IS_WRONG_LENGTH),
     "bmpstring is wrong length"},
     {ERR_PACK(ERR_LIB_ASN1, 0, ASN1_R_BN_LIB), "bn lib"},

+ 20 - 1
libs/openssl/crypto/asn1/tasn_dec.c

@@ -1,5 +1,5 @@
 /*
- * Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright 2000-2020 The OpenSSL Project Authors. All Rights Reserved.
  *
  * Licensed under the OpenSSL license (the "License").  You may not use
  * this file except in compliance with the License.  You can obtain a copy
@@ -182,6 +182,15 @@ static int asn1_item_embed_d2i(ASN1_VALUE **pval, const unsigned char **in,
                                      tag, aclass, opt, ctx);
 
     case ASN1_ITYPE_MSTRING:
+        /*
+         * It never makes sense for multi-strings to have implicit tagging, so
+         * if tag != -1, then this looks like an error in the template.
+         */
+        if (tag != -1) {
+            ASN1err(ASN1_F_ASN1_ITEM_EMBED_D2I, ASN1_R_BAD_TEMPLATE);
+            goto err;
+        }
+
         p = *in;
         /* Just read in tag and class */
         ret = asn1_check_tlen(NULL, &otag, &oclass, NULL, NULL,
@@ -199,6 +208,7 @@ static int asn1_item_embed_d2i(ASN1_VALUE **pval, const unsigned char **in,
             ASN1err(ASN1_F_ASN1_ITEM_EMBED_D2I, ASN1_R_MSTRING_NOT_UNIVERSAL);
             goto err;
         }
+
         /* Check tag matches bit map */
         if (!(ASN1_tag2bit(otag) & it->utype)) {
             /* If OPTIONAL, assume this is OK */
@@ -215,6 +225,15 @@ static int asn1_item_embed_d2i(ASN1_VALUE **pval, const unsigned char **in,
         return ef->asn1_ex_d2i(pval, in, len, it, tag, aclass, opt, ctx);
 
     case ASN1_ITYPE_CHOICE:
+        /*
+         * It never makes sense for CHOICE types to have implicit tagging, so
+         * if tag != -1, then this looks like an error in the template.
+         */
+        if (tag != -1) {
+            ASN1err(ASN1_F_ASN1_ITEM_EMBED_D2I, ASN1_R_BAD_TEMPLATE);
+            goto err;
+        }
+
         if (asn1_cb && !asn1_cb(ASN1_OP_D2I_PRE, pval, it, NULL))
             goto auxerr;
         if (*pval) {

+ 17 - 1
libs/openssl/crypto/asn1/tasn_enc.c

@@ -1,5 +1,5 @@
 /*
- * Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright 2000-2020 The OpenSSL Project Authors. All Rights Reserved.
  *
  * Licensed under the OpenSSL license (the "License").  You may not use
  * this file except in compliance with the License.  You can obtain a copy
@@ -103,9 +103,25 @@ int ASN1_item_ex_i2d(ASN1_VALUE **pval, unsigned char **out,
         return asn1_i2d_ex_primitive(pval, out, it, tag, aclass);
 
     case ASN1_ITYPE_MSTRING:
+        /*
+         * It never makes sense for multi-strings to have implicit tagging, so
+         * if tag != -1, then this looks like an error in the template.
+         */
+        if (tag != -1) {
+            ASN1err(ASN1_F_ASN1_ITEM_EX_I2D, ASN1_R_BAD_TEMPLATE);
+            return -1;
+        }
         return asn1_i2d_ex_primitive(pval, out, it, -1, aclass);
 
     case ASN1_ITYPE_CHOICE:
+        /*
+         * It never makes sense for CHOICE types to have implicit tagging, so
+         * if tag != -1, then this looks like an error in the template.
+         */
+        if (tag != -1) {
+            ASN1err(ASN1_F_ASN1_ITEM_EX_I2D, ASN1_R_BAD_TEMPLATE);
+            return -1;
+        }
         if (asn1_cb && !asn1_cb(ASN1_OP_I2D_PRE, pval, it, NULL))
             return 0;
         i = asn1_get_choice_selector(pval, it);

+ 5 - 1
libs/openssl/crypto/bio/b_addr.c

@@ -1,5 +1,5 @@
 /*
- * Copyright 2016-2019 The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright 2016-2020 The OpenSSL Project Authors. All Rights Reserved.
  *
  * Licensed under the OpenSSL license (the "License").  You may not use
  * this file except in compliance with the License.  You can obtain a copy
@@ -7,6 +7,10 @@
  * https://www.openssl.org/source/license.html
  */
 
+#ifndef _GNU_SOURCE
+# define _GNU_SOURCE
+#endif
+
 #include <assert.h>
 #include <string.h>
 

+ 2 - 0
libs/openssl/crypto/err/openssl.txt

@@ -36,6 +36,7 @@ ASN1_F_ASN1_ITEM_D2I_FP:206:ASN1_item_d2i_fp
 ASN1_F_ASN1_ITEM_DUP:191:ASN1_item_dup
 ASN1_F_ASN1_ITEM_EMBED_D2I:120:asn1_item_embed_d2i
 ASN1_F_ASN1_ITEM_EMBED_NEW:121:asn1_item_embed_new
+ASN1_F_ASN1_ITEM_EX_I2D:144:ASN1_item_ex_i2d
 ASN1_F_ASN1_ITEM_FLAGS_I2D:118:asn1_item_flags_i2d
 ASN1_F_ASN1_ITEM_I2D_BIO:192:ASN1_item_i2d_bio
 ASN1_F_ASN1_ITEM_I2D_FP:193:ASN1_item_i2d_fp
@@ -1771,6 +1772,7 @@ ASN1_R_ASN1_PARSE_ERROR:203:asn1 parse error
 ASN1_R_ASN1_SIG_PARSE_ERROR:204:asn1 sig parse error
 ASN1_R_AUX_ERROR:100:aux error
 ASN1_R_BAD_OBJECT_HEADER:102:bad object header
+ASN1_R_BAD_TEMPLATE:230:bad template
 ASN1_R_BMPSTRING_IS_WRONG_LENGTH:214:bmpstring is wrong length
 ASN1_R_BN_LIB:105:bn lib
 ASN1_R_BOOLEAN_IS_WRONG_LENGTH:106:boolean is wrong length

+ 2 - 2
libs/openssl/crypto/evp/bio_ok.c

@@ -1,5 +1,5 @@
 /*
- * Copyright 1995-2019 The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright 1995-2020 The OpenSSL Project Authors. All Rights Reserved.
  *
  * Licensed under the OpenSSL license (the "License").  You may not use
  * this file except in compliance with the License.  You can obtain a copy
@@ -203,7 +203,7 @@ static int ok_read(BIO *b, char *out, int outl)
                 /*
                  * copy start of the next block into proper place
                  */
-                if (ctx->buf_len_save - ctx->buf_off_save > 0) {
+                if (ctx->buf_len_save > ctx->buf_off_save) {
                     ctx->buf_len = ctx->buf_len_save - ctx->buf_off_save;
                     memmove(ctx->buf, &(ctx->buf[ctx->buf_off_save]),
                             ctx->buf_len);

+ 5 - 2
libs/openssl/crypto/modes/modes_local.h

@@ -63,12 +63,15 @@ typedef u32 u32_a1;
                         asm ("bswapl %0"                \
                         : "+r"(ret_));   ret_;          })
 #  elif defined(__aarch64__)
-#   define BSWAP8(x) ({ u64 ret_;                       \
+#   if defined(__BYTE_ORDER__) && defined(__ORDER_LITTLE_ENDIAN__) && \
+       __BYTE_ORDER__==__ORDER_LITTLE_ENDIAN__
+#    define BSWAP8(x) ({ u64 ret_;                       \
                         asm ("rev %0,%1"                \
                         : "=r"(ret_) : "r"(x)); ret_;   })
-#   define BSWAP4(x) ({ u32 ret_;                       \
+#    define BSWAP4(x) ({ u32 ret_;                       \
                         asm ("rev %w0,%w1"              \
                         : "=r"(ret_) : "r"(x)); ret_;   })
+#   endif
 #  elif (defined(__arm__) || defined(__arm)) && !defined(STRICT_ALIGNMENT)
 #   define BSWAP8(x) ({ u32 lo_=(u64)(x)>>32,hi_=(x);   \
                         asm ("rev %0,%0; rev %1,%1"     \

+ 2 - 2
libs/openssl/crypto/pkcs7/pk7_smime.c

@@ -1,5 +1,5 @@
 /*
- * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright 1999-2020 The OpenSSL Project Authors. All Rights Reserved.
  *
  * Licensed under the OpenSSL license (the "License").  You may not use
  * this file except in compliance with the License.  You can obtain a copy
@@ -301,7 +301,7 @@ int PKCS7_verify(PKCS7 *p7, STACK_OF(X509) *certs, X509_STORE *store,
         char *ptr;
         long len;
         len = BIO_get_mem_data(indata, &ptr);
-        tmpin = BIO_new_mem_buf(ptr, len);
+        tmpin = (len == 0) ? indata : BIO_new_mem_buf(ptr, len);
         if (tmpin == NULL) {
             PKCS7err(PKCS7_F_PKCS7_VERIFY, ERR_R_MALLOC_FAILURE);
             goto err;

+ 2 - 2
libs/openssl/crypto/x509/x509_att.c

@@ -1,5 +1,5 @@
 /*
- * Copyright 1995-2019 The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright 1995-2020 The OpenSSL Project Authors. All Rights Reserved.
  *
  * Licensed under the OpenSSL license (the "License").  You may not use
  * this file except in compliance with the License.  You can obtain a copy
@@ -149,7 +149,7 @@ STACK_OF(X509_ATTRIBUTE) *X509at_add1_attr_by_txt(STACK_OF(X509_ATTRIBUTE)
     return ret;
 }
 
-void *X509at_get0_data_by_OBJ(STACK_OF(X509_ATTRIBUTE) *x,
+void *X509at_get0_data_by_OBJ(const STACK_OF(X509_ATTRIBUTE) *x,
                               const ASN1_OBJECT *obj, int lastpos, int type)
 {
     int i;

+ 2 - 0
libs/openssl/crypto/x509/x509_cmp.c

@@ -135,6 +135,8 @@ int X509_cmp(const X509 *a, const X509 *b)
 {
     int rv;
 
+    if (a == b) /* for efficiency */
+        return 0;
     /* ensure hash is valid */
     if (X509_check_purpose((X509 *)a, -1, 0) != 1)
         return -2;

+ 34 - 27
libs/openssl/crypto/x509/x509_vfy.c

@@ -312,8 +312,20 @@ int X509_verify_cert(X509_STORE_CTX *ctx)
     return ret;
 }
 
+static int sk_X509_contains(STACK_OF(X509) *sk, X509 *cert)
+{
+    int i, n = sk_X509_num(sk);
+
+    for (i = 0; i < n; i++)
+        if (X509_cmp(sk_X509_value(sk, i), cert) == 0)
+            return 1;
+    return 0;
+}
+
 /*
- * Given a STACK_OF(X509) find the issuer of cert (if any)
+ * Find in given STACK_OF(X509) sk a non-expired issuer cert (if any) of given cert x.
+ * The issuer must not be the same as x and must not yet be in ctx->chain, where the
+ * exceptional case x is self-issued and ctx->chain has just one element is allowed.
  */
 static X509 *find_issuer(X509_STORE_CTX *ctx, STACK_OF(X509) *sk, X509 *x)
 {
@@ -322,7 +334,13 @@ static X509 *find_issuer(X509_STORE_CTX *ctx, STACK_OF(X509) *sk, X509 *x)
 
     for (i = 0; i < sk_X509_num(sk); i++) {
         issuer = sk_X509_value(sk, i);
-        if (ctx->check_issued(ctx, x, issuer)) {
+        /*
+         * Below check 'issuer != x' is an optimization and safety precaution:
+         * Candidate issuer cert cannot be the same as the subject cert 'x'.
+         */
+        if (issuer != x && ctx->check_issued(ctx, x, issuer)
+            && (((x->ex_flags & EXFLAG_SI) != 0 && sk_X509_num(ctx->chain) == 1)
+                || !sk_X509_contains(ctx->chain, issuer))) {
             rv = issuer;
             if (x509_check_cert_time(ctx, rv, -1))
                 break;
@@ -331,30 +349,13 @@ static X509 *find_issuer(X509_STORE_CTX *ctx, STACK_OF(X509) *sk, X509 *x)
     return rv;
 }
 
-/*
- * Check that the given certificate 'x' is issued by the certificate 'issuer'
- * and the issuer is not yet in ctx->chain, where the exceptional case
- * that 'x' is self-issued and ctx->chain has just one element is allowed.
- */
+/* Check that the given certificate 'x' is issued by the certificate 'issuer' */
 static int check_issued(X509_STORE_CTX *ctx, X509 *x, X509 *issuer)
 {
-    if (x509_likely_issued(issuer, x) != X509_V_OK)
-        return 0;
-    if ((x->ex_flags & EXFLAG_SI) == 0 || sk_X509_num(ctx->chain) != 1) {
-        int i;
-        X509 *ch;
-
-        for (i = 0; i < sk_X509_num(ctx->chain); i++) {
-            ch = sk_X509_value(ctx->chain, i);
-            if (ch == issuer || X509_cmp(ch, issuer) == 0)
-                return 0;
-        }
-    }
-    return 1;
+    return x509_likely_issued(issuer, x) == X509_V_OK;
 }
 
 /* Alternative lookup method: look from a STACK stored in other_ctx */
-
 static int get_issuer_sk(X509 **issuer, X509_STORE_CTX *ctx, X509 *x)
 {
     *issuer = find_issuer(ctx, ctx->other_ctx, x);
@@ -1740,7 +1741,7 @@ static int internal_verify(X509_STORE_CTX *ctx)
     if (ctx->bare_ta_signed) {
         xs = xi;
         xi = NULL;
-        goto check_cert;
+        goto check_cert_time;
     }
 
     if (ctx->check_issued(ctx, xi, xi))
@@ -1748,11 +1749,17 @@ static int internal_verify(X509_STORE_CTX *ctx)
     else {
         if (ctx->param->flags & X509_V_FLAG_PARTIAL_CHAIN) {
             xs = xi;
-            goto check_cert;
+            goto check_cert_time;
         }
-        if (n <= 0)
-            return verify_cb_cert(ctx, xi, 0,
-                                  X509_V_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE);
+        if (n <= 0) {
+            if (!verify_cb_cert(ctx, xi, 0,
+                                X509_V_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE))
+                return 0;
+
+            xs = xi;
+            goto check_cert_time;
+        }
+
         n--;
         ctx->error_depth = n;
         xs = sk_X509_value(ctx->chain, n);
@@ -1811,7 +1818,7 @@ static int internal_verify(X509_STORE_CTX *ctx)
             }
         }
 
- check_cert:
+    check_cert_time: /* in addition to RFC 5280, do also for trusted (root) cert */
         /* Calls verify callback as needed */
         if (!x509_check_cert_time(ctx, xs, n))
             return 0;

+ 46 - 6
libs/openssl/crypto/x509v3/v3_genn.c

@@ -1,5 +1,5 @@
 /*
- * Copyright 1999-2019 The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright 1999-2020 The OpenSSL Project Authors. All Rights Reserved.
  *
  * Licensed under the OpenSSL license (the "License").  You may not use
  * this file except in compliance with the License.  You can obtain a copy
@@ -22,8 +22,9 @@ ASN1_SEQUENCE(OTHERNAME) = {
 IMPLEMENT_ASN1_FUNCTIONS(OTHERNAME)
 
 ASN1_SEQUENCE(EDIPARTYNAME) = {
-        ASN1_IMP_OPT(EDIPARTYNAME, nameAssigner, DIRECTORYSTRING, 0),
-        ASN1_IMP_OPT(EDIPARTYNAME, partyName, DIRECTORYSTRING, 1)
+        /* DirectoryString is a CHOICE type so use explicit tagging */
+        ASN1_EXP_OPT(EDIPARTYNAME, nameAssigner, DIRECTORYSTRING, 0),
+        ASN1_EXP(EDIPARTYNAME, partyName, DIRECTORYSTRING, 1)
 } ASN1_SEQUENCE_END(EDIPARTYNAME)
 
 IMPLEMENT_ASN1_FUNCTIONS(EDIPARTYNAME)
@@ -57,6 +58,37 @@ GENERAL_NAME *GENERAL_NAME_dup(GENERAL_NAME *a)
                                     (char *)a);
 }
 
+static int edipartyname_cmp(const EDIPARTYNAME *a, const EDIPARTYNAME *b)
+{
+    int res;
+
+    if (a == NULL || b == NULL) {
+        /*
+         * Shouldn't be possible in a valid GENERAL_NAME, but we handle it
+         * anyway. OTHERNAME_cmp treats NULL != NULL so we do the same here
+         */
+        return -1;
+    }
+    if (a->nameAssigner == NULL && b->nameAssigner != NULL)
+        return -1;
+    if (a->nameAssigner != NULL && b->nameAssigner == NULL)
+        return 1;
+    /* If we get here then both have nameAssigner set, or both unset */
+    if (a->nameAssigner != NULL) {
+        res = ASN1_STRING_cmp(a->nameAssigner, b->nameAssigner);
+        if (res != 0)
+            return res;
+    }
+    /*
+     * partyName is required, so these should never be NULL. We treat it in
+     * the same way as the a == NULL || b == NULL case above
+     */
+    if (a->partyName == NULL || b->partyName == NULL)
+        return -1;
+
+    return ASN1_STRING_cmp(a->partyName, b->partyName);
+}
+
 /* Returns 0 if they are equal, != 0 otherwise. */
 int GENERAL_NAME_cmp(GENERAL_NAME *a, GENERAL_NAME *b)
 {
@@ -66,8 +98,11 @@ int GENERAL_NAME_cmp(GENERAL_NAME *a, GENERAL_NAME *b)
         return -1;
     switch (a->type) {
     case GEN_X400:
+        result = ASN1_TYPE_cmp(a->d.x400Address, b->d.x400Address);
+        break;
+
     case GEN_EDIPARTY:
-        result = ASN1_TYPE_cmp(a->d.other, b->d.other);
+        result = edipartyname_cmp(a->d.ediPartyName, b->d.ediPartyName);
         break;
 
     case GEN_OTHERNAME:
@@ -114,8 +149,11 @@ void GENERAL_NAME_set0_value(GENERAL_NAME *a, int type, void *value)
 {
     switch (type) {
     case GEN_X400:
+        a->d.x400Address = value;
+        break;
+
     case GEN_EDIPARTY:
-        a->d.other = value;
+        a->d.ediPartyName = value;
         break;
 
     case GEN_OTHERNAME:
@@ -149,8 +187,10 @@ void *GENERAL_NAME_get0_value(const GENERAL_NAME *a, int *ptype)
         *ptype = a->type;
     switch (a->type) {
     case GEN_X400:
+        return a->d.x400Address;
+
     case GEN_EDIPARTY:
-        return a->d.other;
+        return a->d.ediPartyName;
 
     case GEN_OTHERNAME:
         return a->d.otherName;

+ 4 - 4
libs/openssl/include/openssl/asn1err.h

@@ -1,6 +1,6 @@
 /*
  * Generated by util/mkerr.pl DO NOT EDIT
- * Copyright 1995-2019 The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright 1995-2020 The OpenSSL Project Authors. All Rights Reserved.
  *
  * Licensed under the OpenSSL license (the "License").  You may not use
  * this file except in compliance with the License.  You can obtain a copy
@@ -11,9 +11,7 @@
 #ifndef HEADER_ASN1ERR_H
 # define HEADER_ASN1ERR_H
 
-# ifndef HEADER_SYMHACKS_H
-#  include <openssl/symhacks.h>
-# endif
+# include <openssl/symhacks.h>
 
 # ifdef  __cplusplus
 extern "C"
@@ -53,6 +51,7 @@ int ERR_load_ASN1_strings(void);
 # define ASN1_F_ASN1_ITEM_DUP                             191
 # define ASN1_F_ASN1_ITEM_EMBED_D2I                       120
 # define ASN1_F_ASN1_ITEM_EMBED_NEW                       121
+# define ASN1_F_ASN1_ITEM_EX_I2D                          144
 # define ASN1_F_ASN1_ITEM_FLAGS_I2D                       118
 # define ASN1_F_ASN1_ITEM_I2D_BIO                         192
 # define ASN1_F_ASN1_ITEM_I2D_FP                          193
@@ -145,6 +144,7 @@ int ERR_load_ASN1_strings(void);
 # define ASN1_R_ASN1_SIG_PARSE_ERROR                      204
 # define ASN1_R_AUX_ERROR                                 100
 # define ASN1_R_BAD_OBJECT_HEADER                         102
+# define ASN1_R_BAD_TEMPLATE                              230
 # define ASN1_R_BMPSTRING_IS_WRONG_LENGTH                 214
 # define ASN1_R_BN_LIB                                    105
 # define ASN1_R_BOOLEAN_IS_WRONG_LENGTH                   106

+ 2 - 2
libs/openssl/include/openssl/opensslv.h

@@ -39,8 +39,8 @@ extern "C" {
  * (Prior to 0.9.5a beta1, a different scheme was used: MMNNFFRBB for
  *  major minor fix final patch/beta)
  */
-# define OPENSSL_VERSION_NUMBER  0x1010108fL
-# define OPENSSL_VERSION_TEXT    "OpenSSL 1.1.1h  22 Sep 2020"
+# define OPENSSL_VERSION_NUMBER  0x1010109fL
+# define OPENSSL_VERSION_TEXT    "OpenSSL 1.1.1i  8 Dec 2020"
 
 /*-
  * The macros below are to be used for shared library (.so, .dll, ...)

+ 1 - 1
libs/openssl/include/openssl/x509.h

@@ -933,7 +933,7 @@ STACK_OF(X509_ATTRIBUTE) *X509at_add1_attr_by_txt(STACK_OF(X509_ATTRIBUTE)
                                                   int type,
                                                   const unsigned char *bytes,
                                                   int len);
-void *X509at_get0_data_by_OBJ(STACK_OF(X509_ATTRIBUTE) *x,
+void *X509at_get0_data_by_OBJ(const STACK_OF(X509_ATTRIBUTE) *x,
                               const ASN1_OBJECT *obj, int lastpos, int type);
 X509_ATTRIBUTE *X509_ATTRIBUTE_create_by_NID(X509_ATTRIBUTE **attr, int nid,
                                              int atrtype, const void *data,

+ 3 - 3
libs/openssl/ssl/record/rec_layer_d1.c

@@ -1,5 +1,5 @@
 /*
- * Copyright 2005-2019 The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright 2005-2020 The OpenSSL Project Authors. All Rights Reserved.
  *
  * Licensed under the OpenSSL license (the "License").  You may not use
  * this file except in compliance with the License.  You can obtain a copy
@@ -808,8 +808,8 @@ int do_dtls1_write(SSL *s, int type, const unsigned char *buf,
     wb = &s->rlayer.wbuf[0];
 
     /*
-     * first check if there is a SSL3_BUFFER still being written out.  This
-     * will happen with non blocking IO
+     * DTLS writes whole datagrams, so there can't be anything left in
+     * the buffer.
      */
     if (!ossl_assert(SSL3_BUFFER_get_left(wb) == 0)) {
         SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_F_DO_DTLS1_WRITE,

+ 6 - 15
libs/openssl/ssl/s3_lib.c

@@ -4072,9 +4072,10 @@ const SSL_CIPHER *ssl3_get_cipher_by_id(uint32_t id)
 
 const SSL_CIPHER *ssl3_get_cipher_by_std_name(const char *stdname)
 {
-    SSL_CIPHER *c = NULL, *tbl;
-    SSL_CIPHER *alltabs[] = {tls13_ciphers, ssl3_ciphers};
-    size_t i, j, tblsize[] = {TLS13_NUM_CIPHERS, SSL3_NUM_CIPHERS};
+    SSL_CIPHER *tbl;
+    SSL_CIPHER *alltabs[] = {tls13_ciphers, ssl3_ciphers, ssl3_scsvs};
+    size_t i, j, tblsize[] = {TLS13_NUM_CIPHERS, SSL3_NUM_CIPHERS,
+                              SSL3_NUM_SCSVS};
 
     /* this is not efficient, necessary to optimize this? */
     for (j = 0; j < OSSL_NELEM(alltabs); j++) {
@@ -4082,21 +4083,11 @@ const SSL_CIPHER *ssl3_get_cipher_by_std_name(const char *stdname)
             if (tbl->stdname == NULL)
                 continue;
             if (strcmp(stdname, tbl->stdname) == 0) {
-                c = tbl;
-                break;
-            }
-        }
-    }
-    if (c == NULL) {
-        tbl = ssl3_scsvs;
-        for (i = 0; i < SSL3_NUM_SCSVS; i++, tbl++) {
-            if (strcmp(stdname, tbl->stdname) == 0) {
-                c = tbl;
-                break;
+                return tbl;
             }
         }
     }
-    return c;
+    return NULL;
 }
 
 /*

+ 1 - 1
libs/openssl/ssl/ssl_lib.c

@@ -2678,7 +2678,7 @@ const char *SSL_get_servername(const SSL *s, const int type)
          *  - Otherwise it returns NULL
          *
          * During/after the handshake (TLSv1.2 or below resumption occurred):
-         * - If the session from the orignal handshake had a servername accepted
+         * - If the session from the original handshake had a servername accepted
          *   by the server then it will return that servername.
          * - Otherwise it returns the servername set via
          *   SSL_set_tlsext_host_name() (or NULL if it was not called).

+ 2 - 2
libs/openssl/ssl/ssl_sess.c

@@ -1,5 +1,5 @@
 /*
- * Copyright 1995-2019 The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright 1995-2020 The OpenSSL Project Authors. All Rights Reserved.
  * Copyright 2005 Nokia. All rights reserved.
  *
  * Licensed under the OpenSSL license (the "License").  You may not use
@@ -107,7 +107,7 @@ SSL_SESSION *ssl_session_dup(SSL_SESSION *src, int ticket)
 {
     SSL_SESSION *dest;
 
-    dest = OPENSSL_malloc(sizeof(*src));
+    dest = OPENSSL_malloc(sizeof(*dest));
     if (dest == NULL) {
         goto err;
     }

+ 9 - 7
libs/openssl/ssl/statem/statem_clnt.c

@@ -1,5 +1,5 @@
 /*
- * Copyright 1995-2019 The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright 1995-2020 The OpenSSL Project Authors. All Rights Reserved.
  * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved
  * Copyright 2005 Nokia. All rights reserved.
  *
@@ -2145,17 +2145,19 @@ static int tls_process_ske_dhe(SSL *s, PACKET *pkt, EVP_PKEY **pkey)
     }
     bnpub_key = NULL;
 
-    if (!ssl_security(s, SSL_SECOP_TMP_DH, DH_security_bits(dh), 0, dh)) {
-        SSLfatal(s, SSL_AD_HANDSHAKE_FAILURE, SSL_F_TLS_PROCESS_SKE_DHE,
-                 SSL_R_DH_KEY_TOO_SMALL);
-        goto err;
-    }
-
     if (EVP_PKEY_assign_DH(peer_tmp, dh) == 0) {
         SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_F_TLS_PROCESS_SKE_DHE,
                  ERR_R_EVP_LIB);
         goto err;
     }
+    dh = NULL;
+
+    if (!ssl_security(s, SSL_SECOP_TMP_DH, EVP_PKEY_security_bits(peer_tmp),
+                      0, peer_tmp)) {
+        SSLfatal(s, SSL_AD_HANDSHAKE_FAILURE, SSL_F_TLS_PROCESS_SKE_DHE,
+                 SSL_R_DH_KEY_TOO_SMALL);
+        goto err;
+    }
 
     s->s3->peer_tmp = peer_tmp;
 

+ 1 - 1
libs/openssl/ssl/statem/statem_srvr.c

@@ -2577,7 +2577,7 @@ int tls_construct_server_key_exchange(SSL *s, WPACKET *pkt)
 
         s->s3->tmp.pkey = ssl_generate_pkey(pkdhp);
         if (s->s3->tmp.pkey == NULL) {
-            /* SSLfatal() already called */
+            SSLfatal(s, SSL_AD_INTERNAL_ERROR, 0, ERR_R_INTERNAL_ERROR);
             goto err;
         }
 

+ 1 - 1
source/core/FileMasks.cpp

@@ -39,7 +39,7 @@ UnicodeString __fastcall MaskFilePart(const UnicodeString Part, const UnicodeStr
         if (!Delim)
         {
           Delim = true;
-          Masked = true;
+          Masked = false;
           break;
         }
 

+ 1 - 1
source/resource/TextsCore1.rc

@@ -287,7 +287,7 @@ BEGIN
   VERIFY_CERT_PROMPT3, "**The server's certificate is not known. You have no guarantee that the server is the computer you think it is.**\n\nServer's certificate details follow:\n\n%s\n\nIf you trust this certificate, press Yes. To connect without storing certificate, press No. To abandon the connection press Cancel.\n\nContinue connecting and store the certificate?"
   VERIFY_CERT_CONTACT, "- Organization: %s\n|- Location: %s\n|- Other: %s\n"
   VERIFY_CERT_CONTACT_LIST, "%s, %s"
-  CERT_TEXT2, "Issuer:\n%s\nSubject:\n%s\nValid: %s - %s\n\nFingerprint:\n- SHA-256: %s\n- SHA-1: %s\n\nSummary: %s"
+  CERT_TEXT2, "Issuer:\n%s\nSubject:\n%s\nValid: %s - %s\n\nFingerprints:\n- SHA-256: %s\n- SHA-1: %s\n\nSummary: %s"
   CERTIFICATE_PASSPHRASE_PROMPT, "&Passphrase for client certificate:"
   CERTIFICATE_PASSPHRASE_TITLE, "Client certificate passphrase"
   KEY_TYPE_CONVERT3, "**Do you want to convert this %s private key to PuTTY format?**\n\n%s"

+ 73 - 19
translations/CS.ini

@@ -137,6 +137,7 @@ HelpButton.Caption="Nápově&da"
 
 [CustomScpExplorer.dfm]
 QueueSplitter.Hint="Přetažením změníte velikost seznamu fronty. Poklepáním skryjete seznam fronty."
+QueuePanel.QueueFileListSplitter.Hint="Přetažením změníte velikost seznamu souborů ve frontě. Poklepáním skryjete seznam souborů."
 QueuePanel.QueueView3.item0.Caption="Operace"
 QueuePanel.QueueView3.item1.Caption="Zdroj"
 QueuePanel.QueueView3.item2.Caption="Cíl"
@@ -283,6 +284,7 @@ DirectionGroup.SynchronizeLocalButton.Caption="&Lokální"
 CompareCriterionsGroup.Caption="Kritéria pro porovnání"
 CompareCriterionsGroup.SynchronizeByTimeCheck.Caption="Ča&s souboru"
 CompareCriterionsGroup.SynchronizeBySizeCheck.Caption="Velikost soubo&ru"
+CompareCriterionsGroup.SynchronizeCaseSensitiveCheck.Caption="&Velikost písmen"
 SaveSettingsCheck.Caption="Příště použít ste&jná nastavení"
 CopyParamGroup.Caption="Nastavení přenosu"
 HelpButton.Caption="Nápově&da"
@@ -291,7 +293,7 @@ ModeGroup.SynchronizeFilesButton.Caption="Synchronizace sou&borů"
 ModeGroup.MirrorFilesButton.Caption="Zr&cadlení souborů"
 ModeGroup.SynchronizeTimestampsButton.Caption="Synchronizace č&asů"
 OkMenu.Start1.Caption="&Začít"
-OkMenu.StartInNewWindow1.Caption="Začít v &novém okně"
+OkMenu.StartInNewWindowItem.Caption="Začít v &novém okně"
 
 [GenerateUrl.dfm]
 OptionsPageControl.UrlSheet.Caption="URL"
@@ -791,6 +793,8 @@ ExplorerActions.QueueHideAction.Caption="&Schovat"
 ExplorerActions.QueueHideAction.Hint="Skryje seznam fronty"
 ExplorerActions.QueueToolbarAction.Caption="Panel ná&strojů"
 ExplorerActions.QueueToolbarAction.Hint="Zobrazí/skryje panel nástrojů fronty (na panelu fronty)"
+ExplorerActions.QueueFileListAction.Caption="&Seznam souborů"
+ExplorerActions.QueueFileListAction.Hint="Zobrazí/skryje seznam souborů ve frontě"
 ExplorerActions.QueuePreferencesAction.Caption="&Přizpůsobit..."
 ExplorerActions.QueuePreferencesAction.Hint="Nastavení možností fronty"
 ExplorerActions.PasteAction2.Caption="&Vložit"
@@ -961,6 +965,10 @@ CommanderBarPopup.RemotePanel2.Caption="&Vzdálený panel"
 CommanderBarPopup.RemotePanel2.Hint="Změní vzhled vzdáleného panelu"
 CommanderBarPopup.Options1.Caption="&Fronta"
 CommanderBarPopup.Options1.Hint="Nastavení možností fronty"
+RemotePanelPopup.TBXSubmenuItem8.Caption="&Přejít na"
+RemotePanelPopup.TBXSubmenuItem8.Hint="Přejde na adresář"
+LocalPanelPopup.TBXSubmenuItem10.Caption="&Přejít na"
+LocalPanelPopup.TBXSubmenuItem10.Hint="Přejde na adresář"
 LocalDirViewColumnPopup.LocalFormatSizeBytesPopupItem.Caption="Zo&brazovat velikosti souborů v"
 LocalDirViewColumnPopup.LocalFormatSizeBytesPopupItem.Hint="Změní formu zobrazení velikosti souborů"
 LocalDirViewColumnPopup.Showcolumns3.Caption="Zobrazit &sloupce"
@@ -1261,9 +1269,10 @@ MainPanel.PageControl.IntegrationAppSheet.ExternalAppsGroup.PuttyPathBrowseButto
 MainPanel.PageControl.IntegrationAppSheet.ExternalAppsGroup.TelnetForFtpInPuttyCheck.Caption="Pro FTP spojení otevírat v PuTTY &Telnet spojení"
 MainPanel.PageControl.IntegrationAppSheet.ExternalAppsGroup.PuttyPathHintText.Caption="vzory"
 MainPanel.PageControl.NetworkSheet.Caption="Síť"
-MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox.Caption="Externí IP adresa"
-MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox.RetrieveExternalIpAddressButton.Caption="&Získat externí IP adresu z operačního systému"
-MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox.CustomExternalIpAddressButton.Caption="Použít tuto &externí IP adresu:"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.Caption="Příchozí spojení protokolu FTP (aktivní režim)"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.RetrieveExternalIpAddressButton.Caption="&Získat externí IP adresu z operačního systému"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.CustomExternalIpAddressButton.Caption="Použít tuto &externí IP adresu:"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.LocalPortNumberCheck.Caption="Omezit naslouchání na &porty:"
 MainPanel.PageControl.NetworkSheet.ConnectionsGroup.Caption="Připojení"
 MainPanel.PageControl.NetworkSheet.ConnectionsGroup.TryFtpWhenSshFailsCheck.Caption="Pokud je SFTP spojení &odmítnuto, zaklepat na FTP port"
 MainPanel.PageControl.PanelRemoteSheet.Caption="Vzdálený"
@@ -1594,6 +1603,10 @@ MainPanel.PageControl.S3Sheet.S3Group.Label27.Caption="&Výchozí region:"
 MainPanel.PageControl.S3Sheet.S3Group.S3UrlStyleLabel.Caption="Styl &URL:"
 MainPanel.PageControl.S3Sheet.S3Group.S3UrlStyleCombo.Items.Strings.0="Virtuální host"
 MainPanel.PageControl.S3Sheet.S3Group.S3UrlStyleCombo.Items.Strings.1="Cesta"
+MainPanel.PageControl.S3Sheet.S3AuthenticationGroup.Caption="Autentizace"
+MainPanel.PageControl.S3Sheet.S3AuthenticationGroup.Label5.Caption="&Bezpečnostní token:"
+MainPanel.PageControl.WebDavSheet.WebdavGroup.Caption="Možnosti protokolu"
+MainPanel.PageControl.WebDavSheet.WebdavGroup.WebDavLiberalEscapingCheck.Caption="&Tolerovat nezakódované speciální znaky ve jménech souborů"
 MainPanel.PageControl.ConnSheet.Caption="Spojení"
 MainPanel.PageControl.ConnSheet.FtpPingGroup.Caption="Udržování spojení"
 MainPanel.PageControl.ConnSheet.FtpPingGroup.FtpPingIntervalLabel.Caption="&Sekundy mezi udržováním spojení:"
@@ -1675,6 +1688,7 @@ MainPanel.PageControl.KexSheet.KexOptionsGroup.Caption="Možnosti algoritmu vým
 MainPanel.PageControl.KexSheet.KexOptionsGroup.Label28.Caption="Postup při &výběru algoritmu:"
 MainPanel.PageControl.KexSheet.KexOptionsGroup.KexUpButton.Caption="&Nahoru"
 MainPanel.PageControl.KexSheet.KexOptionsGroup.KexDownButton.Caption="&Dolů"
+MainPanel.PageControl.KexSheet.KexOptionsGroup.AuthGSSAPIKEXCheck.Caption="Zkusit výměnu klíčů přes &GSSAPI"
 MainPanel.PageControl.KexSheet.KexReexchangeGroup.Caption="Nastavení opakované výměny klíčů"
 MainPanel.PageControl.KexSheet.KexReexchangeGroup.Label31.Caption="Maximum &minut před výměnou (0 = žádný limit):"
 MainPanel.PageControl.KexSheet.KexReexchangeGroup.Label32.Caption="Ma&ximum dat před výměnou (0 = žádný limit):"
@@ -1682,8 +1696,8 @@ MainPanel.PageControl.AuthSheet.Caption="Autentizace"
 MainPanel.PageControl.AuthSheet.SshNoUserAuthCheck.Caption="Úplně &vynechat autentizaci"
 MainPanel.PageControl.AuthSheet.AuthenticationGroup.Caption="Volby autentizace"
 MainPanel.PageControl.AuthSheet.AuthenticationGroup.TryAgentCheck.Caption="Z&kusit autentizaci přes Pagent"
-MainPanel.PageControl.AuthSheet.AuthenticationGroup.AuthTISCheck.Caption="Pokusit se o &TIS nebo CryptoCard autentizaci (SSH-1)"
-MainPanel.PageControl.AuthSheet.AuthenticationGroup.AuthKICheck.Caption="Pokusit se o 'keyboard-&interactive' autentizaci"
+MainPanel.PageControl.AuthSheet.AuthenticationGroup.AuthTISCheck.Caption="Zkusit &TIS nebo CryptoCard autentizaci (SSH-1)"
+MainPanel.PageControl.AuthSheet.AuthenticationGroup.AuthKICheck.Caption="Zkusit 'keyboard-&interactive' autentizaci"
 MainPanel.PageControl.AuthSheet.AuthenticationGroup.AuthKIPasswordCheck.Caption="Odpovědět &heslem na první výzvu/dotaz"
 MainPanel.PageControl.AuthSheet.AuthenticationParamsGroup.Caption="Parametry autentizace"
 MainPanel.PageControl.AuthSheet.AuthenticationParamsGroup.PrivateKeyLabel.Caption="Soubor se soukromým &klíčem:"
@@ -1692,7 +1706,7 @@ MainPanel.PageControl.AuthSheet.AuthenticationParamsGroup.PrivateKeyEdit3.Filter
 MainPanel.PageControl.AuthSheet.AuthenticationParamsGroup.PrivateKeyEdit3.DialogTitle="Zvolte soubor se soukromým klíčem"
 MainPanel.PageControl.AuthSheet.AuthenticationParamsGroup.PrivateKeyToolsButton.Caption="&Nástroje"
 MainPanel.PageControl.AuthSheet.AuthenticationParamsGroup.PrivateKeyViewButton.Caption="&Zobrazit veřejný klíč"
-MainPanel.PageControl.AuthSheet.GSSAPIGroup.AuthGSSAPICheck3.Caption="Pokusit se o GSSAPI/&SSPI autentizaci"
+MainPanel.PageControl.AuthSheet.GSSAPIGroup.AuthGSSAPICheck3.Caption="Zkusit GSSAPI/&SSPI autentizaci"
 MainPanel.PageControl.AuthSheet.GSSAPIGroup.GSSAPIFwdTGTCheck.Caption="Povolit &delegování přihlašovacích údajů s GSSAPI"
 MainPanel.PageControl.BugsSheet.Caption="Chyby"
 MainPanel.PageControl.BugsSheet.BugsGroupBox.Caption="Rozpoznávání známých chyb SSH serverů"
@@ -1747,7 +1761,7 @@ HelpButton.Caption="Nápově&da"
 MinimizeMenu.Minimize1.Caption="Mi&nimalizovat"
 MinimizeMenu.MinimizetoTray1.Caption="Mi&nimalizovat do oznamovací oblasti"
 StartMenu.Start1.Caption="&Začít"
-StartMenu.StartInNewWindow1.Caption="Začít v &novém okně"
+StartMenu.StartInNewWindowItem.Caption="Začít v &novém okně"
 
 [SynchronizeChecklist.dfm]
 Panel.OkButton.Caption="OK"
@@ -1852,7 +1866,7 @@ LIST_DIR_ERROR="Chyba při zjišťování obsahu adresáře '%s'."
 LIST_LINE_ERROR="Neočekávaný řádek adresářového výpisu '%s'."
 RIGHTS_ERROR="Neplatný popis přístupových práv '%s'."
 CLEANUP_CONFIG_ERROR="Nepodařilo se vyčistit obecná nastavení."
-CLEANUP_HOSTKEYS_ERROR="Nepodařilo se vyčistit uložená místa."
+CLEANUP_CACHES_ERROR="Nepodařilo se vyčistit mezipaměti."
 CLEANUP_SEEDFILE_ERROR="Nepodařilo se vyčistit soubor se zdrojem náhodných čísel."
 CLEANUP_SESSIONS_ERROR="Nepodařilo se vyčistit uložené klíče hostitelů."
 DETECT_RETURNVAR_ERROR="Nepodařilo se zjistit název proměnné obsahující návratový kód příkazů."
@@ -2009,7 +2023,7 @@ CERT_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE="Nepodařilo se ověřit první certifi
 CERT_ERR_UNKNOWN="Neznámá chyba při ověřování certifikátu."
 CERT_ERRDEPTH="K chybě došlo na úrovni %d v řetězci certifikátů."
 MASK_ERROR="Maska je neplatná poblíž '%s'."
-FTP_CANNOT_OPEN_ACTIVE_CONNECTION2="Server nemohl otevřít spojení v aktivním módu. Pokud jste za směrovačem NAT, je možné že budete muset určit externí IP adresu. Jinak zvažte použití pasivního módu."
+FTP_CANNOT_OPEN_ACTIVE_CONNECTION2="Server nemohl otevřít spojení v aktivním režimu. Pokud jste za směrovačem NAT, je možné že budete muset určit externí IP adresu. Jinak zvažte použití pasivního režimu."
 DELETE_LOCAL_FILE_ERROR="Chyba při mazání souboru '%s'."
 URL_OPTION_BOOL_VALUE_ERROR="Neplatná hodnota přepínače '%s'. Platné hodnoty jsou 'on' a 'off'."
 CANNOT_OPEN_SESSION_FOLDER="Nelze otevřít složku míst nebo pracovní prostor."
@@ -2076,6 +2090,9 @@ MISSING_TARGET_BUCKET="Zadejte cílový bucket."
 UNKNOWN_FILE_ENCRYPTION="Soubor není zašifrovaný známou šifrou."
 INVALID_ENCRYPT_KEY="**Špatný šifrovací klíč..**\n\nŠifrovací klíč pro šifru %s musí mít %d bajtů. Musí být zadán v šestnáctkovém zápise (tedy %d znaků)."
 UNREQUESTED_FILE="Server poslal soubor, který nebyl vyžádán."
+STORE_NEW_HOSTKEY_ERROR="Chyba při ukládání nového klíče hostitele."
+STREAM_IN_SCRIPT_ERROR="Při nahrávání stremovaných dat může být uveden jen jeden zdroj a cíl musí obsahovat jméno souboru."
+STREAM_READ_ERROR="Chyba při čtení vstupního streamu."
 CONFIRM_PROLONG_TIMEOUT3="Hostitel nekomunikuje již %d sekund.\n\nČekat dalších %0:d sekund?"
 PROMPT_KEY_PASSPHRASE="&Heslo ke klíči '%s':"
 FILE_OVERWRITE="Soubor '%s' již existuje. Skutečně přepsat?"
@@ -2115,7 +2132,7 @@ RENAME_TITLE="Přenést pod jiným názvem"
 RENAME_PROMPT2="&Nový název:"
 VERIFY_CERT_PROMPT3="**Certifikát serveru není znám. Nemáte žádnou záruku, že server je počítač, který myslíte.**\n\nDetaily certifikátu serveru následují:\n\n%s\n\nPokud důvěřujete tomuto certifikátu, stiskněte Ano. Pro připojení bez uložení certifikátu stiskněte Ne. Pro přerušení spojení stiskněte Storno.\n\nPokračovat ve spojení a uložit certifikát?"
 VERIFY_CERT_CONTACT="- Organizace: %s\n|- Místo: %s\n|- Ostatní: %s\n"
-CERT_TEXT="Vydavatel:\n%s\nSubjekt:\n%s\nPlatnost: %s - %s\n\nOtisk (SHA-1): %s\n\nShrnutí: %s"
+CERT_TEXT2="Vydavatel:\n%s\nSubjekt:\n%s\nPlatnost: %s - %s\n\nOtisky:\n- SHA-256: %s\n- SHA-1: %s\n\nShrnutí: %s"
 CERTIFICATE_PASSPHRASE_PROMPT="&Heslo ke klientskému certifikátu:"
 CERTIFICATE_PASSPHRASE_TITLE="Heslo ke klientskému certifikátu"
 KEY_TYPE_CONVERT3="**Chcete převét tento klíč ve formátu %s na formát PuTTY?**\n\n%s"
@@ -2368,7 +2385,7 @@ REMOVE_PATH_ERROR="Chyba při odstraňování adresáře '%s' z vyhledávací ce
 ALREADY_EDITED_EXTERNALLY_OR_UPLOADED="Soubor '%s' je již otevřen v externím editoru (aplikaci) nebo je nahráván."
 COPY_PARAM_NO_RULE="Není zadána žádna maska pro automatický výběr přednastavení."
 COPY_PARAM_DUPLICATE="Přednastavení možností přenosu s popisem '%s' již existuje."
-CUSTOM_COMMAND_IMPOSSIBLE="Vlastní příkaz '%s' nemůže být nyní proveden. Nejprve označte soubory."
+CUSTOM_COMMAND_IMPOSSIBLE2="**Vlastní příkaz '%s' nemůže být nyní proveden.** Možná musíte nejdříve označit soubory nebo otevřít spojení."
 CUSTOM_COMMAND_AD_HOC_NAME="Ad Hoc"
 EDIT_SESSION_CLOSED_RELOAD="Není možné znovu načíst soubor '%s', spojení '%s' již bylo uzavřeno."
 DECRYPT_PASSWORD_ERROR="Heslo nelze dešifrovat."
@@ -2411,6 +2428,7 @@ EXTENSION_INSTALLED_ALREADY="Toto rozšíření je již nainstalované."
 EXTENSION_LOAD_ERROR="Chyba při nahrávání rozšíření z \"%s\"."
 NO_SITE_FOR_COMMAND="**Není otevřené žádné spojení**\nVybraný příkaz má volby specifické pro určité místo, ale žádné spojení není otevřené."
 DD_TARGET_UNKNOWN="**Program nedokázal určit složku, do které byly přetažené soubor(y) puštěny.** V základním režimu, WinSCP umožnuje tažení souborů pouze do lokálních a namapovaných disků.\n\nTažení do jiných cílů můžete povolit v nastavení. Pro podrobnosti stiskněte tlačíko Nápověda."
+JUMPLIST_ERROR="Chyba při aktualizaci jump listu."
 CONFIRM_OVERWRITE_SESSION="Místo s názvem '%s' již existuje. Přepsat?"
 CREATE_LOCAL_DIRECTORY="Adresář '%s' neexistuje. Vytvořit?"
 CANCEL_OPERATION_FATAL2="**Přerušit přenos souboru?**\n \nOperace nemůže být přerušena uprostřed přenosu souboru.\nStiskněte 'Ano' pro přerušení přenosu a ukončení spojení.\nStiskněte 'Ne' pro dokončení přenosu souboru.\nStiskněte 'Storno' pro pokračování operace."
@@ -2465,7 +2483,7 @@ REPORT_BUTTON="&Nahlásit"
 MASTER_PASSWORD_OTHER_INSTANCE="Bězí jiné instance WinSCP\n\nNastavení nebo smazání hlavního hesla, za běhu jiné instance WinSCP, může způsobit ztrátu vašich uložených hesel.\n\nPřed pokračováním, ukončete prosím nejdříve ostatní instance."
 EDIT_SESSION_REATTACH="**Chcete připojit editovaný soubor '%s' ke spojení '%s'?**\n\nPůvodní spojení, ve kterém byl soubor '%s' stažen do editoru bylo již uzavřeno."
 CONFIRM_UNREGISTER_URL="Chcete zrušit registraci WinSCP pro obsluhu URL adres?"
-INTERNAL_EDITOR_LARGE_FILE="**Chcete otevřít velký soubor?**\n\nSoubor, který se pokoušíte otevřít v interním editoru, je příliš velký (%s). Interní editor WinSCP není určen k editování velkých souborů. Zvažte použití externího editoru schopného editace velkých souborů.\n\nMůžete zkusit soubor přesto otevřít, je ale možné že dojde k vyčerpání paměti."
+INTERNAL_EDITOR_LARGE_FILE2="**Chcete otevřít velký soubor?**\n\nSoubor, který se pokoušíte otevřít v interním editoru, je příliš velký (%s). Interní editor WinSCP není určen k editování velkých souborů. Zvažte použití externího editoru schopného editace velkých souborů.\n\nMůžete zkusit soubor přesto otevřít, je ale možné že WinSCP selže."
 CLOSE_BUTTON="Zavřít"
 EXTENSION_UNTRUSTED="Toto rozšíření nepochází z důvěryhodného zdroje. Chcete ho přesto nainstalovat?"
 EXTENSION_NOT_LATEST="**Byla použita poslední kompatibilní a důvěryhodná verze rozšíření.**\n\nNejnovější verze rozšíření buď ještě nebyla zkontrolována nebo není kompatibilní s touto verzí WinSCP."
@@ -2608,6 +2626,11 @@ AUTO_WORKSPACE_ENABLE="Stiskněte 'Ne' pro povolení automatického ukládání
 USAGE_BROWSE="Vybere uvedený soubor v panelu(ech) souborů."
 PUTTY_SETTINGS_INSTRUCTIONS="**Editování nastevení terminálu v PuTTY.**\n\nProgram PuTTY bude spuštěn. Editujte nastavení terminálu dočasného spojení %s. WinSCP si tato nastavení zapamatuje, po té co zavřete program PuTTY."
 PUTTY_SETTINGS_SITE_NAME="Nastavení terminálu pro %s"
+USAGE_USERNAME="Alternativní způsob jak zadat uživatelské jméno"
+USAGE_PASSWORD="Alternativní způsob jak zadat heslo"
+USAGE_INTERACTIVEINPUT="Všechny výzvy budou automaticky stornovány"
+USAGE_STDOUT="Umožní streamovat soubory na standardní výstup (a přesměruje výpis stavu na chybový výstup)"
+USAGE_STDIN="Umožní streamovat soubory ze standardního vstupu"
 COPY_FILE="%s soubor '%s' do %s:"
 COPY_FILES="%s %d soubory/ů do %s:"
 COPY_TOLOCAL="lokálního adresáře"
@@ -2667,7 +2690,7 @@ PROPERTIES_UNKNOWN_SIZE="Neznámá"
 PROGRESS_CALCULATE_SIZE="Vypočítávám velikost adresáře"
 CLEANUP_CONFIG="Obecná konfigurace"
 CLEANUP_SESSIONS="Místa"
-CLEANUP_HOSTKEYS="Uložené klíče hostitelů"
+CLEANUP_CACHES="Mezipaměti"
 CLEANUP_INIFILE="INI soubor s konfigurací"
 CLEANUP_SEEDFILE="Zdroj náhodných čísel"
 SELECT_LOCAL_DIRECTORY="Zvolte lokální adresář."
@@ -2954,24 +2977,46 @@ SCREENSHOT_EDITOR="Interní textový editor"
 SCREENSHOT_TRANSFER="Okno pro nastavení parametrů přenosu"
 SCREENSHOT_PROPERTIES="Změna atributů souborů"
 LICENSE="WinSCP je svobodný software: můžete jej šířit a upravovat podle ustanovení Obecné veřejné licence GNU (GNU General Public Licence), vydávané Free Software Foundation a to buď podle 3. verze této Licence, nebo (podle vašeho uvážení) kterékoli pozdější verze."
+; <override>
 NEW_5_10_MULTI_CONNECTIONS="Přenosy na pozadí mohou použít více spojení"
+; <override>
 NEW_5_10_DPI_AWARE="Podpora pro více monitorů s různým DPI/rozlišením"
+; <override>
 NEW_5_10_FIND="Okno Hledat neblokuje hlavní okno a nalezené soubory je možné stáhnout nebo smazat přímo na okně Hledat"
+; <override>
 NEW_5_10_ONEDRIVE="Podpora pro Microsoft OneDrive"
+; <override>
 NEW_5_10_AUTOMATION="Mnoho vylepšení vlatních příkazů/rozšíření a .NET assembly"
+; <override>
 NEW_5_12_S3="Podpora pro protokol Amazon S3"
+; <override>
 NEW_5_12_SHA256_HOSTKEY="Podpora pro SHA-256 otisky klíče hostitele"
+; <override>
 NEW_5_12_AUTOMATION="Mnoho vylepšení .NET assembly, včetně podpory pro balíčkovou správu PackageReference NuGet balíku"
+; <override>
 NEW_5_14_ENCRYPTION="Soubory mohou být volitelně šifrovány při jejich ukládání na SFTP server"
+; <override>
 NEW_5_14_UNC="Je možné procházet lokální UNC cesty"
+; <override>
 NEW_5_14_CLIPBOARD="Soubory lze kopírovat do schránky"
+; <override>
 NEW_5_14_SYNCHRONIZATION="Mnoho vylepšení synchronizace adresářů"
+; <override>
 NEW_5_14_FILES_COLOR="Volitelné barvení souborů v panelu podle masky souborů"
+; <override>
 NEW_5_16_TABS="Vylepšení správy spojení a pracovního prostoru"
+; <override>
 NEW_5_16_HW_AES="Hardwarová akcelerace AES"
+; <override>
 NEW_5_16_ARCHIVE_DOWNLOAD="Rozšíření 'Archivovat a stáhnout' pro archivování souborů a stažení archivu"
+; <override>
 NEW_5_16_SYNC_CHECKLIST="Vylepšení okna 'Potvrzení akcí synchronizace'"
+; <override>
 NEW_5_16_FIND_SORT="Výsledky vyhledávání lze seřadit"
+NEW_5_18_QUEUE_FILE_LIST="Je možné zobrazit úplný seznam souboru ve frontě"
+NEW_5_18_STREAMING="Podpora streamování ve skriptování a .NET assembly"
+NEW_5_18_REMOTE_SYNC="Rozšíření pro synchronizaci dvou vzdálených serverů"
+NEW_5_18_TLS="Aktivováno TLS 1.3 a přidaná podpora pro SHA-256 otisky pro TLS/SSL"
 
 [WinSCP_DRC.rc]
 Baseutils_SNoValidPath="Nepodařilo se najít žádnou platnou cestu."
@@ -2988,7 +3033,6 @@ Customdirview_STextDirectories="%u adresáře/ů"
 Customdirview_STextFileExt="Soubor %s"
 Customdirview_STextFiles="%u soubory/ů"
 Customunixdirview_SUnixDefaultRootName="/ <kořen>"
-Dirview_coFileOperatorTitle="Operace na systému souborů"
 Dirviewcolproperties_SDirViewAttrCol="Atrib"
 Dirviewcolproperties_SDirViewChangedCol="Změněno"
 Dirviewcolproperties_SDirViewExtCol="Příp"
@@ -2999,7 +3043,6 @@ Dragdrop_MIAbortStr="Pře&rušit"
 Dragdrop_MICopyStr="&Kopírovat sem"
 Dragdrop_MILinkStr="Vytvořit zde &zástupce"
 Dragdrop_MIMoveStr="&Přesunout sem"
-Fileoperator_SFileOperation="Operace se soubory"
 Iedriveinfo_ErrorInvalidDrive="%s není platný znak disku."
 System_Sysconst_SInvalidDate="'%s' není platné datum."
 System_Sysconst_SInvalidDateTime="'%s' není platné datum a čas."
@@ -3237,8 +3280,6 @@ ExistingFileReadOnly2="Nelze nahradit existující soubor, protože je určen po
 ExistingFileReadOnlyRetry="&Odstranit atribut \"pouze pro čtení\" a zopakovat akci"
 ExistingFileReadOnlyKeepExisting="&Ponechat existující soubor"
 ErrorReadingExistingDest="Došlo k chybě při pokusu o čtení existujícího souboru:"
-FileExists="Soubor již existuje.\n\nMá být průvodcem instalace přepsán?"
-ExistingFileNewer="Existující soubor je novější než ten, který se průvodce instalací pokouší nainstalovat. Doporučuje se ponechat existující soubor.\n\nChcete jej ponechat?"
 ErrorChangingAttr="Došlo k chybě při pokusu o změnu atributů existujícího souboru:"
 ErrorCreatingTemp="Došlo k chybě při pokusu o vytvoření souboru v cílové složce:"
 ErrorReadingSource="Došlo k chybě při pokusu o čtení zdrojového souboru:"
@@ -3261,7 +3302,7 @@ UninstallNotFound="Soubor \"%1\" neexistuje. Produkt nelze odinstalovat."
 UninstallOpenError="Soubor \"%1\" nelze otevřít. Produkt nelze odinstalovat."
 UninstallUnsupportedVer="Formát souboru se záznamy k odinstalaci produktu \"%1\" nebyl touto verzí průvodce odinstalací rozpoznán. Produkt nelze odinstalovat"
 UninstallUnknownEntry="V souboru obsahujícím informace k odinstalaci produktu byla zjištěna neznámá položka (%1)"
-ConfirmUninstall="Jste si opravdu jisti, že chcete produkt %1 a všechny jeho součásti odinstalovat?"
+ConfirmUninstall="Určitě chcete produkt %1 a všechny jeho součásti odinstalovat?"
 UninstallOnlyOnWin64="Tento produkt lze odinstalovat pouze v 64-bitových verzích MS Windows."
 OnlyAdminCanUninstall="K odinstalaci tohoto produktu musíte být přihlášeni s právy administrátora."
 UninstallStatusLabel="Čekejte prosím, dokud produkt %1 nebude odinstalován z Vašeho počítače."
@@ -3394,4 +3435,17 @@ ArchiveDownload.ExtractCheckbox.Caption="&Rozbalit po stažení"
 ArchiveDownload.Use7zipCheckbox.Caption="Pro rozbalení použít &7-zip"
 ArchiveDownload.Path7zipFile.Caption="&Cesta k 7-zip (7z.exe/7za.exe):"
 ArchiveDownload.LoggingGroup.Caption="Protokolování"
+SynchronizeAnotherServer.Name="&Synchronizovat s jiným vzdáleným serverem"
+SynchronizeAnotherServer.Description="Synchronizuje adresář na jiném serveru (nebo jiný adresář na tomto serveru) proti adresáři na tomto serveru"
+SynchronizeAnotherServer.SynchronizeDirectoryFromThisServerGroup.Caption="Synchronizovat adresář z &tohoto serveru:"
+SynchronizeAnotherServer.RemotePath1Textbox.Caption="&Adresář:"
+SynchronizeAnotherServer.ToAnotherServerGroup.Caption="... na &jiný server:"
+SynchronizeAnotherServer.SessionUrl2Textbox.Caption="&Spojení:"
+SynchronizeAnotherServer.PasswordPromptCheckbox.Caption="&Vyzvat k zadání hesla:"
+SynchronizeAnotherServer.RemotePath2Textbox.Caption="Adre&sář:"
+SynchronizeAnotherServer.OptionsGroup.Caption="Volby"
+SynchronizeAnotherServer.DeleteCheckbox.Caption="&Mazat soubory"
+SynchronizeAnotherServer.PreviewCheckbox.Caption="Ná&hled změn"
+SynchronizeAnotherServer.ContinueOnErrorCheckbox.Caption="Pok&račovat při chybě"
+SynchronizeAnotherServer.LoggingGroup.Caption="Protokolování"
 

+ 66 - 12
translations/DE.ini

@@ -137,6 +137,7 @@ HelpButton.Caption="&Hilfe"
 
 [CustomScpExplorer.dfm]
 QueueSplitter.Hint="Ziehen, um die Größe der Liste zu ändern. Doppelklick blendet die Liste aus"
+QueuePanel.QueueFileListSplitter.Hint="Ziehen, um die Größe der Übertragungsliste zu ändern. Doppelklick blendet die Übertragungsliste aus"
 QueuePanel.QueueView3.item0.Caption="Aktion"
 QueuePanel.QueueView3.item1.Caption="Quelle"
 QueuePanel.QueueView3.item2.Caption="Ziel"
@@ -283,6 +284,7 @@ DirectionGroup.SynchronizeLocalButton.Caption="&Lokal"
 CompareCriterionsGroup.Caption="Vergleichskriterien"
 CompareCriterionsGroup.SynchronizeByTimeCheck.Caption="&Änderungszeit"
 CompareCriterionsGroup.SynchronizeBySizeCheck.Caption="Datei&größe"
+CompareCriterionsGroup.SynchronizeCaseSensitiveCheck.Caption="Groß- und Kleinschreibung be&achten"
 SaveSettingsCheck.Caption="Diese Optionen in Z&ukunft verwenden"
 CopyParamGroup.Caption="Übertragungsoptionen"
 HelpButton.Caption="&Hilfe"
@@ -791,6 +793,8 @@ ExplorerActions.QueueHideAction.Caption="&Ausblenden"
 ExplorerActions.QueueHideAction.Hint="Übertragungsliste ausblenden"
 ExplorerActions.QueueToolbarAction.Caption="&Symbolleiste"
 ExplorerActions.QueueToolbarAction.Hint="Die Symbolleiste für die Übertragungsliste (im Übertragungslistenfenster) anzeigen bzw. ausblenden"
+ExplorerActions.QueueFileListAction.Caption="Übertragungsliste"
+ExplorerActions.QueueFileListAction.Hint="Übertragungsliste anzeigen bzw. ausblenden"
 ExplorerActions.QueuePreferencesAction.Caption="&Anpassen …"
 ExplorerActions.QueuePreferencesAction.Hint="Die Übertragungsliste anpassen"
 ExplorerActions.PasteAction2.Caption="&Einfügen"
@@ -961,6 +965,10 @@ CommanderBarPopup.RemotePanel2.Caption="&Entferntes Listenfenster"
 CommanderBarPopup.RemotePanel2.Hint="Layout des entfernten Listenfensters ändern"
 CommanderBarPopup.Options1.Caption="Übertragungs&liste"
 CommanderBarPopup.Options1.Hint="Übertragungsliste konfigurieren"
+RemotePanelPopup.TBXSubmenuItem8.Caption="&Wechseln zu"
+RemotePanelPopup.TBXSubmenuItem8.Hint="Zu einem bestimmten Verzeichnis wechseln"
+LocalPanelPopup.TBXSubmenuItem10.Caption="&Wechseln zu"
+LocalPanelPopup.TBXSubmenuItem10.Hint="Zu einem bestimmten Verzeichnis wechseln"
 LocalDirViewColumnPopup.LocalFormatSizeBytesPopupItem.Caption="Dateigrößen an&zeigen in"
 LocalDirViewColumnPopup.LocalFormatSizeBytesPopupItem.Hint="Anzeigeformat für Dateigrößen auswählen"
 LocalDirViewColumnPopup.Showcolumns3.Caption="Spalten anzeigen"
@@ -1261,9 +1269,10 @@ MainPanel.PageControl.IntegrationAppSheet.ExternalAppsGroup.PuttyPathBrowseButto
 MainPanel.PageControl.IntegrationAppSheet.ExternalAppsGroup.TelnetForFtpInPuttyCheck.Caption="&Telnet-Sitzungen für FTP-Sitzungen in PuTTY öffnen"
 MainPanel.PageControl.IntegrationAppSheet.ExternalAppsGroup.PuttyPathHintText.Caption="&Muster"
 MainPanel.PageControl.NetworkSheet.Caption="Netzwerk"
-MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox.Caption="Externe IP-Adresse"
-MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox.RetrieveExternalIpAddressButton.Caption="Externe IP-Adresse vom &Betriebssystem abrufen"
-MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox.CustomExternalIpAddressButton.Caption="&Folgende externe IP-Adresse verwenden:"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.Caption="Eingehende FTP Verbindungen (aktiver Modus)"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.RetrieveExternalIpAddressButton.Caption="Externe IP-Adresse vom &Betriebssystem abrufen"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.CustomExternalIpAddressButton.Caption="&Folgende externe IP-Adresse verwenden:"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.LocalPortNumberCheck.Caption="Nur auf diesen lokalen &Ports lauschen:"
 MainPanel.PageControl.NetworkSheet.ConnectionsGroup.Caption="Verbindungen"
 MainPanel.PageControl.NetworkSheet.ConnectionsGroup.TryFtpWhenSshFailsCheck.Caption="Wenn die SFTP-Verbindung abgelehnt wird, den FTP-Port probieren"
 MainPanel.PageControl.PanelRemoteSheet.Caption="Entfernt"
@@ -1594,6 +1603,10 @@ MainPanel.PageControl.S3Sheet.S3Group.Label27.Caption="Stan&dardregion:"
 MainPanel.PageControl.S3Sheet.S3Group.S3UrlStyleLabel.Caption="&URL-Stil:"
 MainPanel.PageControl.S3Sheet.S3Group.S3UrlStyleCombo.Items.Strings.0="Virtueller Host"
 MainPanel.PageControl.S3Sheet.S3Group.S3UrlStyleCombo.Items.Strings.1="Pfad"
+MainPanel.PageControl.S3Sheet.S3AuthenticationGroup.Caption="Authentifizierung"
+MainPanel.PageControl.S3Sheet.S3AuthenticationGroup.Label5.Caption="&Sicherheitstoken:"
+MainPanel.PageControl.WebDavSheet.WebdavGroup.Caption="Protokolloptionen"
+MainPanel.PageControl.WebDavSheet.WebdavGroup.WebDavLiberalEscapingCheck.Caption="&Toleriere nicht-kodierte Spezialzeichen in Dateinamen"
 MainPanel.PageControl.ConnSheet.Caption="Verbindung"
 MainPanel.PageControl.ConnSheet.FtpPingGroup.Caption="Erhaltungspakete (Keep-Alive)"
 MainPanel.PageControl.ConnSheet.FtpPingGroup.FtpPingIntervalLabel.Caption="Sekunden &zwischen Erhaltungspaketen"
@@ -1675,6 +1688,7 @@ MainPanel.PageControl.KexSheet.KexOptionsGroup.Caption="Optionen für Schlüssel
 MainPanel.PageControl.KexSheet.KexOptionsGroup.Label28.Caption="Algorithmusauswahl"
 MainPanel.PageControl.KexSheet.KexOptionsGroup.KexUpButton.Caption="Nach &oben"
 MainPanel.PageControl.KexSheet.KexOptionsGroup.KexDownButton.Caption="Nach &unten"
+MainPanel.PageControl.KexSheet.KexOptionsGroup.AuthGSSAPIKEXCheck.Caption="&GSSAPI Schlüsseltausch versuchen"
 MainPanel.PageControl.KexSheet.KexReexchangeGroup.Caption="Erneuten Schlüsseltausch durchführen nach:"
 MainPanel.PageControl.KexSheet.KexReexchangeGroup.Label31.Caption="Zeitintervall (in Minuten, 0 für kein Limit)"
 MainPanel.PageControl.KexSheet.KexReexchangeGroup.Label32.Caption="übertragene Datenmenge (0 für kein Limit)"
@@ -1852,7 +1866,7 @@ LIST_DIR_ERROR="Fehler beim Anzeigen des Verzeichnisses „%s“."
 LIST_LINE_ERROR="Unerwartete Zeile in Verzeichnisliste „%s“."
 RIGHTS_ERROR="Ungültige Rechtebeschreibung „%s“"
 CLEANUP_CONFIG_ERROR="Fehler beim Bereinigen der allgemeinen Konfiguration."
-CLEANUP_HOSTKEYS_ERROR="Fehler beim Bereinigen der Verbindungsziele."
+CLEANUP_CACHES_ERROR="Fehler beim Bereinigen der temporären Zwischenspeicher."
 CLEANUP_SEEDFILE_ERROR="Fehler beim Bereinigen der Initialisierungsdatei für den Zufallszahlengenerator."
 CLEANUP_SESSIONS_ERROR="Fehler beim Bereinigen der zwischengespeicherten Hostschlüssel."
 DETECT_RETURNVAR_ERROR="Fehler beim Erkennen der Variablen die den Rückgabecode des letzten Befehls enthält."
@@ -2076,6 +2090,9 @@ MISSING_TARGET_BUCKET="Zielbucket angeben."
 UNKNOWN_FILE_ENCRYPTION="Die Datei ist nicht mit einer bekannten Verschlüsselung verschlüsselt."
 INVALID_ENCRYPT_KEY="**Ungültiger Verschlüsselungsschlüssel.**\n\n\nVerschlüsselungsschlüssel für %s Verschlüsselung muss %d Bytes haben. Er muss in hexadezimaler Darstellung (z. B. %d Zeichen) eingegeben werden."
 UNREQUESTED_FILE="Der Server hat eine Datei gesendet, die nicht angefordert wurde."
+STORE_NEW_HOSTKEY_ERROR="Neuer Hostschlüssel konnte nicht gespeichert werden."
+STREAM_IN_SCRIPT_ERROR="Beim hochladen gestreamter Daten kann nur eine Quelle angegebenwerden und das Ziel muss ein Dateiname sein."
+STREAM_READ_ERROR="Fehler beim Lesen des Eingangsstreams."
 CONFIRM_PROLONG_TIMEOUT3="Entfernter Rechner sendet seit %d Sekunden keine Daten.\n\nWeitere %0:d Sekunden warten?"
 PROMPT_KEY_PASSPHRASE="Passphrase für Schlüssel „%s“"
 FILE_OVERWRITE="Datei „%s“ ist bereits vorhanden. Überschreiben?"
@@ -2115,7 +2132,7 @@ RENAME_TITLE="Unter anderem Namen übertragen"
 RENAME_PROMPT2="&Neuer Name:"
 VERIFY_CERT_PROMPT3="**Das Zertifikat des Servers ist unbekannt. Es gibt keine Garantie, dass der Server der Rechner ist, mit dem Sie sich verbinden wollten.**\n\nDie Details des Serverzertifikats folgen:\n\n%s\n\nWenn Sie diesem Zertifikat vertrauen, „Ja“ wählen. Um die Verbindung herzustellen, ohne das Zertifikat zu speichern, „Nein“ wählen. Um die Verbindung abzubrechen, „Abbrechen“ wählen."
 VERIFY_CERT_CONTACT="- Organisation: %s\n|- Ort: %s\n|- Anderes: %s\n"
-CERT_TEXT="Herausgeber:\n%s\nBetreff:\n%s\nGültig: %s - %s\n\nFingerabdruck (SHA1): %s\n\nZusammenfassung: %s"
+CERT_TEXT2="Herausgeber:\n%s\nBetreff:\n%s\nGültig: %s - %s\n\nFingerabdrücke:\n- SHA-256: %s\n- SHA-1: %s\n\nZusammenfassung: %s"
 CERTIFICATE_PASSPHRASE_PROMPT="&Passwort für das Clientzertifikat:"
 CERTIFICATE_PASSPHRASE_TITLE="Clientzertifikat Passwort"
 KEY_TYPE_CONVERT3="**Möchten Sie diesen privaten Schlüssel aus dem %s-Format in das PuTTY-Format umwandeln?**\n\n%s"
@@ -2368,7 +2385,7 @@ REMOVE_PATH_ERROR="Fehler beim Entfernen von Pfad „%s“ vom Suchpfad (%%PATH%
 ALREADY_EDITED_EXTERNALLY_OR_UPLOADED="Die Datei „%s“ wurde bereits im externen Editor (Anwendung) geöffnet oder hochgeladen."
 COPY_PARAM_NO_RULE="Sie haben keine Regelmasken für die automatische Profilauswahl angegeben."
 COPY_PARAM_DUPLICATE="Es ist bereits ein Übertragungseinstellungsprofil mit der Beschreibung „%s“ vorhanden."
-CUSTOM_COMMAND_IMPOSSIBLE="Der benutzerdefinierte Befehl „%s“ kann nicht ausgeführt werden. Bitte wählen Sie zuerst die Dateien für den Befehl aus."
+CUSTOM_COMMAND_IMPOSSIBLE2="**Der benutzerdefinierte Befehl '%s' kann nicht ausgeführt werden.** Eventuell müssen Sie für diesen Befehl zunächst Dateien auswählen oder eine Sitzung öffnen."
 CUSTOM_COMMAND_AD_HOC_NAME="Ad-Hoc"
 EDIT_SESSION_CLOSED_RELOAD="Datei „%s“ kann neu geladen werden, die Sitzung „%s“ wurde bereits geschlossen."
 DECRYPT_PASSWORD_ERROR="Das Passwort kann nicht verschlüsselt werden."
@@ -2411,6 +2428,7 @@ EXTENSION_INSTALLED_ALREADY="Diese Erweiterung ist bereits installiert."
 EXTENSION_LOAD_ERROR="Fehler beim Laden der Erweiterung von „%s“."
 NO_SITE_FOR_COMMAND="**Es ist keine Sitzung geöffnet**\nDer gewählte Befehl besitzt sitzungsspezifische Optionen, aber keine Sitzung ist geöffnet."
 DD_TARGET_UNKNOWN="**WinSCP konnte keinen Ordner erkennen, in den die hineingezogenen Dateien abgelegt wurden.** Im Standard-„Drag & Drop“-Modus erlaubt WinSCP das Ablegen von Dateien nur auf lokale Laufwerke und zugeordnete Netzlaufwerke.\n\n\nSie können in den Einstellungen das Ablegen von Dateien für weitere Ziele erlauben. Drücken Sie die Schaltfläche „Hilfe“ für weitere Informationen."
+JUMPLIST_ERROR="Fehler beim Aktualisieren der Jump List."
 CONFIRM_OVERWRITE_SESSION="Ein Verbindungsziel mit dem Namen „%s“ ist bereits vorhanden. Überschreiben?"
 CREATE_LOCAL_DIRECTORY="Verzeichnis „%s“ ist nicht vorhanden. Verzeichnis erstellen?"
 CANCEL_OPERATION_FATAL2="**Möchten Sie die Dateiübertragung wirklich beenden?**\n \nDer Vorgang kann nicht während einer Dateiübertragung beendet werden.\n„Ja“ wählen, um die aktuelle Übertragung hart durch Verbindungstrennung zu beenden.\n„Nein“ wählen, um die aktuelle Übertragung abzuschließen.\n„Abbrechen“ wählen, um keine Aktion durchzuführen."
@@ -2465,7 +2483,7 @@ REPORT_BUTTON="Me&lden"
 MASTER_PASSWORD_OTHER_INSTANCE="WinSCP wird bereits ausgeführt.\n\nWenn eine weitere Instanz von WinSCP ausgeführt wird, kann das Setzen oder Löschen des Hauptpasswortes zum Verlust aller gespeicherter Passwörter führen.\n\nBitte beenden Sie zunächst alle anderen Instanzen von WinSCP."
 EDIT_SESSION_REATTACH="**Wollen Sie die bearbeitete Datei „%s“ an die Sitzung „%s“ binden?**\n\nDie ursprüngliche Sitzung, die zum Herunterladen der Datei „%s“ verwendet wurde, wurde zwischenzeitlich geschlossen."
 CONFIRM_UNREGISTER_URL="Soll WinSCP als Standardprogramm für URL-Adressen abgemeldet werden?"
-INTERNAL_EDITOR_LARGE_FILE="**Möchten Sie die große Datei öffnen?**\n\nDie Datei, die Sie im internen Editor öffnen wollen, ist zu groß (%s). WinSCPs interner Editor ist nicht zum Bearbeiten großer Dateien vorgesehen. Verwenden Sie stattdessen ggf. einen externen Editor für diese Aufgabe.\n\nSie können versuchen, die Datei trotzdem zu öffnen, es kann aber passieren, dass dafür nicht ausreichend Speicher zur Verfügung steht."
+INTERNAL_EDITOR_LARGE_FILE2="**Möchten Sie die große Datei öffnen?**\n\nDie Datei, die Sie im internen Editor öffnen wollen, ist zu groß (%s). WinSCPs interner Editor ist nicht zum Bearbeiten großer Dateien vorgesehen. Verwenden Sie stattdessen ggf. einen externen Editor für diese Aufgabe.\n\nSie können versuchen, die Datei trotzdem zu öffnen, es kann aber passieren, dass WinSCP daran scheitert."
 CLOSE_BUTTON="Schließen"
 EXTENSION_UNTRUSTED="Die Erweiterung stammt nicht aus einer vertrauenswürdigen Quelle. Möchten Sie diese trotzdem installieren?"
 EXTENSION_NOT_LATEST="**Die letzte kompatible und vertrauenswürdige Version der Erweiterung wird verwendet.**\n\nDie aktuellste Version der Erweiterung wurde entweder noch nicht überprüft oder ist mit dieser WinSCP-Version nicht kompatibel."
@@ -2608,6 +2626,11 @@ AUTO_WORKSPACE_ENABLE="„Nein“ wählen, um die automatische Speicherung des A
 USAGE_BROWSE="Wählt die angegebene Datei im Dateifenster bzw. den Dateifenstern aus."
 PUTTY_SETTINGS_INSTRUCTIONS="**Bearbeitet die Terminaleinstellungen in PuTTY.**\n\nPuTTY wird gestartet. Bearbeiten Sie die Terminaleinstellungen eines temporären Ziels %s. Nachdem Sie PuTTY geschlossen haben, wird WinSCP diese Einstellungen in Zukunft verwenden."
 PUTTY_SETTINGS_SITE_NAME="Terminaleinstellungen für %s"
+USAGE_USERNAME="Ein alternativer Weg, einen Benutzername anzugeben"
+USAGE_PASSWORD="Ein alternativer Weg, ein Passwort anzugeben"
+USAGE_INTERACTIVEINPUT="Alle Eingabeaufforderungen werden automtatisch abgebrochen"
+USAGE_STDOUT="leitet den Datenstrom nach stdout (und leitet Statusausgaben auf den Fehlerkanal stderr um)"
+USAGE_STDIN="liest den Datenstrom von stdin"
 COPY_FILE="%s Datei „%s“ nach %s"
 COPY_FILES="%s %d Dateien nach %s"
 COPY_TOLOCAL="Lokales Verzeichnis"
@@ -2667,7 +2690,7 @@ PROPERTIES_UNKNOWN_SIZE="Unbekannt"
 PROGRESS_CALCULATE_SIZE="Verzeichnisgröße wird berechnet"
 CLEANUP_CONFIG="Allgemeine Konfiguration"
 CLEANUP_SESSIONS="Verbindungsziele"
-CLEANUP_HOSTKEYS="Gespeicherte Hostschlüssel"
+CLEANUP_CACHES="temporäre Zwischenspeicher"
 CLEANUP_INIFILE="Konfigurationsdatei"
 CLEANUP_SEEDFILE="Startdatei für Zufallszahlen"
 SELECT_LOCAL_DIRECTORY="Lokales Verzeichnis auswählen."
@@ -2952,24 +2975,46 @@ SCREENSHOT_EDITOR="Interner Texteditor"
 SCREENSHOT_TRANSFER="Fenster zur Einstellung der Übertragungsoptionen"
 SCREENSHOT_PROPERTIES="Änderung von Dateieigenschaften"
 LICENSE="WinSCP ist freie Software. Sie können es unter den Bedingungen der GNU General Public License, wie von der Free Software Foundation veröffentlicht, weitergeben und/oder ändern, entweder gemäß Version 3 der Lizenz oder (nach Ihrer Option) jeder späteren Version."
+; <override>
 NEW_5_10_MULTI_CONNECTIONS="Hintergrundübertragungen können über mehrere Verbindungen ausgeführt werden"
+; <override>
 NEW_5_10_DPI_AWARE="Unterstützung für mehrere Monitore mit unterschiedlichen DPI-Auflösungen"
+; <override>
 NEW_5_10_FIND="Der Suchen-Dialog blockiert nicht das Hauptfenster und gefundene Dateien können im Suchen-Dialog heruntergeladen bzw. gelöscht werden."
+; <override>
 NEW_5_10_ONEDRIVE="Unterstützung für Microsoft OneDrive"
+; <override>
 NEW_5_10_AUTOMATION="zahlreiche Verbesserungen bei benutzerdefinierten Befehlen/Erweiterungen und .NET-Assembly"
+; <override>
 NEW_5_12_S3="Unterstützung für Amazon S3-Protokoll"
+; <override>
 NEW_5_12_SHA256_HOSTKEY="Unterstützung für SHA-256 Host Key Fingerabdruck-Algorithmus"
+; <override>
 NEW_5_12_AUTOMATION="Zahlreiche Verbesserungen bei der .NET-Anbindung, einschließlich der Unterstützung der Paketverwaltung im NuGet-Paket"
+; <override>
 NEW_5_14_ENCRYPTION="Dateien können optional verschlüsselt werden, wenn sie auf einem SFTP-Server gespeichert werden"
+; <override>
 NEW_5_14_UNC="lokale UNC-Pfade können verwendet werden"
+; <override>
 NEW_5_14_CLIPBOARD="Dateien können in die Zwischenablage kopiert werden"
+; <override>
 NEW_5_14_SYNCHRONIZATION="Viele Verbesserungen bei der Verzeichnissynchronisation"
+; <override>
 NEW_5_14_FILES_COLOR="Eine optionale Einfärbung von Dateien in Dateifenstern basierend auf einer Dateimaske"
+; <override>
 NEW_5_16_TABS="Verbesserungen bei Sitzungs- und Arbeitsbereichverwaltung"
+; <override>
 NEW_5_16_HW_AES="Hardwarebeschleunigtes AES"
+; <override>
 NEW_5_16_ARCHIVE_DOWNLOAD="Erweiterung „Archivieren und herunterladen“, um entfernte Dateien in ein Archiv zu packen und dieses herunterzuladen"
+; <override>
 NEW_5_16_SYNC_CHECKLIST="Verbesserungen an der Checkliste für Synchronisationen"
+; <override>
 NEW_5_16_FIND_SORT="Suchergebnisse können nun sortiert werden"
+NEW_5_18_QUEUE_FILE_LIST="Eine komplette Liste der Dateien, die für einen Transfer vorgesehen sind, kann angezeigt werden"
+NEW_5_18_STREAMING="Unterstützung für Datenströme (streams) beim Scripting und .NET assembly"
+NEW_5_18_REMOTE_SYNC="Eine Erweiterung zur Synchronistation zweier entferter Server"
+NEW_5_18_TLS="TLS 1.3 aktiviert und Unterstützung für SHA-256 TLS/SSL Fingerabdrücke"
 
 [WinSCP_DRC.rc]
 Baseutils_SNoValidPath="Kann keinen gültigen Pfad finden."
@@ -2986,7 +3031,6 @@ Customdirview_STextDirectories="%u Verzeichnisse"
 Customdirview_STextFileExt="Datei %s"
 Customdirview_STextFiles="%u Dateien"
 Customunixdirview_SUnixDefaultRootName="/ <root>"
-Dirview_coFileOperatorTitle="Dateisystemoperation"
 Dirviewcolproperties_SDirViewAttrCol="Attr"
 Dirviewcolproperties_SDirViewChangedCol="Geändert"
 Dirviewcolproperties_SDirViewExtCol="Erweiterung"
@@ -2997,7 +3041,6 @@ Dragdrop_MIAbortStr="&Abbrechen"
 Dragdrop_MICopyStr="Hierher &kopieren"
 Dragdrop_MILinkStr="&Verknüpfung hier erstellen"
 Dragdrop_MIMoveStr="Hierher &verschieben"
-Fileoperator_SFileOperation="Dateivorgang"
 Iedriveinfo_ErrorInvalidDrive="%s ist ein ungültiger Laufwerksbuchstabe."
 System_Sysconst_SInvalidDate="„%s“ ist kein gültiges Datum"
 System_Sysconst_SInvalidDateTime="„%s“ ist keine gültige Datums- und Zeitangabe"
@@ -3251,8 +3294,6 @@ ExistingFileReadOnly2="Die vorhandene Datei kann nicht ersetzt werden, da sie sc
 ExistingFileReadOnlyRetry="&Den Schreibschutz entfernen und noch einmal versuchen"
 ExistingFileReadOnlyKeepExisting="Die &vorhandene Datei behalten"
 ErrorReadingExistingDest="Lesefehler in Datei:"
-FileExists="Die Datei ist bereits vorhanden.\n\nSoll sie überschrieben werden?"
-ExistingFileNewer="Die vorhandene Datei ist neuer als die Datei, die installiert werden soll. Es wird empfohlen, die vorhandene Datei beizubehalten.\n\n Möchten Sie die vorhandene Datei beibehalten?"
 ErrorChangingAttr="Fehler beim Ändern der Datei-Attribute:"
 ErrorCreatingTemp="Fehler beim Erstellen einer Datei im Ziel-Ordner:"
 ErrorReadingSource="Fehler beim Lesen der Quelldatei:"
@@ -3408,4 +3449,17 @@ ArchiveDownload.ExtractCheckbox.Caption="Nach dem Herunterladen &entpacken"
 ArchiveDownload.Use7zipCheckbox.Caption="&7-zip zum Entpacken verwenden"
 ArchiveDownload.Path7zipFile.Caption="7-zip-&Pfad (7z.exe/7za.exe):"
 ArchiveDownload.LoggingGroup.Caption="Protokoll"
+SynchronizeAnotherServer.Name="mit einem anderen entfernten Swerver &synchronisieren..."
+SynchronizeAnotherServer.Description="Ein Verzeichnis auf einem anderen Server (oder ein anderes Verzeichnis auf diesem Server) mit einem Verzeichnis auf dieeem Server auf dem gleichen Stand halten."
+SynchronizeAnotherServer.SynchronizeDirectoryFromThisServerGroup.Caption="Synchronisiere Verzeichnis von &diesem Server:"
+SynchronizeAnotherServer.RemotePath1Textbox.Caption="&Verzeichnis:"
+SynchronizeAnotherServer.ToAnotherServerGroup.Caption="... mit &anderem Server:"
+SynchronizeAnotherServer.SessionUrl2Textbox.Caption="&Sitzung:"
+SynchronizeAnotherServer.PasswordPromptCheckbox.Caption="&Frage nach dem Sitzungspasswort"
+SynchronizeAnotherServer.RemotePath2Textbox.Caption="Ve&rzeichnis:"
+SynchronizeAnotherServer.OptionsGroup.Caption="Optionen"
+SynchronizeAnotherServer.DeleteCheckbox.Caption="Dateien L&öschen"
+SynchronizeAnotherServer.PreviewCheckbox.Caption="Änderungs&vorschau"
+SynchronizeAnotherServer.ContinueOnErrorCheckbox.Caption="Fortsetzen bei F&ehler"
+SynchronizeAnotherServer.LoggingGroup.Caption="Protokoll"
 

+ 69 - 14
translations/FI.ini

@@ -137,6 +137,7 @@ HelpButton.Caption="&Ohje"
 
 [CustomScpExplorer.dfm]
 QueueSplitter.Hint="Raahaa muokataksesi jonolistan kokoa. Kaksoisklikkaa piilottaaksesi jonolista."
+QueuePanel.QueueFileListSplitter.Hint="Raahaa muokataksesi jonolistan kokoa. Kaksoisklikkaa piilottaaksesi jonolista."
 QueuePanel.QueueView3.item0.Caption="Toiminto"
 QueuePanel.QueueView3.item1.Caption="Lähde"
 QueuePanel.QueueView3.item2.Caption="Kohde"
@@ -283,6 +284,7 @@ DirectionGroup.SynchronizeLocalButton.Caption="&Paikallis"
 CompareCriterionsGroup.Caption="Vertailukriteerit"
 CompareCriterionsGroup.SynchronizeByTimeCheck.Caption="&Aikaleima"
 CompareCriterionsGroup.SynchronizeBySizeCheck.Caption="&Koko"
+CompareCriterionsGroup.SynchronizeCaseSensitiveCheck.Caption="Me&rkkikokoriippuvainen"
 SaveSettingsCheck.Caption="Käytä &samoja valintoja seuraavalla kerralla"
 CopyParamGroup.Caption="Siirtoasetukset"
 HelpButton.Caption="&Ohje"
@@ -291,7 +293,7 @@ ModeGroup.SynchronizeFilesButton.Caption="Synkronoi &tiedostot"
 ModeGroup.MirrorFilesButton.Caption="&Peilaa tiedostot"
 ModeGroup.SynchronizeTimestampsButton.Caption="Synkronoi &aikakoodit"
 OkMenu.Start1.Caption="&Aloita"
-OkMenu.StartInNewWindow1.Caption="Aloita uudessa ikku&nassa"
+OkMenu.StartInNewWindowItem.Caption="Aloita uudessa ikku&nassa"
 
 [GenerateUrl.dfm]
 OptionsPageControl.UrlSheet.Caption="URL"
@@ -791,6 +793,8 @@ ExplorerActions.QueueHideAction.Caption="&Piilota"
 ExplorerActions.QueueHideAction.Hint="Piilota jono"
 ExplorerActions.QueueToolbarAction.Caption="&Työkaluvalikko"
 ExplorerActions.QueueToolbarAction.Hint="Piilota/näytä työkaluvalikko (jono-paneelissa)"
+ExplorerActions.QueueFileListAction.Caption="&Tiedostolista"
+ExplorerActions.QueueFileListAction.Hint="Piilota/näytä koko jonolista"
 ExplorerActions.QueuePreferencesAction.Caption="&Muokkaa..."
 ExplorerActions.QueuePreferencesAction.Hint="Muokkaa jonolistaa"
 ExplorerActions.PasteAction2.Caption="&Liitä"
@@ -961,6 +965,10 @@ CommanderBarPopup.RemotePanel2.Caption="&Etäpaneeli"
 CommanderBarPopup.RemotePanel2.Hint="Vaihda etäpaneelin ulkonäköä"
 CommanderBarPopup.Options1.Caption="&Jono"
 CommanderBarPopup.Options1.Hint="Muokkaa jonoa"
+RemotePanelPopup.TBXSubmenuItem8.Caption="&Siirry"
+RemotePanelPopup.TBXSubmenuItem8.Hint="Siirry kansioon"
+LocalPanelPopup.TBXSubmenuItem10.Caption="&Siirry"
+LocalPanelPopup.TBXSubmenuItem10.Hint="Siirry kansioon"
 LocalDirViewColumnPopup.LocalFormatSizeBytesPopupItem.Caption="Näytä tiedostojen koot"
 LocalDirViewColumnPopup.LocalFormatSizeBytesPopupItem.Hint="Valitse tiedostojen koon näyttötapa"
 LocalDirViewColumnPopup.Showcolumns3.Caption="Näytä &Sarakkeet"
@@ -1261,9 +1269,10 @@ MainPanel.PageControl.IntegrationAppSheet.ExternalAppsGroup.PuttyPathBrowseButto
 MainPanel.PageControl.IntegrationAppSheet.ExternalAppsGroup.TelnetForFtpInPuttyCheck.Caption="Avaa Telnet yhteys PuTTY:ssä FTP istunnoissa"
 MainPanel.PageControl.IntegrationAppSheet.ExternalAppsGroup.PuttyPathHintText.Caption="määreet"
 MainPanel.PageControl.NetworkSheet.Caption="Verkko"
-MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox.Caption="Ulkoinen IP-osoite"
-MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox.RetrieveExternalIpAddressButton.Caption="Hae ulkoinen IP-osoite käyttöjärjestelmältä"
-MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox.CustomExternalIpAddressButton.Caption="Käytä ulkoisena IP-osoitteena:"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.Caption="Tulevat FTP-yhteydet (aktiivimoodi)"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.RetrieveExternalIpAddressButton.Caption="Hae ulkoinen IP-osoite käyttöjärjestelmältä"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.CustomExternalIpAddressButton.Caption="Käytä ulkoisena IP-osoitteena:"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.LocalPortNumberCheck.Caption="Rajoita &porttien kuuntelu:"
 MainPanel.PageControl.NetworkSheet.ConnectionsGroup.Caption="Yhteydet"
 MainPanel.PageControl.NetworkSheet.ConnectionsGroup.TryFtpWhenSshFailsCheck.Caption="Kun SFTP yhteys hylätään kolkuita FTP-porttia (Port knocking)"
 MainPanel.PageControl.PanelRemoteSheet.Caption="Etä"
@@ -1594,6 +1603,10 @@ MainPanel.PageControl.S3Sheet.S3Group.Label27.Caption="Oletusalue:"
 MainPanel.PageControl.S3Sheet.S3Group.S3UrlStyleLabel.Caption="&URL-tyyli"
 MainPanel.PageControl.S3Sheet.S3Group.S3UrlStyleCombo.Items.Strings.0="Virtuaali-isäntä"
 MainPanel.PageControl.S3Sheet.S3Group.S3UrlStyleCombo.Items.Strings.1="Polku"
+MainPanel.PageControl.S3Sheet.S3AuthenticationGroup.Caption="Tunnistus"
+MainPanel.PageControl.S3Sheet.S3AuthenticationGroup.Label5.Caption="&Suojaustunnus"
+MainPanel.PageControl.WebDavSheet.WebdavGroup.Caption="Protokollavalinnat"
+MainPanel.PageControl.WebDavSheet.WebdavGroup.WebDavLiberalEscapingCheck.Caption="Salli koodaama&ttomat erikoismerkit tiedostonimissä"
 MainPanel.PageControl.ConnSheet.Caption="Yhteys"
 MainPanel.PageControl.ConnSheet.FtpPingGroup.Caption="Yhteyden elossapito"
 MainPanel.PageControl.ConnSheet.FtpPingGroup.FtpPingIntervalLabel.Caption="Sekuntia &pakettien välillä"
@@ -1675,6 +1688,7 @@ MainPanel.PageControl.KexSheet.KexOptionsGroup.Caption="Avaimen vaihtoalgoritmin
 MainPanel.PageControl.KexSheet.KexOptionsGroup.Label28.Caption="Algoritmin &valinta:"
 MainPanel.PageControl.KexSheet.KexOptionsGroup.KexUpButton.Caption="&Ylös"
 MainPanel.PageControl.KexSheet.KexOptionsGroup.KexDownButton.Caption="&Alas"
+MainPanel.PageControl.KexSheet.KexOptionsGroup.AuthGSSAPIKEXCheck.Caption="Yritä &GSSAPI-avaimen vaihtoa"
 MainPanel.PageControl.KexSheet.KexReexchangeGroup.Caption="Avaimen uusiminen"
 MainPanel.PageControl.KexSheet.KexReexchangeGroup.Label31.Caption="Maksimi &minuuttimäärä ennen päivitystä (0 = rajaton)"
 MainPanel.PageControl.KexSheet.KexReexchangeGroup.Label32.Caption="Maksimi d&atamäärä ennen päivitystä (0 = rajaton)"
@@ -1747,7 +1761,7 @@ HelpButton.Caption="&Ohje"
 MinimizeMenu.Minimize1.Caption="&Minimoi"
 MinimizeMenu.MinimizetoTray1.Caption="Pienennä ilmaisinalueelle"
 StartMenu.Start1.Caption="&Aloita"
-StartMenu.StartInNewWindow1.Caption="Aloita uudessa ikku&nassa"
+StartMenu.StartInNewWindowItem.Caption="Aloita uudessa ikku&nassa"
 
 [SynchronizeChecklist.dfm]
 Panel.OkButton.Caption="OK"
@@ -1852,7 +1866,7 @@ LIST_DIR_ERROR="Ei voitu lukea kansioa '%s'."
 LIST_LINE_ERROR="Odottamaton virhe kansion listauksen rivillä '%s'."
 RIGHTS_ERROR="Kelvoton oikeuksien määritys '%s'"
 CLEANUP_CONFIG_ERROR="Ei voitu siivota yleisiä asetuksia"
-CLEANUP_HOSTKEYS_ERROR="Virhe tyhjennettäessä kohteita."
+CLEANUP_CACHES_ERROR="Virhe välimuistien siivoamisessa."
 CLEANUP_SEEDFILE_ERROR="Ei voitu siivota satunnaissiementiedostoa."
 CLEANUP_SESSIONS_ERROR="Ei voitu siivota rekisteristä palvelinavaimia"
 DETECT_RETURNVAR_ERROR="Ei voitu tutkia viimeisimmän komennon paluukoodia."
@@ -2076,6 +2090,9 @@ MISSING_TARGET_BUCKET="Määritä kohde."
 UNKNOWN_FILE_ENCRYPTION="Tiedostoa ei ole salattu tunnetulla salauksella"
 INVALID_ENCRYPT_KEY="**Virheellinen salausavain.**\n\nKohteen %s salauksen salausavaimessa on oltava %d tavua. Se on syötettävä heksadesimaalimuodossa (eli %d merkkiä)."
 UNREQUESTED_FILE="Palvelin lähetti tiedoston, jota ei pyydetty."
+STORE_NEW_HOSTKEY_ERROR="Uutta palvelimen avainta ei voitu tallentaa."
+STREAM_IN_SCRIPT_ERROR="Tietovirtaa ladattaessa voidaan määrittää vain yksi lähde ja kohteen on määritettävä tiedostonimi."
+STREAM_READ_ERROR="Virhe syötevirran lukemisessa."
 CONFIRM_PROLONG_TIMEOUT3="Vastausta palvelimelta ei ole tullut %d sekuntiin.\n\nOdotetaanko vielä %0:d sekuntia?"
 PROMPT_KEY_PASSPHRASE="Salasana avaimelle '%s'"
 FILE_OVERWRITE="Tiedosto '%s' on jo olemassa. Ylikirjoitetaanko?"
@@ -2115,7 +2132,7 @@ RENAME_TITLE="Siirrä uudelle nimelle"
 RENAME_PROMPT2="Uusi nimi:"
 VERIFY_CERT_PROMPT3="**Tuntemanton palvelinvarmenne. Ei ole mitään takeita, että palvelin on se, jonka kuvittelet sen olevan.**\n\nPalvelinvarmenteen tiedot:\n\n%s\n\nJos luotat varmenteeseen, paina Kyllä. Muodostaaksesi yhteyden ilman varmenteen tallennusta, paina Ei. Katkaistaksesi yhteyden, paina Peruuta\n\nJatka yhteyttä ja tallenna varmenne?"
 VERIFY_CERT_CONTACT="- Organisaatio: %s\n|- Sijainti: %s\n|- Muu: %s\n"
-CERT_TEXT="Julkaisija:\n%s\nOtsikko:\n%s\nVoimassa: %s - %s\n\nSormenjälki (SHA1): %s\n\nYhteenveto %s"
+CERT_TEXT2="Julkaisija:\n%s\nOtsikko:\n%s\nVoimassa: %s - %s\n\nSormenjäljet:\n- SHA-256: %s\n- SHA-1: %s\n\nYhteenveto: %s"
 CERTIFICATE_PASSPHRASE_PROMPT="Asiakas&varmenteen salasana:"
 CERTIFICATE_PASSPHRASE_TITLE="Asiakasvarmenteen salasana"
 KEY_TYPE_CONVERT3="**Haluatko muuntaa tämän %s -asiakasvarmenteen PuTTY-muotoon?**\n\n%s"
@@ -2368,7 +2385,7 @@ REMOVE_PATH_ERROR="Ei voitu poistaa polkua '%s' hakupolusta (%%PATH%%)."
 ALREADY_EDITED_EXTERNALLY_OR_UPLOADED="Tiedosto '%s' on jo avattu ulkoisessa editorissa tai on lähetettävänä."
 COPY_PARAM_NO_RULE="Et ole määritellyt mitään automaattista valintamaskia"
 COPY_PARAM_DUPLICATE="Nimellä '%s' olevat siirtoasetukset on jo olemassa."
-CUSTOM_COMMAND_IMPOSSIBLE="Käyttäjän komentoa '%s' ei voida suorittaa. Valitse ensin tiedostot komennolle."
+CUSTOM_COMMAND_IMPOSSIBLE2="**Käyttäjän komentoa '%s' ei voida suorittaa.** Valitse ensin tiedostot komennolle tai avaa ensin istunto."
 CUSTOM_COMMAND_AD_HOC_NAME="Väliaikainen"
 EDIT_SESSION_CLOSED_RELOAD="Tiedostoa '%s' ei voi päivittää, koska istunto '%s' on suljettu."
 DECRYPT_PASSWORD_ERROR="Salasanaa ei voida purkaa."
@@ -2411,6 +2428,7 @@ EXTENSION_INSTALLED_ALREADY="Laajennus on jo asennettu."
 EXTENSION_LOAD_ERROR="Laajennusta ei voida ladata kohteesta \"%s\"."
 NO_SITE_FOR_COMMAND="**Istuntoa ei ole avattu**\nValitulla komennolla on sivukohtaisia asetuksia, mutta istuntoa ei avattu."
 DD_TARGET_UNKNOWN="**WinSCP ei havainnut kansiota, jonne tiedosto(t) pudotettiin.** Raahaa ja pudota -toiminnon oletustilassa WinSCP sallii tiedostojen pudotuksen ainoastaan paikallisiin levyasemiin ja yhdistettyihin verkkolevyasemiin.\n\nVoit määrittää muita kohteita asetuksissa. Napsauta Apua-painitetta saadaksesi lisätietoja."
+JUMPLIST_ERROR="Hyppyluettelon päivitys epäonnistui."
 CONFIRM_OVERWRITE_SESSION="Kohde nimellä '%s' on jo olemassa. Kirjoita päälle?"
 CREATE_LOCAL_DIRECTORY="Kansiota '%s' ei ole. Luo?"
 CANCEL_OPERATION_FATAL2="**Peruuta tiedoston siirto?**\n\nOperaatiota ei voi keskeyttää kesken tiedoston siirtoa.\nPaina 'Kyllä' peruuttaaksesi siirron ja sulkeaksesi yhteyden.\nPaina 'Ei' lopettaaksesi nykyisen tiedostonsiirron.\nPaina 'Peruuta' jatkaaksesi toimintoa."
@@ -2465,7 +2483,7 @@ REPORT_BUTTON="Raportoi"
 MASTER_PASSWORD_OTHER_INSTANCE="WinSCP:stä on useita instansseja käynnissä.\n\nPääsalasanan asettaminen tai tyhjentäminen voi aiheuttaa talletettujen salasanojen menettämisen, kun muutoshetkellä on useita WinSCP instansseja käytössä.\n\nSulje muut WinSCP:n instanssit ennen kuin jatkat."
 EDIT_SESSION_REATTACH="**Haluatko liittää muokatun tiedoston '%s' istuntoon '%s'?**\n\nAlkuperäinen istunto, jossa tiedosto '%s' ladattiin, on jo suljettu."
 CONFIRM_UNREGISTER_URL="Haluatko poistaa WinSCP:n rekisteröinnin URL-osoitteiden käsittelijäksi?"
-INTERNAL_EDITOR_LARGE_FILE="**Yritä avata iso tiedosto?**\n\nTiedosto, jota yrität avata sisäisessä editorissa on liian iso (%s). WinSCP:n sisäinen editori ei sovellu suurien tiedostojen muokkaamiseen. Harkitse ulkoisen editorin käyttämistä isojen tiedostojen yhteydessä.\n\nVoit avata tiedostoj joka tapauksessa, mutta muisti voi loppua kesken."
+INTERNAL_EDITOR_LARGE_FILE2="**Yritä avata iso tiedosto?**\n\nTiedosto, jota yrität avata sisäisessä editorissa on liian iso (%s). WinSCP:n sisäinen editori ei sovellu suurien tiedostojen muokkaamiseen. Harkitse ulkoisen editorin käyttämistä isojen tiedostojen yhteydessä.\n\nVoit avata tiedoston joka tapauksessa, mutta WinSCP voi kaatua."
 CLOSE_BUTTON="Sulje"
 EXTENSION_UNTRUSTED="Laajennusta ei ole luotetusta lähteestä. Haluatko varmasti asentaa sen?"
 EXTENSION_NOT_LATEST="**Käytetään laajennuksen viimeisintä yhteensopivaa ja luotettua versiota.**\n\nViimeisintä laajennuksen versiota ei ole joko vielä katselmoitu tai se ei ole yhteensopiva tämän WinSCP-version kanssa."
@@ -2608,6 +2626,11 @@ AUTO_WORKSPACE_ENABLE="Valitse 'Ei' ottaaksesi työtilan automaattisen tallennuk
 USAGE_BROWSE="Valitsee tietyn tiedoston tiedostopaneelista."
 PUTTY_SETTINGS_INSTRUCTIONS="**Muokkaa pääteasetuksia PuTTY:ssä.**\n\nPuTTY käynnistetään. Muokkaa väliaikaisen sivuston %s pääteasetuksia. WinSCP muistaa nämä asetukset suljettuasi PuTTY:n."
 PUTTY_SETTINGS_SITE_NAME="%s:n pääteasetukset"
+USAGE_USERNAME="Vaihtoehtoinen tapa antaa käyttäjätunnus"
+USAGE_PASSWORD="Vaihtoehtoinen tapa antaa salasana"
+USAGE_INTERACTIVEINPUT="Kaikki kehotteet suljetaan automaattisesti"
+USAGE_STDOUT="Päästää tiedostovirrat stdout:iin (ja ohjaa tilan lähdön stderr:ään)"
+USAGE_STDIN="Päästää tiedostovirrat stdout:iin"
 COPY_FILE="%s tiedosto '%s' %s"
 COPY_FILES="%s %d tiedostoa %s"
 COPY_TOLOCAL="paikalliseen kansioon"
@@ -2667,7 +2690,7 @@ PROPERTIES_UNKNOWN_SIZE="Tuntematon"
 PROGRESS_CALCULATE_SIZE="Lasken kansion kokoa"
 CLEANUP_CONFIG="Yleiset asetukset"
 CLEANUP_SESSIONS="Kohteet"
-CLEANUP_HOSTKEYS="Tallennetut palvelinavaimet"
+CLEANUP_CACHES="Välimuistit"
 CLEANUP_INIFILE="INIT-tiedoston asetukset"
 CLEANUP_SEEDFILE="Satunnaissiementiedosto"
 SELECT_LOCAL_DIRECTORY="Valitse paikallinen kansio."
@@ -2952,24 +2975,46 @@ SCREENSHOT_EDITOR="Sisäinen tekstieditori"
 SCREENSHOT_TRANSFER="Siirtoasetusten asetusikkuna"
 SCREENSHOT_PROPERTIES="Tiedostojen ominaisuuksien muuttaminen"
 LICENSE="WinSCP on vapaa ohjelmisto: voit käyttää sitä, jaella sitä ja/taimuokata sitä \"Free Software Foundation\":n \"GNU General Public License\" version 3 tai (halutessasi) minkä tahansa uudemman version mukaisesti."
+; <override>
 NEW_5_10_MULTI_CONNECTIONS="Taustalla tapahtuvissa siirroissa voidaan käyttää useita yhteyksiä"
+; <override>
 NEW_5_10_DPI_AWARE="Usean näytön / DPI:n tuki"
+; <override>
 NEW_5_10_FIND="Hakuikkuna ei peitä pääikkunaa ja löydetyt tiedostot voidaan ladata tai poistaa suoraan hakuikkunassa"
+; <override>
 NEW_5_10_ONEDRIVE="Microsoft OneDrive -tuki"
+; <override>
 NEW_5_10_AUTOMATION="Useita parannuksia omiin komentoihin/laajennuksiin ja .NET-kokoonpanoihin"
+; <override>
 NEW_5_12_S3="Tuki Amazon S3 -protokollalle"
+; <override>
 NEW_5_12_SHA256_HOSTKEY="Tuki SHA-256 -avaimen sormenjäljen algoritmille"
+; <override>
 NEW_5_12_AUTOMATION="Useita parannuksia .NET-kokoonpanoihin mukaan lukien PackReference-paketinhallinnan tuki NuGet-paketissa"
+; <override>
 NEW_5_14_ENCRYPTION="Tiedostot voidaan tarvittaessa salata, kun niitä tallennetaan SFTP-palvelimelle"
+; <override>
 NEW_5_14_UNC="Paikallisia UNC-polkuja voidaan selata"
+; <override>
 NEW_5_14_CLIPBOARD="Tiedostot voidaan kopioida leikepöydälle"
+; <override>
 NEW_5_14_SYNCHRONIZATION="Hakemistosynkronointiin on tehty monia parannuksia"
+; <override>
 NEW_5_14_FILES_COLOR="Valinnainen tiedostojen värjäys tiedostomaskin perusteella"
+; <override>
 NEW_5_16_TABS="Parannuksia istuntoihin ja työtilojen hallintaan"
+; <override>
 NEW_5_16_HW_AES="Laitteistokiihdytetty AES"
+; <override>
 NEW_5_16_ARCHIVE_DOWNLOAD="Laajennus 'Arkistoi ja lataa' etätiedostojen arkistointiin ja arkiston lataamiseen"
+; <override>
 NEW_5_16_SYNC_CHECKLIST="Parannuksia synkronoinnin tarkistuslista -ikkunaan"
+; <override>
 NEW_5_16_FIND_SORT="Hakutulokset voi lajitella"
+NEW_5_18_QUEUE_FILE_LIST="Kaikki siirtojonossa olevat tiedostot voidaan näyttää"
+NEW_5_18_STREAMING="Virtauksen tuki skriptausksessa ja .NET-kokoonpano"
+NEW_5_18_REMOTE_SYNC="Laajennus kahden etäpalvelimen synkronointiin"
+NEW_5_18_TLS="Käytössä TLS 1.3 ja lisätty tuki SHA-256 TLS/SSL-sormenjäljille"
 
 [WinSCP_DRC.rc]
 Baseutils_SNoValidPath="Ei löydy mitään toimivaa polkua."
@@ -2986,7 +3031,6 @@ Customdirview_STextDirectories="%u Kansiot"
 Customdirview_STextFileExt="Tiedosto %s"
 Customdirview_STextFiles="%u Tiedostot"
 Customunixdirview_SUnixDefaultRootName="/ <juuri>"
-Dirview_coFileOperatorTitle="Tiedostojärjestelmäoperaatiot"
 Dirviewcolproperties_SDirViewAttrCol="Atribuutit"
 Dirviewcolproperties_SDirViewChangedCol="Muokattu"
 Dirviewcolproperties_SDirViewExtCol="Ulkoinen"
@@ -2997,7 +3041,6 @@ Dragdrop_MIAbortStr="&Keskeytä"
 Dragdrop_MICopyStr="&Kopioi tänne"
 Dragdrop_MILinkStr="&Luo pikakuvake tänne"
 Dragdrop_MIMoveStr="&Siirrä tänne"
-Fileoperator_SFileOperation="Tiedosto-operaatio"
 Iedriveinfo_ErrorInvalidDrive="%s on kelvoton asematunnus."
 System_Sysconst_SInvalidDate="'%s' ei ole sallittu aika"
 System_Sysconst_SInvalidDateTime="'%s' ei ole sallittu aika"
@@ -3229,8 +3272,6 @@ ExistingFileReadOnly2="Nykyistä tiedostoa ei voitu korvata, koska se on Vain lu
 ExistingFileReadOnlyRetry="&Poista Vain luku -asetus ja yritä uudelleen"
 ExistingFileReadOnlyKeepExisting="&Säilytä nykyinen tiedosto"
 ErrorReadingExistingDest="Virhe luettaessa nykyistä tiedostoa:"
-FileExists="Tiedosto on jo olemassa.\n\nKorvataanko se?"
-ExistingFileNewer="Nykyinen tiedosto on uudempi kuin asennettava tiedosto. Nykyisen tiedoston säilyttäminen on suositeltavaa.n\nHaluatko säilyttää nykyisen tiedoston?"
 ErrorChangingAttr="Virhe vaihdettaessa nykyisen tiedoston määritteitä:"
 ErrorCreatingTemp="Virhe luotaessa tiedostoa kohdehakemistoon:"
 ErrorReadingSource="Virhe luettaessa lähdetiedostoa:"
@@ -3376,6 +3417,7 @@ BatchRename.LoggingGroup.Caption="Loki"
 ArchiveDownload.Name="&Arkistoi ja lataa"
 ArchiveDownload.Description="Pakkaa valitut tiedostot, lataa pakatun tiedosto ja purkaa sen tarvittaessa paikallisen hakemistoon"
 ArchiveDownload.ArchiveNameTextbox.Caption="&Arkiston nimi:"
+; <override>
 ArchiveDownload.ArchiveNameTextbox.1="arkisto"
 ArchiveDownload.ArchiveTypeCombobox.Caption="Arkiston &tyyppi:"
 ArchiveDownload.PackingGroup.Caption="Pakataan"
@@ -3385,4 +3427,17 @@ ArchiveDownload.ExtractCheckbox.Caption="Pura latauks&en jälkeen"
 ArchiveDownload.Use7zipCheckbox.Caption="Käytä &7-zip:iä purkamiseen"
 ArchiveDownload.Path7zipFile.Caption="7-zip:n &polku (7z.exe/7za.exe):"
 ArchiveDownload.LoggingGroup.Caption="Loki"
+SynchronizeAnotherServer.Name="&Synkronoi toisen etäpalvelimen kanssa..."
+SynchronizeAnotherServer.Description="Synkronoi toisella palvelimella oleva hakemisto (tai tällä palvelimella oleva toinen hakemisto) tämän palvelimen hakemistoon"
+SynchronizeAnotherServer.SynchronizeDirectoryFromThisServerGroup.Caption="Synkronoi hakemisto &tältä palvelimelta:"
+SynchronizeAnotherServer.RemotePath1Textbox.Caption="&Hakemisto:"
+SynchronizeAnotherServer.ToAnotherServerGroup.Caption="...toiseen p&alvelimeen:"
+SynchronizeAnotherServer.SessionUrl2Textbox.Caption="I&stunto"
+SynchronizeAnotherServer.PasswordPromptCheckbox.Caption="&Kysy istunnon salasanaa"
+SynchronizeAnotherServer.RemotePath2Textbox.Caption="Hake&misto:"
+SynchronizeAnotherServer.OptionsGroup.Caption="Optiot"
+SynchronizeAnotherServer.DeleteCheckbox.Caption="P&oista tiedostot"
+SynchronizeAnotherServer.PreviewCheckbox.Caption="&Esikatsele"
+SynchronizeAnotherServer.ContinueOnErrorCheckbox.Caption="Jatka virheen jälkeen"
+SynchronizeAnotherServer.LoggingGroup.Caption="Loki"
 

+ 87 - 32
translations/HU.ini

@@ -136,7 +136,8 @@ CancelButton.Caption="Mégsem"
 HelpButton.Caption="&Súgó"
 
 [CustomScpExplorer.dfm]
-QueueSplitter.Hint="Fogd meg a műveleti sor átméretezéséhez. Kattints duplán a sor eltüntetéséhez."
+QueueSplitter.Hint="Húzza a sor átméretezéséhez. Kattints duplán a sor eltüntetéséhez."
+QueuePanel.QueueFileListSplitter.Hint="Húzza a fájlsor átméretezéséhez. Kattints duplán a fájlsor eltüntetéséhez."
 QueuePanel.QueueView3.item0.Caption="Művelet"
 QueuePanel.QueueView3.item1.Caption="Forrás"
 QueuePanel.QueueView3.item2.Caption="Cél"
@@ -283,6 +284,7 @@ DirectionGroup.SynchronizeLocalButton.Caption="&Helyi"
 CompareCriterionsGroup.Caption="Összehasonlítási &kritérium"
 CompareCriterionsGroup.SynchronizeByTimeCheck.Caption="Módosítás &ideje"
 CompareCriterionsGroup.SynchronizeBySizeCheck.Caption="&Fájlméret"
+CompareCriterionsGroup.SynchronizeCaseSensitiveCheck.Caption="Kis-nagybetű é&rzékeny"
 SaveSettingsCheck.Caption="&Ugyanezen beállítások használata következő alkalommal"
 CopyParamGroup.Caption="Átviteli beállítások"
 HelpButton.Caption="&Súgó"
@@ -291,7 +293,7 @@ ModeGroup.SynchronizeFilesButton.Caption="Fájlok &szinkronizálása"
 ModeGroup.MirrorFilesButton.Caption="Fájlok &tükrözése"
 ModeGroup.SynchronizeTimestampsButton.Caption="&Időbélyegek szinkronizálása"
 OkMenu.Start1.Caption="&Indítás"
-OkMenu.StartInNewWindow1.Caption="Indítás &új ablakban"
+OkMenu.StartInNewWindowItem.Caption="Indítás &új ablakban"
 
 [GenerateUrl.dfm]
 OptionsPageControl.UrlSheet.Caption="URL"
@@ -791,6 +793,8 @@ ExplorerActions.QueueHideAction.Caption="&Elrejtés"
 ExplorerActions.QueueHideAction.Hint="Elrejti a sort"
 ExplorerActions.QueueToolbarAction.Caption="Eszköztár"
 ExplorerActions.QueueToolbarAction.Hint="Megjeleníti/elrejti a műveleti sor eszköztárát (a sor paneljében)"
+ExplorerActions.QueueFileListAction.Caption="&Fájllista"
+ExplorerActions.QueueFileListAction.Hint="A teljes fájlsor elrejtése/megjelenítése"
 ExplorerActions.QueuePreferencesAction.Caption="Testresza&bás..."
 ExplorerActions.QueuePreferencesAction.Hint="A műveleti sor testreszabása"
 ExplorerActions.PasteAction2.Caption="&Beillesztés"
@@ -961,6 +965,10 @@ CommanderBarPopup.RemotePanel2.Caption="&Távoli panel"
 CommanderBarPopup.RemotePanel2.Hint="Távoli panel megjelenés változatása"
 CommanderBarPopup.Options1.Caption="Műveleti sor"
 CommanderBarPopup.Options1.Hint="Műveleti sor beállításai"
+RemotePanelPopup.TBXSubmenuItem8.Caption="&Ugrás"
+RemotePanelPopup.TBXSubmenuItem8.Hint="Ugrás mappába"
+LocalPanelPopup.TBXSubmenuItem10.Caption="&Ugrás"
+LocalPanelPopup.TBXSubmenuItem10.Hint="Ugrás mappába"
 LocalDirViewColumnPopup.LocalFormatSizeBytesPopupItem.Caption="Fájlméret megjelenítése ebben"
 LocalDirViewColumnPopup.LocalFormatSizeBytesPopupItem.Hint="Fájlméret megjelenítéséhez válasszon formátumot"
 LocalDirViewColumnPopup.Showcolumns3.Caption="&Oszlopok megjelenítése"
@@ -1261,9 +1269,10 @@ MainPanel.PageControl.IntegrationAppSheet.ExternalAppsGroup.PuttyPathBrowseButto
 MainPanel.PageControl.IntegrationAppSheet.ExternalAppsGroup.TelnetForFtpInPuttyCheck.Caption="Telnet munkamenetek megnyitása PuTTY-ban FTP munkamenetekhez"
 MainPanel.PageControl.IntegrationAppSheet.ExternalAppsGroup.PuttyPathHintText.Caption="&minták"
 MainPanel.PageControl.NetworkSheet.Caption="Hálózat"
-MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox.Caption="Külső IP cím"
-MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox.RetrieveExternalIpAddressButton.Caption="Külső IP cím lekérése az operációs rendszertől"
-MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox.CustomExternalIpAddressButton.Caption="&Ezt a külső IP címet használja:"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.Caption="Bejövő FTP kapcsolatok (aktív mód)"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.RetrieveExternalIpAddressButton.Caption="Külső IP cím lekérése az operációs rendszertől"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.CustomExternalIpAddressButton.Caption="&Ezt a külső IP címet használja:"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.LocalPortNumberCheck.Caption="Figyelendő portok számának &korlátozása:"
 MainPanel.PageControl.NetworkSheet.ConnectionsGroup.Caption="Kapcsolatok"
 MainPanel.PageControl.NetworkSheet.ConnectionsGroup.TryFtpWhenSshFailsCheck.Caption="SFTP kapcsolat elutasításkor FTP porttal próbálkozás"
 MainPanel.PageControl.PanelRemoteSheet.Caption="Távoli"
@@ -1333,13 +1342,13 @@ PageControl.CommonSheet.Label3.Caption="Jogosultságok:"
 PageControl.CommonSheet.Label4.Caption="Csoport:"
 PageControl.CommonSheet.Label5.Caption="Tulajdonos:"
 PageControl.CommonSheet.RecursiveCheck.Caption="Csoport, tulajdonos és engedélyek &rekurzív beállítása"
-PageControl.CommonSheet.CalculateSizeButton.Caption="Kis&zámol"
+PageControl.CommonSheet.CalculateSizeButton.Caption="S&zámol"
 PageControl.ChecksumSheet.Caption="Ellenőrző összeg"
-PageControl.ChecksumSheet.Label6.Caption="Algoritmus"
+PageControl.ChecksumSheet.Label6.Caption="&Algoritmus"
 PageControl.ChecksumSheet.ChecksumView.item0.Caption="Fájl"
 PageControl.ChecksumSheet.ChecksumView.item1.Caption="Ellenőrző összeg"
-PageControl.ChecksumSheet.ChecksumButton.Caption="Kiszámolása"
-PageControl.ChecksumSheet.ChecksumGroup.Caption="Ellenőrző öszeg"
+PageControl.ChecksumSheet.ChecksumButton.Caption="&Ellenőrző összeg számolása"
+PageControl.ChecksumSheet.ChecksumGroup.Caption="Ellenőrző összeg"
 HelpButton.Caption="&Súgó"
 ListViewMenu.Copy.Caption="&Másolás"
 
@@ -1592,8 +1601,12 @@ MainPanel.PageControl.FtpSheet.FtpGroup.Label3.Caption="&HOST parancs használat
 MainPanel.PageControl.S3Sheet.S3Group.Caption="Protokoll beállítások"
 MainPanel.PageControl.S3Sheet.S3Group.Label27.Caption="Alapértelmezett &régió:"
 MainPanel.PageControl.S3Sheet.S3Group.S3UrlStyleLabel.Caption="&URL stílus:"
-MainPanel.PageControl.S3Sheet.S3Group.S3UrlStyleCombo.Items.Strings.0="Vitruális kiszolgáló"
+MainPanel.PageControl.S3Sheet.S3Group.S3UrlStyleCombo.Items.Strings.0="Virtuális kiszolgáló"
 MainPanel.PageControl.S3Sheet.S3Group.S3UrlStyleCombo.Items.Strings.1="Útvonal"
+MainPanel.PageControl.S3Sheet.S3AuthenticationGroup.Caption="Hitelesítés"
+MainPanel.PageControl.S3Sheet.S3AuthenticationGroup.Label5.Caption="&Biztonsági token"
+MainPanel.PageControl.WebDavSheet.WebdavGroup.Caption="Protokoll beállítások"
+MainPanel.PageControl.WebDavSheet.WebdavGroup.WebDavLiberalEscapingCheck.Caption="Nemkódolt speciális karakterek &tolerálása fájlnevekben"
 MainPanel.PageControl.ConnSheet.Caption="Kapcsolat"
 MainPanel.PageControl.ConnSheet.FtpPingGroup.Caption="Kapcsolatfenntartás"
 MainPanel.PageControl.ConnSheet.FtpPingGroup.FtpPingIntervalLabel.Caption="Kapcsolatfenntartások közötti &másodpercek"
@@ -1675,6 +1688,7 @@ MainPanel.PageControl.KexSheet.KexOptionsGroup.Caption="Kulcscsere-algoritmus be
 MainPanel.PageControl.KexSheet.KexOptionsGroup.Label28.Caption="Algoritmus ki&választás sorrendje:"
 MainPanel.PageControl.KexSheet.KexOptionsGroup.KexUpButton.Caption="&Fel"
 MainPanel.PageControl.KexSheet.KexOptionsGroup.KexDownButton.Caption="&Le"
+MainPanel.PageControl.KexSheet.KexOptionsGroup.AuthGSSAPIKEXCheck.Caption="Kísérlet a &GSSAPI kulcs cseréjére"
 MainPanel.PageControl.KexSheet.KexReexchangeGroup.Caption="Kulcs újracserét vezérlő beállítások"
 MainPanel.PageControl.KexSheet.KexReexchangeGroup.Label31.Caption="Kulcs újracsere időköz percekben (0: nincs korlát)"
 MainPanel.PageControl.KexSheet.KexReexchangeGroup.Label32.Caption="Kulcs újracsere adatforgalom köz (0: nincs korlát)"
@@ -1747,7 +1761,7 @@ HelpButton.Caption="&Súgó"
 MinimizeMenu.Minimize1.Caption="Kis &méret"
 MinimizeMenu.MinimizetoTray1.Caption="Kis méretnél Tálcára"
 StartMenu.Start1.Caption="&Indítás"
-StartMenu.StartInNewWindow1.Caption="Indítás &új ablakban"
+StartMenu.StartInNewWindowItem.Caption="Indítás &új ablakban"
 
 [SynchronizeChecklist.dfm]
 Panel.OkButton.Caption="OK"
@@ -1809,7 +1823,7 @@ IDS_ERRORMSG_CANTSENDCOMMAND="Nem lehet parancsot elküldeni. Kapcsolat megszak
 IDS_ERRORMSG_CERTREJECTED="Távoli tanúsítvány visszautasítva"
 IDS_ERRORMSG_DOWNLOADABORTED="Letöltés megszakadt"
 IDS_ERRORMSG_CANTCREATEDUETOPORTRANGE="Nem tudok socketot létrehozni a megadott port tartományban."
-IDS_ERRORMSG_CANTESTABLISHSSLCONNECTION="SSL kapcsoalt kiépítése nem lehetséges"
+IDS_ERRORMSG_CANTESTABLISHSSLCONNECTION="SSL kapcsolat kiépítése nem lehetséges"
 IDS_ERRORMSG_CANTGETLIST="Nem tudom letölteni a mappa listát"
 IDS_ERRORMSG_CANTINITSSL="SSL függvénymappa indítása nem sikerült"
 IDS_STATUSMSG_CONNECTED="Csatlakozva"
@@ -1852,7 +1866,7 @@ LIST_DIR_ERROR="Hiba '%s' mappa listázásakor."
 LIST_LINE_ERROR="Váratlan mappalistázási sor: '%s'."
 RIGHTS_ERROR="Érvénytelen jogleírás: '%s'"
 CLEANUP_CONFIG_ERROR="Hiba az általános konfiguráció tisztításakor."
-CLEANUP_HOSTKEYS_ERROR="Webhely tisztításakor hiba."
+CLEANUP_CACHES_ERROR="Hiba a gyorsítótárak ürítésekor."
 CLEANUP_SEEDFILE_ERROR="Hiba a véletlenszám generálási fájl tisztításakor."
 CLEANUP_SESSIONS_ERROR="Hiba a gyorsítótárbeli kiszolgálókulcsok tisztításakor."
 DETECT_RETURNVAR_ERROR="Hiba történt az utolsó parancs visszatérési kódját tartalmazó változó detektálásakor."
@@ -2076,6 +2090,9 @@ MISSING_TARGET_BUCKET="Adja meg a célvödröt."
 UNKNOWN_FILE_ENCRYPTION="A fájl nem ismert titkosítással van titkosítva."
 INVALID_ENCRYPT_KEY="**Érvénytelen titkosítási kulcs.**\n\n%s titkosításhoz a titkosító kulcs %d byte kell, hogy legyen. Hexadecimal formátumban kell megadni (például %d karakter)."
 UNREQUESTED_FILE="A szerver egy fájlt küldött, amit nem kértünk."
+STORE_NEW_HOSTKEY_ERROR="Az új kiszolgálókulcs tárolása sikertelen."
+STREAM_IN_SCRIPT_ERROR="Streamelt adat feltöltésekor csak egy forrás adható meg és a cél egy fájlnevet kell, hogy meghatározzon."
+STREAM_READ_ERROR="Hiba a bemeneti stream olvasáskor."
 CONFIRM_PROLONG_TIMEOUT3="A kiszolgáló nem kommunikál már %d másodperce.\n\nVárakozik további %0:d másodpercet?"
 PROMPT_KEY_PASSPHRASE="Jelmondat a '%s' kulcshoz:"
 FILE_OVERWRITE="A '%s' fájl már létezik. Felülírja?"
@@ -2114,8 +2131,8 @@ TUNNEL_INSTRUCTION2="Csatorna hitelesítése %s-n keresztül"
 RENAME_TITLE="Átvitel másik felhasználónévvel"
 RENAME_PROMPT2="&Új név:"
 VERIFY_CERT_PROMPT3="**A szerver tanúsítvány ismeretlen. Nincs arra garancia, hogy a szerver az a számítógép, aminek Ön azt gondolja.**\n\nA szerver tanúsítványának adatai:\n\n%s\n\nAmennyiben megbízik a tanúsítványban, nyomjon 'Igen'-t. Tanúsítvány tárolása nélküli kapcsolódáshoz, nyomjon 'Nem'-et. A kapcsolat megszakításához nyomjon 'Mégsem'-et.\n\nFolyatatja a kapcsolódást és tárolja a tanúsítványt?"
-VERIFY_CERT_CONTACT="- Vállalat: %s\n|- Hely: %s\n|- Egyéb: %s\n"
-CERT_TEXT="Kibocsátó:\n%s\nTárgy:\n%s\nÉrvényes: %s - %s\n\nUjjlenyomat (SHA1): %s\n\nÖsszegezve: %s"
+VERIFY_CERT_CONTACT="- Szervezet: %s\n|- Hely: %s\n|- Egyéb: %s\n"
+CERT_TEXT2="Kibocsátó:\n%s\nTárgy:\n%s\nÉrvényes: %s - %s\n\nUjjlenyomat:\n- SHA-256: %s\n- SHA-1: %s\n\nÖsszegzés: %s"
 CERTIFICATE_PASSPHRASE_PROMPT="Kliens tanúsítványhoz &jelmondat:"
 CERTIFICATE_PASSPHRASE_TITLE="Kliens tanúsítvány jelmondata"
 KEY_TYPE_CONVERT3="**Biztos, hogy konvertálja %s privát kulcsot PuTTY formatumúvá?**\n\n%s"
@@ -2132,8 +2149,8 @@ SESSION_INFO_TIP2="Kiszolgáló: %s\nFelhasználónév: %s\nPrivát kulcs fájl:
 VERSION2="Verzió %s (%s)"
 CLOSED_ON_COMPLETION="Művelet sikeresen befejeződött. Kapcsolat megszakítva."
 FS_RENAME_NOT_SUPPORTED="Ez az SFTP protokoll verzió nem támogatja a fájl átnevezést."
-SFTP_NO_EXTENSION_INFO="A kiszolgáló nem támogat semmilyen SFTP bővítést sem."
-SFTP_EXTENSION_INFO="A kiszolgáló a következő SFTP bővítéseket támogatja:"
+SFTP_NO_EXTENSION_INFO="A szerver nem támogat semmilyen SFTP kiterjesztést sem."
+SFTP_EXTENSION_INFO="A szerver a következő SFTP kiterjesztést támogatja:"
 APPEND_BUTTON="H&ozzáfűz"
 YES_TO_NEWER_BUTTON="Csak ha ú&jabb"
 SCRIPT_HELP_DESC="Súgó megjelenítése"
@@ -2364,9 +2381,9 @@ EXTERNAL_CONSOLE_INCOMPATIBLE="Inkompatibilis külső konzol protokoll verzió %
 ADD_PATH_ERROR="Az útvonal '%s' hozzáadása a keresési útvonalhoz (%%PATH%%) nem sikerült."
 REMOVE_PATH_ERROR="Az útvonal '%s' eltávolítása a keresési útvonalból (%%PATH%%) nem sikerült."
 ALREADY_EDITED_EXTERNALLY_OR_UPLOADED="A fájl '%s' már meg van nyitva egy külső szerkesztőben (programban) vagy még feltöltés alatt áll."
-COPY_PARAM_NO_RULE="Ön nem határozott meg semmilyen automatikus fájlkiválasztó szabályt."
-COPY_PARAM_DUPLICATE="Előkészített átviteli beállítás a '%s' leírással már létezik."
-CUSTOM_COMMAND_IMPOSSIBLE="Egyéni parancs '%s' nem futtatható. Kérem előbb válasszon ki fájlokat a parancshoz."
+COPY_PARAM_NO_RULE="Egy automatikus fájlkiválasztó szabályt sem határozott meg."
+COPY_PARAM_DUPLICATE="Előkészített átviteli beállítás '%s' leírással már létezik."
+CUSTOM_COMMAND_IMPOSSIBLE2="**'%s' parancs nem futtatható.** Előfordulhat, hogy először ki kell jelölnie fájlokat a parancshoz vagy meg kell nyitnia egy munkamenetet."
 CUSTOM_COMMAND_AD_HOC_NAME="Ad hoc"
 EDIT_SESSION_CLOSED_RELOAD="A '%s' fájlt nem lehet újratölteni, a '%s' munkamenet már bezárult."
 DECRYPT_PASSWORD_ERROR="A jelszó nem visszafejthető."
@@ -2409,6 +2426,7 @@ EXTENSION_INSTALLED_ALREADY="Azt a kiegészítőt már telepítették."
 EXTENSION_LOAD_ERROR="Hiba egy kiegészítő betöltésekor (\"%s\")."
 NO_SITE_FOR_COMMAND="**Egy megnyitott munkamenet sincs**\nA kiválasztott parancsnak van kiszolgálófüggő opciója, de egy nyitott munkamenet sincs."
 DD_TARGET_UNKNOWN="**WinSCP-nek nem sikerült észlelnie a mappát, ahová a fájl(oka)t dobná.**Alapértelmezetten a fogd-és-vidd mód a WinSCP-nek csak helyi és csatolt hálózati meghajtókra engedélyezi fájlok dobását.\n\nA beállításokban további célokra is engedélyezheti a fájlok dobását. További részletekért nyomja meg a Súgó gombot."
+JUMPLIST_ERROR="Hiba történt az ugrólista frissítésekor."
 CONFIRM_OVERWRITE_SESSION="'%s' nevű munkamenet már létezik. Felülírja?"
 CREATE_LOCAL_DIRECTORY="'%s' mappa nem létezik. Létrehozza?"
 CANCEL_OPERATION_FATAL2="**Megszakítja a fájl átvitelét?**\n \nÁtvitelt közben a művelet nem szakítható meg.\nAz átvitel megszakításához és a kapcsolat zárásához. nyomj 'Igen'-t.\nA jelenlegi fájl átvitelének befelyezéséhez nyomj 'Nem'-et.\nA művelet megszakításához nyomd a 'Mégsem'-et."
@@ -2449,7 +2467,7 @@ EDITOR_MODIFIED_RELOAD="A fájl módosult. Minden módosítás elveszik, ha a f
 CONFIGURE_BUTTON="&Beállítás..."
 SYNC_DIR_BROWSE_CREATE2="**'%s' mappát próbál létrehozni?**\n\nA szemben lévő panelen nem lehet megnyitni a megfelelő mappát."
 ADD_BOOKMARK_SHARED="Hozzáadás a &megosztott könyvjelzőkhöz"
-HELP_SEND_MESSAGE2="**Üzenetet kíván küldeni a WinSCP weboldalra?**\n\nNincs súgó oldal az üzenethez rendelve. WinSCP a dokumentációs oldalán megkeresheti Önnek az üzenet szövegét\n\nMegjegyzés: WinSCP nem biztonságos Internet-kapcsoalton keresztül küldi el az üzenetet. Kérjük, gőződjön meg róla, hogy az üzenet nem tartalmaz  védendő adatot, mint például fájlok, felhasználói fiókok vagy kiszolgálók neveit."
+HELP_SEND_MESSAGE2="**Üzenetet kíván küldeni a WinSCP weboldalra?**\n\nNincs súgó oldal az üzenethez rendelve. WinSCP a dokumentációs oldalán megkeresheti Önnek az üzenet szövegét\n\nMegjegyzés: WinSCP nem biztonságos Internet-kapcsolaton keresztül küldi el az üzenetet. Kérjük, gőződjön meg róla, hogy az üzenet nem tartalmaz  védendő adatot, mint például fájlok, felhasználói fiókok vagy kiszolgálók neveit."
 MASTER_PASSWORD_SIMPLE2="**Jelszava túl egyszerű és nem biztos, hogy elegendő biztonságot ad szótáras vagy nyers erejű támadásokkal szemben.\nBiztos, hogy ezt kívánja használni?**\n\nMegjegyzés: egy jó jelszó legalább hat karakter, kis- és nagybetűt, számot és speciális karaktert is tartalmaz, például határolókat, szimbólumokat, ékezetes betűket."
 CONFIRM_CREATE_SHORTCUT_FOLDER="'%s' webhely mappához hozzak létre asztali parancsikont?"
 CONFIRM_CREATE_SHORTCUT_WORKSPACE="'%s' munkaterülethez hozzak létre asztali parancsikont?"
@@ -2463,7 +2481,7 @@ REPORT_BUTTON="Jelentés"
 MASTER_PASSWORD_OTHER_INSTANCE="WinSCP egy példánya már fut.\n\nMesterjelszó beállítása vagy törlése ez idő alatt a tárolt jelszavak elvesztéséhez vezethet.\n\nKérjük, folyatás előtt zárja be a WinSCP összes többi futó példányát."
 EDIT_SESSION_REATTACH="**Biztos, hogy csatolja '%s' fájl '%s' munkamenethez?**\n\n'%s' fájl szerkesztéhez a letöltésre használt eredeti munkamenet már bezárult."
 CONFIRM_UNREGISTER_URL="Biztos, hogy visszavonja WinSCP-től az URL címek kezelését?"
-INTERNAL_EDITOR_LARGE_FILE="**Nagy fájlt próbál megnyitni?**\n\nA belső szerkesztővel megnyitni kívánt fájl túl nagy (%s). WinSCP belső szerkesztője nem nagy fájlok szerkesztésére készült. Javasoljuk, hogy nagy fájlok kezelésére készült külső szerkesztőt használjon.\n\nMegpróbálhatja megnyitni a fájlt a belső szerkesztővel, de elfogyhat a memória."
+INTERNAL_EDITOR_LARGE_FILE2="**Nagy fájlt próbál megnyitni?**\n\nA belső szerkesztővel megnyitni kívánt fájl túl nagy (%s). A WinSCP belső szerkesztőjét nem nagy fájlok megnyitására tervezték. Fontolja meg egy külső szerkesztő használatát, amely képes nagy fájlok szerkesztésére.\n\nMegpóbálhatja a fájlt megnyitni, de a WinSCP-nek ez nem biztos, hogy sikerült."
 CLOSE_BUTTON="Bezárás"
 EXTENSION_UNTRUSTED="A kiegészítés nem megbízható forrásból érkezett. Biztos, hogy telepíti?"
 EXTENSION_NOT_LATEST="**Hasznélja a kiegészítő utolsó kompatibilis és megbízható verzióját.**\n\nA kiegészítő legutolsó verziója még vagy nem lett felülviszgálva vagy nem kompatibilis a WinSCP ezen verziójával."
@@ -2606,7 +2624,12 @@ AUTO_WORKSPACE_ENABLE="A munkaterület automatikus mentésének bekapcsolásáho
 USAGE_BROWSE="Kijelöli a meghatározott fájlt a panel(ek)en."
 PUTTY_SETTINGS_INSTRUCTIONS="**A terminálbeállítások módosítása a PuTTY-ban.**\n\nA PuTTY újra fog indulni. %s ideiglenes oldal terminálbeállításainak módosítása. WinSCP megjegyzi ezeket a beállításokat a PuTTY bezárása után."
 PUTTY_SETTINGS_SITE_NAME="%s terminálbeállításai"
-COPY_FILE="%s a '%s' fájlt ide: %s"
+USAGE_USERNAME="A felhazsnálónév megadásának egy alternatív módja"
+USAGE_PASSWORD="A jelszó megadásának egy alternatív módja"
+USAGE_INTERACTIVEINPUT="Az összes figyelmeztetés mellőzése"
+USAGE_STDOUT="Fájlok streamingelésnek engedélyezése stdout-ról (és a kimeneti állapot átirányítása stderr-re)"
+USAGE_STDIN="Fájlok streamingelésnek engedélyezése stdin-ről"
+COPY_FILE="%s '%s' fájlt ide: %s"
 COPY_FILES="%s %d fájlt ide: %s"
 COPY_TOLOCAL="helyi mappa"
 COPY_TOREMOTE="távoli mappa"
@@ -2662,10 +2685,10 @@ SAVE_SESSION_PASSWORD="&Jelszó mentése (nem szükséges)"
 PROGRESS_CUSTOM_COMAND="Egyéni parancs futtatása folyamatban"
 EDITOR_FONT_FMT="%s, %d pt\nÁrvíztűrő tükörfúrőgép"
 PROPERTIES_UNKNOWN_SIZE="Ismeretlen"
-PROGRESS_CALCULATE_SIZE="Mappa méretének kiszámolása folyamatban"
+PROGRESS_CALCULATE_SIZE="Mappa méretének számolása folyamatban"
 CLEANUP_CONFIG="Általános beállítás"
-CLEANUP_SESSIONS="Eltárolt munkamenetek"
-CLEANUP_HOSTKEYS="Cachelt számítógép kulcsok"
+CLEANUP_SESSIONS="Webhelyek"
+CLEANUP_CACHES="Gyorsítótárak"
 CLEANUP_INIFILE="Beállítási INI fájl"
 CLEANUP_SEEDFILE="Véletlenszám generálás fájlja"
 SELECT_LOCAL_DIRECTORY="Válassza ki a helyi mappát."
@@ -2728,8 +2751,8 @@ EXPORT_CONF_FILTER="INI fájlok (*.ini)|*.ini|Minden fájl (*.*)|*.*"
 EXPORT_CONF_TITLE="Válassza ki a fájlt, ahova a beállításokat exportálja"
 CUSTOM_COMMAND_LAST="&Utolsó: %s"
 CUSTOM_COMMAND_LAST_SHORT="&Utolsó"
-PROGRESS_CALCULATE_CHECKSUM="Ellenőrző összeg kiszámolása folyamatban"
-FSINFO_CALCULATING_CHECKSUM="Lehetséges ellenőrző összeg kiszámolása"
+PROGRESS_CALCULATE_CHECKSUM="Ellenőrző összeg számolása folyamatban"
+FSINFO_CALCULATING_CHECKSUM="Lehetséges ellenőrző összeg számolása"
 PROPERTIES_CHECKSUM_UNKNOWN="Ismeretlen"
 STATUS_PROTOCOL_HINT="Használatban lévő protokoll"
 STATUS_INSECURE="Nem biztonságos kapcsolat"
@@ -2950,24 +2973,46 @@ SCREENSHOT_EDITOR="Belső szövegszerkesztő"
 SCREENSHOT_TRANSFER="Átviteli beállítások ablaka"
 SCREENSHOT_PROPERTIES="Fájlok tulajdonságainak módosítása"
 LICENSE="WinSCP ingyenes szoftver: használhatja, terjesztheti és/vagy módosíthaja a Free Software Foundation által közzétett GNU General Public License, akár annak 3. változata, akár (választás szerinti) későbbi változata feltételei szerint."
+; <override>
 NEW_5_10_MULTI_CONNECTIONS="Háttér átviteli műveletek többszörös kapcsolatot használhatnak"
+; <override>
 NEW_5_10_DPI_AWARE="Eltérő DPI-vel/felbontással rendelkező monitorok támogatása"
+; <override>
 NEW_5_10_FIND="A kereső párbeszédablak nem blokkolja a fő ablakot, továbbá a megtalált fájlok letölthetőek és törlhetőek a Kereső párbeszédablakból"
+; <override>
 NEW_5_10_ONEDRIVE="Microsoft OneDrive támogatása"
+; <override>
 NEW_5_10_AUTOMATION="Számos egyéni parancs/kiterjesztés és .NET assembly fejlesztés"
+; <override>
 NEW_5_12_S3="Amazon S3 protokoll támogatása"
+; <override>
 NEW_5_12_SHA256_HOSTKEY="SHA-256 kiszolgálókulcsujjlenyomat-algoritmus támogatása"
+; <override>
 NEW_5_12_AUTOMATION=".NET assembly-ben számos fejlesztés, többek között PackageReference csomagkezelés támogatása NuGet csomagban"
+; <override>
 NEW_5_14_ENCRYPTION="A fájlok opcionálisan titkosíthatóak, amikor SFTP szerveren tároljuk"
+; <override>
 NEW_5_14_UNC="A helyi UNC útvonalak tallózhatóak"
+; <override>
 NEW_5_14_CLIPBOARD="A fájlok a vágólapra másolhatóak"
+; <override>
 NEW_5_14_SYNCHRONIZATION="Sok fejlesztés a mappaszinkronizálásban"
+; <override>
 NEW_5_14_FILES_COLOR="Egy fájlmaszkra épülő lehetséges fájlszínező a fájl panelekben"
+; <override>
 NEW_5_16_TABS="A munkamenetek és a munkaterületek kezelésének fejlesztése"
+; <override>
 NEW_5_16_HW_AES="Hardvergyorsított AES"
+; <override>
 NEW_5_16_ARCHIVE_DOWNLOAD="'Archiválás és letöltés' kiterjesztés, hogy a távoli fájlt archiváljuk, és az archív fájlt töltsük el"
+; <override>
 NEW_5_16_SYNC_CHECKLIST="A szinkronizálás ellenőrzőlista ablakának fejlesztései"
+; <override>
 NEW_5_16_FIND_SORT="A találatok rendezhetőek"
+NEW_5_18_QUEUE_FILE_LIST="Az átviteli sorban lévő összes fájl felsorolása"
+NEW_5_18_STREAMING="Streaming támogatás a szkriptekben és a .NET összeállításban"
+NEW_5_18_REMOTE_SYNC="Egy kiegészítő két távoli szerver szinkronizálásahoz"
+NEW_5_18_TLS="TLS 1.3 engedélyezése és SHA-256 TLS/SSL ujjlenyomatok támogatásának hozzáadása"
 
 [WinSCP_DRC.rc]
 Baseutils_SNoValidPath="Nem található egy érvényes elérési út sem."
@@ -2984,7 +3029,6 @@ Customdirview_STextDirectories="%u Mappa"
 Customdirview_STextFileExt="Fájl %s"
 Customdirview_STextFiles="%u Fájl"
 Customunixdirview_SUnixDefaultRootName="/ <root>"
-Dirview_coFileOperatorTitle="Fájlrendszer művelet"
 Dirviewcolproperties_SDirViewAttrCol="Attr"
 Dirviewcolproperties_SDirViewChangedCol="Módosult"
 Dirviewcolproperties_SDirViewExtCol="Kit"
@@ -2995,7 +3039,6 @@ Dragdrop_MIAbortStr="&Megszakítás"
 Dragdrop_MICopyStr="&Másolás ide"
 Dragdrop_MILinkStr="&Parancsikont csinálj ide"
 Dragdrop_MIMoveStr="&Áthelyezés ide"
-Fileoperator_SFileOperation="Fájl művelet"
 Iedriveinfo_ErrorInvalidDrive="%s érvénytelen meghajtó betűjel."
 System_Sysconst_SInvalidDate="'%s' nem érvényes dátum"
 System_Sysconst_SInvalidDateTime="'%s' nem érvényes dátum és idő"
@@ -3227,8 +3270,6 @@ ExistingFileReadOnly2="A fájl csak olvashatóként van jelölve."
 ExistingFileReadOnlyRetry="Csak &olvasható tulajdonság eltávolítása és újra próbálkozás"
 ExistingFileReadOnlyKeepExisting="&Létező fájl megtartása"
 ErrorReadingExistingDest="Hiba lépett fel a fájl olvasása közben:"
-FileExists="A fájl már létezik.\n\nFelül kívánja írni?"
-ExistingFileNewer="A létező fájl újabb a telepítésre kerülőnél. Ajánlott a létező fájl megtartása.\n\nMeg kívánja tartani a létező fájlt?"
 ErrorChangingAttr="Hiba lépett fel a fájl attribútumának módosítása közben:"
 ErrorCreatingTemp="Hiba lépett fel a fájl telepítési könyvtárban történő létrehozása közben:"
 ErrorReadingSource="Hiba lépett fel a forrásfájl olvasása közben:"
@@ -3374,6 +3415,7 @@ BatchRename.LoggingGroup.Caption="Naplózás"
 ArchiveDownload.Name="&Archiválás és letöltés..."
 ArchiveDownload.Description="A kiválasztott fájlok csomagolása egy archívumba, letöltése, majd opcionálisan kibontása az aktuális helyi mappába"
 ArchiveDownload.ArchiveNameTextbox.Caption="&Archívum neve"
+; <override>
 ArchiveDownload.ArchiveNameTextbox.1="archívum"
 ArchiveDownload.ArchiveTypeCombobox.Caption="Archív &tipus:"
 ArchiveDownload.PackingGroup.Caption="Csomagolás"
@@ -3383,4 +3425,17 @@ ArchiveDownload.ExtractCheckbox.Caption="Letöltés után &csomagolja ki"
 ArchiveDownload.Use7zipCheckbox.Caption="7-zip használata kicsmagoláshoz"
 ArchiveDownload.Path7zipFile.Caption="7-zip ú&tvonal (7z.exe/7za.exe):"
 ArchiveDownload.LoggingGroup.Caption="Naplózás"
+SynchronizeAnotherServer.Name="&Szinkornizálás másik távoli szerverrel..."
+SynchronizeAnotherServer.Description="Egy mappa szinkornizálása egy másik szerveren (vagy ezen szerver másik mappája) ezen szerver egyik mappájából"
+SynchronizeAnotherServer.SynchronizeDirectoryFromThisServerGroup.Caption="Mappa szinkornizálása &erről a szerverről:"
+SynchronizeAnotherServer.RemotePath1Textbox.Caption="&Mappa"
+SynchronizeAnotherServer.ToAnotherServerGroup.Caption="... &másik szerverre:"
+SynchronizeAnotherServer.SessionUrl2Textbox.Caption="&Munkamenet"
+SynchronizeAnotherServer.PasswordPromptCheckbox.Caption="&Kérje be a munkamenetjelszót"
+SynchronizeAnotherServer.RemotePath2Textbox.Caption="&Mappa:"
+SynchronizeAnotherServer.OptionsGroup.Caption="Beállítások"
+SynchronizeAnotherServer.DeleteCheckbox.Caption="Fájlok tö&rlése"
+SynchronizeAnotherServer.PreviewCheckbox.Caption="Módosítás &előnézet"
+SynchronizeAnotherServer.ContinueOnErrorCheckbox.Caption="&Hiba esetén folytatás"
+SynchronizeAnotherServer.LoggingGroup.Caption="Naplózás"
 

+ 69 - 14
translations/PTG.ini

@@ -137,6 +137,7 @@ HelpButton.Caption="&Ajuda"
 
 [CustomScpExplorer.dfm]
 QueueSplitter.Hint="Arraste para redimensionar a lista de espera. Duplo clique para ocultar a lista de espera."
+QueuePanel.QueueFileListSplitter.Hint="Arraste para redimensionar a lista de ficheiros. Duplo clique para ocultar a lista de ficheiros."
 QueuePanel.QueueView3.item0.Caption="Operação"
 QueuePanel.QueueView3.item1.Caption="Origem"
 QueuePanel.QueueView3.item2.Caption="Destino"
@@ -283,6 +284,7 @@ DirectionGroup.SynchronizeLocalButton.Caption="&Local"
 CompareCriterionsGroup.Caption="Critérios de comparação"
 CompareCriterionsGroup.SynchronizeByTimeCheck.Caption="Hora m&odificação"
 CompareCriterionsGroup.SynchronizeBySizeCheck.Caption="Tama&nho do ficheiro"
+CompareCriterionsGroup.SynchronizeCaseSensitiveCheck.Caption="Sensibilid&ade a maiúsculas e minúsculas"
 SaveSettingsCheck.Caption="Use &mesmas opções da próxima vez"
 CopyParamGroup.Caption="Configurações de transferência"
 HelpButton.Caption="&Ajuda"
@@ -291,7 +293,7 @@ ModeGroup.SynchronizeFilesButton.Caption="Sincronizar &ficheiros"
 ModeGroup.MirrorFilesButton.Caption="Ficheiros &espelho"
 ModeGroup.SynchronizeTimestampsButton.Caption="Sincronizar &horário"
 OkMenu.Start1.Caption="&Iniciar"
-OkMenu.StartInNewWindow1.Caption="Iniciar em &nova janela"
+OkMenu.StartInNewWindowItem.Caption="Iniciar em &nova janela"
 
 [GenerateUrl.dfm]
 OptionsPageControl.UrlSheet.Caption="URL"
@@ -791,6 +793,8 @@ ExplorerActions.QueueHideAction.Caption="&Ocultar"
 ExplorerActions.QueueHideAction.Hint="Ocultar lista espera"
 ExplorerActions.QueueToolbarAction.Caption="&BArra de ferramentas"
 ExplorerActions.QueueToolbarAction.Hint="Oculta/mostra barra de ferramentas da lista de fila (no painel de lista de fila)"
+ExplorerActions.QueueFileListAction.Caption="Lista de &Ficheiros"
+ExplorerActions.QueueFileListAction.Hint="Oculta/mostra fila completa da lista de ficheiros"
 ExplorerActions.QueuePreferencesAction.Caption="&Personalizar..."
 ExplorerActions.QueuePreferencesAction.Hint="Personalizar lista espera"
 ExplorerActions.PasteAction2.Caption="&Colar"
@@ -961,6 +965,10 @@ CommanderBarPopup.RemotePanel2.Caption="&Painel Remoto"
 CommanderBarPopup.RemotePanel2.Hint="Alterar disposição do painel remoto"
 CommanderBarPopup.Options1.Caption="Lista de Espera"
 CommanderBarPopup.Options1.Hint="Configurar lista de espera"
+RemotePanelPopup.TBXSubmenuItem8.Caption="Ir Para"
+RemotePanelPopup.TBXSubmenuItem8.Hint="Ir para diretório"
+LocalPanelPopup.TBXSubmenuItem10.Caption="Ir Para"
+LocalPanelPopup.TBXSubmenuItem10.Hint="Ir para diretório"
 LocalDirViewColumnPopup.LocalFormatSizeBytesPopupItem.Caption="Mostra tamanho dos ficheiros em"
 LocalDirViewColumnPopup.LocalFormatSizeBytesPopupItem.Hint="Seleciona formato para mostrar tamanho dos ficheiros"
 LocalDirViewColumnPopup.Showcolumns3.Caption="Mostrar &Colunas"
@@ -1261,9 +1269,10 @@ MainPanel.PageControl.IntegrationAppSheet.ExternalAppsGroup.PuttyPathBrowseButto
 MainPanel.PageControl.IntegrationAppSheet.ExternalAppsGroup.TelnetForFtpInPuttyCheck.Caption="Abrir sessões &Telnet no PuTTY para sessões FTP"
 MainPanel.PageControl.IntegrationAppSheet.ExternalAppsGroup.PuttyPathHintText.Caption="&Padrões"
 MainPanel.PageControl.NetworkSheet.Caption="Rede"
-MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox.Caption="Endereço IP externo"
-MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox.RetrieveExternalIpAddressButton.Caption="Adquirir endereço IP externo do sistema &operativo"
-MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox.CustomExternalIpAddressButton.Caption="Usar o seguinte endereço IP externo:"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.Caption="Conexões de FTP de entrada (modo ativo)"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.RetrieveExternalIpAddressButton.Caption="Adquirir endereço IP externo do sistema &operativo"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.CustomExternalIpAddressButton.Caption="Usar o seguinte endereço IP externo:"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.LocalPortNumberCheck.Caption="Limite as &portas de escuta a:"
 MainPanel.PageControl.NetworkSheet.ConnectionsGroup.Caption="Coneções"
 MainPanel.PageControl.NetworkSheet.ConnectionsGroup.TryFtpWhenSshFailsCheck.Caption="Quando a coneção SFTP é rejeitada, usar porta FTP"
 MainPanel.PageControl.PanelRemoteSheet.Caption="Remoto"
@@ -1594,6 +1603,10 @@ MainPanel.PageControl.S3Sheet.S3Group.Label27.Caption="Região pré-&definida:"
 MainPanel.PageControl.S3Sheet.S3Group.S3UrlStyleLabel.Caption="Estilo do &URL:"
 MainPanel.PageControl.S3Sheet.S3Group.S3UrlStyleCombo.Items.Strings.0="Anfitrião Virtual"
 MainPanel.PageControl.S3Sheet.S3Group.S3UrlStyleCombo.Items.Strings.1="Caminho"
+MainPanel.PageControl.S3Sheet.S3AuthenticationGroup.Caption="Autenticação"
+MainPanel.PageControl.S3Sheet.S3AuthenticationGroup.Label5.Caption="Token de &Segurança:"
+MainPanel.PageControl.WebDavSheet.WebdavGroup.Caption="Opções do protocolo"
+MainPanel.PageControl.WebDavSheet.WebdavGroup.WebDavLiberalEscapingCheck.Caption="&Tolerar caracteres especiais não codificados em nomes de ficheiros"
 MainPanel.PageControl.ConnSheet.Caption="Ligação"
 MainPanel.PageControl.ConnSheet.FtpPingGroup.Caption="Manteractivo"
 MainPanel.PageControl.ConnSheet.FtpPingGroup.FtpPingIntervalLabel.Caption="Segundos entre mater activo"
@@ -1675,6 +1688,7 @@ MainPanel.PageControl.KexSheet.KexOptionsGroup.Caption="Opções do algoritmo de
 MainPanel.PageControl.KexSheet.KexOptionsGroup.Label28.Caption="&Política de seleção Algoritmo:"
 MainPanel.PageControl.KexSheet.KexOptionsGroup.KexUpButton.Caption="&Cima"
 MainPanel.PageControl.KexSheet.KexOptionsGroup.KexDownButton.Caption="&Baixo"
+MainPanel.PageControl.KexSheet.KexOptionsGroup.AuthGSSAPIKEXCheck.Caption="Tentativa de troca de chave &GSSAPI"
 MainPanel.PageControl.KexSheet.KexReexchangeGroup.Caption="Opções controle de chave re-troca"
 MainPanel.PageControl.KexSheet.KexReexchangeGroup.Label31.Caption="Max &minutos antes reintroduzir (0 para sem limite):"
 MainPanel.PageControl.KexSheet.KexReexchangeGroup.Label32.Caption="Ma&x dados antes reintroduzir (0 para sem limite):"
@@ -1747,7 +1761,7 @@ HelpButton.Caption="Ajuda"
 MinimizeMenu.Minimize1.Caption="Minimi&zar"
 MinimizeMenu.MinimizetoTray1.Caption="Minimizar para a barra de &tarefas (system tray)"
 StartMenu.Start1.Caption="&Iniciar"
-StartMenu.StartInNewWindow1.Caption="Iniciar em &nova janela"
+StartMenu.StartInNewWindowItem.Caption="Iniciar em &nova janela"
 
 [SynchronizeChecklist.dfm]
 Panel.OkButton.Caption="OK"
@@ -1852,7 +1866,7 @@ LIST_DIR_ERROR="Erro ao listar o directório '%s'."
 LIST_LINE_ERROR="Linha inesperada '%s' na listagem do directório"
 RIGHTS_ERROR="Descrição inválida dos direitos '%s'"
 CLEANUP_CONFIG_ERROR="Erro ao limpar configuração geral"
-CLEANUP_HOSTKEYS_ERROR="Erro ao limpar sessões guardadas"
+CLEANUP_CACHES_ERROR="Erro ao limpar cache"
 CLEANUP_SEEDFILE_ERROR="Erro ao limpar ficheiros de sementes aleatórias"
 CLEANUP_SESSIONS_ERROR="Erro ao limpar chaves de anfitrião em cache"
 DETECT_RETURNVAR_ERROR="Erro ao detectar variável que continha o código de retorno do último comando"
@@ -2076,6 +2090,9 @@ MISSING_TARGET_BUCKET="Especificar o segmento de destino"
 UNKNOWN_FILE_ENCRYPTION="O ficheiro não é encriptado com uma criptografia conhecida."
 INVALID_ENCRYPT_KEY="**Chave de encriptação inválida.**\n\nChave de encriptação para encriptar %s deve ter %d bytes. Deve ser inserido em representação hexadecimal (i.e. %d Caracteres)."
 UNREQUESTED_FILE="Servidor enviou um ficheiro que não foi solicitado."
+STORE_NEW_HOSTKEY_ERROR="Falha ao armazenar a nova chave do anfitrião"
+STREAM_IN_SCRIPT_ERROR="Ao fazer o envio de dados em stream, apenas uma fonte pode ser especificada e o destino deve especificar um nome do ficheiro."
+STREAM_READ_ERROR="Erro ao ler o stream de entrada."
 CONFIRM_PROLONG_TIMEOUT3="O anfitrião não comunica há %d segundos.\n\nAguardar por mais %0:d segundos?"
 PROMPT_KEY_PASSPHRASE="Introduza palavra-passe para a chave '%s':"
 FILE_OVERWRITE="O ficheiro '%s' já existe. Copiar por cima?"
@@ -2115,7 +2132,7 @@ RENAME_TITLE="Transferir sob nome diferente"
 RENAME_PROMPT2="&Novo nome:"
 VERIFY_CERT_PROMPT3="*** Certificado do servidor é desconhecido. Não possui garantia que o servidor é o computador que julga ser.**\n\nOs detalhes do certificado do servidor são:\n\n%s\n\nSe confia neste certificado, pressione Sim. Para conetar sem salvar o certificado, presssione Não. Para abandonar a conexão pressione Cancelar.\n\nContinuar a conetar e salvar o certificado?"
 VERIFY_CERT_CONTACT="- Organização: %s\n|- Localização: %s\n|- Outro: %s\n"
-CERT_TEXT="Emissor:\n%s\nAssunto:\n%s\nVálido: %s - %s\n\nImpressão Digital (SHA1): %s\n\nSumário: %s"
+CERT_TEXT2="Emissor:\n%s\nAssunto:\n%s\nVálido: %s - %s\n\nImpressão Digital (SHA-256): %s\n-SHA-1: %s\n\nSumário: %s"
 CERTIFICATE_PASSPHRASE_PROMPT="Senha para o certificado do cliente:"
 CERTIFICATE_PASSPHRASE_TITLE="Senha do certificado de cliente"
 KEY_TYPE_CONVERT3="**Deseja converter esta chave privada %s para o formato PuTTY?**\n\n%s"
@@ -2368,7 +2385,7 @@ REMOVE_PATH_ERROR="Erro ao remover endereço '%s' do endereço de pesquisa (%%PA
 ALREADY_EDITED_EXTERNALLY_OR_UPLOADED="O ficheiro '%s' já se encontra aberto no editor externo (aplicação) ou está a ser enviado."
 COPY_PARAM_NO_RULE="Não especificou regra de autoseleção."
 COPY_PARAM_DUPLICATE="Já existe uma transferência de definições de modelo com a descrição '%s'."
-CUSTOM_COMMAND_IMPOSSIBLE="O commando personalizado '%s' não pode ser executado de momento. Por favor selecione ficheiros para o comando primeiramente."
+CUSTOM_COMMAND_IMPOSSIBLE2="**Commando personalizado '%s' não pode ser executado de momento. Pode precisar de selecionar ficheiros para o commando ou abrir uma sessão primeiro."
 CUSTOM_COMMAND_AD_HOC_NAME="Ad Hoc"
 EDIT_SESSION_CLOSED_RELOAD="Incapaz de reabrir o ficheiro '%s', a sessão '%s' já foi encerrada."
 DECRYPT_PASSWORD_ERROR="A palavra passe não pode descodificada."
@@ -2411,6 +2428,7 @@ EXTENSION_INSTALLED_ALREADY="A extensão já está instalada."
 EXTENSION_LOAD_ERROR="Erro ao carregar uma extensão de \"%s\"."
 NO_SITE_FOR_COMMAND="* * nenhuma sessão está aberta * * \nO comando selecionado tem opções específicas do site, mas nenhuma sessão está aberta."
 DD_TARGET_UNKNOWN="**WinSCP não conseguiu detetar a pasta, onde o(s) ficheiro(s) arrastado(s) foi/foram largado(s).** No modo arrastar & soltar padrão, WinSCP, O WinSCP permite descartar ficheiros apenas para unidades locais e unidades de rede mapeadas.\n\nVocê pode permitir a exclusão de ficheiros para outros destinos nas preferências. Pressione o botão Ajuda para obter detalhes."
+JUMPLIST_ERROR="Erro ao atualizar a lista de atalhos."
 CONFIRM_OVERWRITE_SESSION="A sessão com o nome '%s' já existe. Copiar por cima?"
 CREATE_LOCAL_DIRECTORY="O directório '%s' não existe. Criar?"
 CANCEL_OPERATION_FATAL2="**Cancelar a transferência de ficheiro?**\n \nA operação não pode ser cancelada a meio da transferência de um ficheiro.\nPressione 'Sim' para cancelar a transferência do ficheiro e encerrar a ligação.\nPressione 'Não' pra terminar a transferência de ficheiro atual.\nPressione 'Cancelar' para continuar a operação."
@@ -2465,7 +2483,7 @@ REPORT_BUTTON="Relatório"
 MASTER_PASSWORD_OTHER_INSTANCE="Existe outra instância do WinSCP em execução.\n\nDefinir ou limpar a palavra passe mestra, enquanto outra instância do WinSCP se encontra em execução, pode causar perda das suas palavras passe guardadas.\n\nPor favor encerre as outras instâncias do WinSCP antes de continuar."
 EDIT_SESSION_REATTACH="**Pretende anexar o ficheiro editado '%s' à sessão '%s'?**\n\nA sessão original usada para descarregar o ficheiro '%s' para o editor foi encerrada previamente."
 CONFIRM_UNREGISTER_URL="Pretende remover o WinSCP de lidar todos os endereços URL?"
-INTERNAL_EDITOR_LARGE_FILE="**Tentando abrir ficheiro grande?**\n\nO ficheiro que está a tentar abrir no editor interno é demasiado grande (%s). O editor interno do WinSCP não foi desenhado parar abrir ficheiros grandes. Considere usar um editor externo capaz de abrir ficheiros grandes.\n\nPode tentar abrir o ficheiro na mesma, mas pode acabar por ficar sem memoria."
+INTERNAL_EDITOR_LARGE_FILE2="**Tentando abrir ficheiro grande?**\n\nO ficheiro que está a tentar abrir no editor interno é demasiado grande (%s). O editor interno do WinSCP não foi desenhado parar abrir ficheiros grandes. Considere usar um editor externo capaz de abrir ficheiros grandes.\n\nPode tentar abrir o ficheiro na mesma, mas o WinSCP pode falhar."
 CLOSE_BUTTON="Fechar"
 EXTENSION_UNTRUSTED="A extensão não vem de uma fonte confiável. Tem certeza de que deseja instalá-la?"
 EXTENSION_NOT_LATEST="**Usando a última versão compatível e confiável da extensão.**\n\nA versão mais recente da extensão ainda não foi verificada ou não é compatível com esta versão do WinSCP."
@@ -2608,6 +2626,11 @@ AUTO_WORKSPACE_ENABLE="Pressione 'Não' para ativar guardar automático do espa
 USAGE_BROWSE="Seleciona o ficheiro especifico no(s) painel(eis) de ficheiro(s)."
 PUTTY_SETTINGS_INSTRUCTIONS="**Editar definições do terminal no PuTTY.**\n\nPuTTY será iniciado. Edite as definições do terminal de um site temporário %s. WinSCP irá lembrar-se dessas definições após fechar  fechar o PuTTY."
 PUTTY_SETTINGS_SITE_NAME="Definições do terminal para %s"
+USAGE_USERNAME="Uma forma alternativa de fornecer um nome de Utilizador"
+USAGE_PASSWORD="Uma forma alternativa de fornecer a Password"
+USAGE_INTERACTIVEINPUT="Todos os prompts/resultados são cancelados automaticamente"
+USAGE_STDOUT="Permite streaming de ficheiros para stdout (e redireciona a saída de status para stderr)"
+USAGE_STDIN="Permite streaming de ficheiros de stdin"
 COPY_FILE="%s ficheiro '%s' para %s"
 COPY_FILES="%s %d ficheiros para %s"
 COPY_TOLOCAL="directório local"
@@ -2667,7 +2690,7 @@ PROPERTIES_UNKNOWN_SIZE="Desconhecido"
 PROGRESS_CALCULATE_SIZE="Calculando o tamanho do directório"
 CLEANUP_CONFIG="Configuração geral"
 CLEANUP_SESSIONS="Sessões guardadas"
-CLEANUP_HOSTKEYS="Chaves do anfitrião em cache"
+CLEANUP_CACHES="Cache"
 CLEANUP_INIFILE="Configuração do ficheiro INI"
 CLEANUP_SEEDFILE="Ficheiro com semente aleatória"
 SELECT_LOCAL_DIRECTORY="Definir directório local"
@@ -2952,24 +2975,46 @@ SCREENSHOT_EDITOR="Editor de texto interno"
 SCREENSHOT_TRANSFER="Janela para definir opções de transferência"
 SCREENSHOT_PROPERTIES="Alterando as propriedades dos ficheiros"
 LICENSE="WinSCP é software gratuito: Pode usar, redistribuir e/ou modificar dentro dos termos da GNU General Public License publicada pela Free Software Foundation, tanto na versão 3 da licença, ou (por sua opção) qualquer versão superior."
+; <override>
 NEW_5_10_MULTI_CONNECTIONS="As operações de transferência em segundo plano podem usar múltiplas conexões"
+; <override>
 NEW_5_10_DPI_AWARE="Suporte para vários monitores com DPI/resoluções diferentes"
+; <override>
 NEW_5_10_FIND="A janela de diálogo Localizar não bloqueia janela principal e ficheiros encontrados podem ser transferidos e excluídos na janela de diálogo Localizar"
+; <override>
 NEW_5_10_ONEDRIVE="Suporte para Microsoft OneDrive"
+; <override>
 NEW_5_10_AUTOMATION="Inúmeras melhorias para personalização de comandos/extensões e .NET assembly"
+; <override>
 NEW_5_12_S3="Suporte para Amazon S3 protocolo"
+; <override>
 NEW_5_12_SHA256_HOSTKEY="Suporte para o algoritmo SHA-256 no servidor com chave de impressão digital"
+; <override>
 NEW_5_12_AUTOMATION="Numerosas melhorias para o assembly do .NET, incluindo suporte para gestão de pacotes no NuGet para PackageReference"
+; <override>
 NEW_5_14_ENCRYPTION="Ficheiros podem ser opcionalmente encriptados ao armazená-los num servidor SFTP"
+; <override>
 NEW_5_14_UNC="Caminhos UNC locais podem ser navegados"
+; <override>
 NEW_5_14_CLIPBOARD="Os ficheiros podem ser copiados para a área de transferência"
+; <override>
 NEW_5_14_SYNCHRONIZATION="Muitas melhorias na sincronização de diretórios"
+; <override>
 NEW_5_14_FILES_COLOR="Um opcional para colorir ficheiros em painéis de ficheiros com base em uma máscara"
+; <override>
 NEW_5_16_TABS="Melhoramentos para a gestão de sessões e espaços de trabalho"
+; <override>
 NEW_5_16_HW_AES="Aceleração AES por hardware"
+; <override>
 NEW_5_16_ARCHIVE_DOWNLOAD="Extensão 'Arquivar e descarregar' para arquivar ficheiros remotos e descarregar o arquivo"
+; <override>
 NEW_5_16_SYNC_CHECKLIST="Melhoramentos para a janela de Sincronização"
+; <override>
 NEW_5_16_FIND_SORT="Resultados encontrados podem ser ordenados"
+NEW_5_18_QUEUE_FILE_LIST="Uma lista completa de ficheiros que estão na fila para transferência que podem ser mostrados"
+NEW_5_18_STREAMING="Um suporte de streaming em scripts e .NET assembly"
+NEW_5_18_REMOTE_SYNC="Uma extensão para sincronizar dois servidores remotos"
+NEW_5_18_TLS="TLS 1.3 ativado e suporte adicionado para impressões digitais SHA-256 TLS / SSL"
 
 [WinSCP_DRC.rc]
 Baseutils_SNoValidPath="Não foi encontrado nenhum caminho válido"
@@ -2986,7 +3031,6 @@ Customdirview_STextDirectories="%u Directórios"
 Customdirview_STextFileExt="Ficheiro %s"
 Customdirview_STextFiles="%u Ficheiros"
 Customunixdirview_SUnixDefaultRootName="/ <root>"
-Dirview_coFileOperatorTitle="Operação de sistema de ficheiros"
 Dirviewcolproperties_SDirViewAttrCol="Attri."
 Dirviewcolproperties_SDirViewChangedCol="Alterado"
 Dirviewcolproperties_SDirViewExtCol="Ext"
@@ -2997,7 +3041,6 @@ Dragdrop_MIAbortStr="&Abort"
 Dragdrop_MICopyStr="Copiar aqui"
 Dragdrop_MILinkStr="&Criar aqui atalho(s)"
 Dragdrop_MIMoveStr="&Mover aqui"
-Fileoperator_SFileOperation="Operação de ficheiros"
 Iedriveinfo_ErrorInvalidDrive="%s é um drive inválido"
 System_Sysconst_SInvalidDate="'%s' não é uma data válida"
 System_Sysconst_SInvalidDateTime="'%s' não é uma data nem tempo válido"
@@ -3235,8 +3278,6 @@ ExistingFileReadOnly2="O ficheiro existente não pode ser substituído porque te
 ExistingFileReadOnlyRetry="&Remover o atributo \"só de leitura\" e tentar novamente"
 ExistingFileReadOnlyKeepExisting="&Manter o ficheiro existente"
 ErrorReadingExistingDest="Ocorreu um erro ao tentar ler o ficheiro existente:"
-FileExists="O ficheiro já existe.\n\nDeseja substituí-lo?"
-ExistingFileNewer="O ficheiro existente é mais recente que o que está a ser instalado. É recomendado que mantenha o ficheiro existente.\n\nDeseja manter o ficheiro existente?"
 ErrorChangingAttr="Ocorreu um erro ao tentar alterar os atributos do ficheiro existente:"
 ErrorCreatingTemp="Ocorreu um erro ao tentar criar um ficheiro na directoria de destino:"
 ErrorReadingSource="Ocorreu um erro ao tentar ler o ficheiro de origem:"
@@ -3382,6 +3423,7 @@ BatchRename.LoggingGroup.Caption="Logs"
 ArchiveDownload.Name="&Arquivar e descarregar..."
 ArchiveDownload.Description="Empacota os ficheiros selecionados para um arquivo, descarrega-o e opcionamente extrai o arquivo para o diretório local atual"
 ArchiveDownload.ArchiveNameTextbox.Caption="Nome do &arquivo:"
+; <override>
 ArchiveDownload.ArchiveNameTextbox.1="arquivo"
 ArchiveDownload.ArchiveTypeCombobox.Caption="&Tipo de arquivo:"
 ArchiveDownload.PackingGroup.Caption="Empacotar"
@@ -3391,4 +3433,17 @@ ArchiveDownload.ExtractCheckbox.Caption="Extrair após descarregar"
 ArchiveDownload.Use7zipCheckbox.Caption="Usar &7-zip para extrair"
 ArchiveDownload.Path7zipFile.Caption="Caminho &para o 7-zip (7z.exe/7za.exe):"
 ArchiveDownload.LoggingGroup.Caption="Logs"
+SynchronizeAnotherServer.Name="&Sincronizar com outro servidor remoto ..."
+SynchronizeAnotherServer.Description="Sincroniza um diretório em outro servidor (ou outro diretório neste servidor) em relação a um diretório neste servidor"
+SynchronizeAnotherServer.SynchronizeDirectoryFromThisServerGroup.Caption="Sincronize o dire&tório deste servidor:"
+SynchronizeAnotherServer.RemotePath1Textbox.Caption="&Diretório:"
+SynchronizeAnotherServer.ToAnotherServerGroup.Caption="... p&ara outro servidor:"
+SynchronizeAnotherServer.SessionUrl2Textbox.Caption="&Sessão:"
+SynchronizeAnotherServer.PasswordPromptCheckbox.Caption="Solicitar senha de sessão"
+SynchronizeAnotherServer.RemotePath2Textbox.Caption="Di&retório:"
+SynchronizeAnotherServer.OptionsGroup.Caption="Opções"
+SynchronizeAnotherServer.DeleteCheckbox.Caption="&Apagar ficheiros"
+SynchronizeAnotherServer.PreviewCheckbox.Caption="Mudanças pré-&visualizar"
+SynchronizeAnotherServer.ContinueOnErrorCheckbox.Caption="Continuar em caso de &erro"
+SynchronizeAnotherServer.LoggingGroup.Caption="Logs"
 

+ 69 - 15
translations/RU.ini

@@ -137,6 +137,7 @@ HelpButton.Caption="&Справка"
 
 [CustomScpExplorer.dfm]
 QueueSplitter.Hint="Перетаскивание меняет размер списка. Двойной щелчок скрывает список."
+QueuePanel.QueueFileListSplitter.Hint="Перетаскивание меняет размер списка файлов. Двойной щелчок скрывает список."
 QueuePanel.QueueView3.item0.Caption="Операция"
 QueuePanel.QueueView3.item1.Caption="Источник"
 QueuePanel.QueueView3.item2.Caption="Назначение"
@@ -283,6 +284,7 @@ DirectionGroup.SynchronizeLocalButton.Caption="&Компьютер"
 CompareCriterionsGroup.Caption="Сравнение"
 CompareCriterionsGroup.SynchronizeByTimeCheck.Caption="&Время изменения"
 CompareCriterionsGroup.SynchronizeBySizeCheck.Caption="&Размер файла"
+CompareCriterionsGroup.SynchronizeCaseSensitiveCheck.Caption="&Чувствителен к регистру"
 SaveSettingsCheck.Caption="Со&хранить параметры"
 CopyParamGroup.Caption="Параметры передачи"
 HelpButton.Caption="&Справка"
@@ -291,7 +293,7 @@ ModeGroup.SynchronizeFilesButton.Caption="Синхронизация &файло
 ModeGroup.MirrorFilesButton.Caption="&Зеркальные файлы"
 ModeGroup.SynchronizeTimestampsButton.Caption="Синхр. &штампов времени"
 OkMenu.Start1.Caption="&Начать"
-OkMenu.StartInNewWindow1.Caption="Запустить в новом окне"
+OkMenu.StartInNewWindowItem.Caption="Запустить в новом окне"
 
 [GenerateUrl.dfm]
 OptionsPageControl.UrlSheet.Caption="URL"
@@ -791,6 +793,8 @@ ExplorerActions.QueueHideAction.Caption="Скрыть"
 ExplorerActions.QueueHideAction.Hint="Скрыть список процессов в очереди"
 ExplorerActions.QueueToolbarAction.Caption="Панель инструментов"
 ExplorerActions.QueueToolbarAction.Hint="Скрыть/показать панель инструментов (на панели фоновых передач)"
+ExplorerActions.QueueFileListAction.Caption="&Список файлов"
+ExplorerActions.QueueFileListAction.Hint="Показать/скрыть полный список файлов"
 ExplorerActions.QueuePreferencesAction.Caption="Настроить…"
 ExplorerActions.QueuePreferencesAction.Hint="Настройки фоновой передачи"
 ExplorerActions.PasteAction2.Caption="&Вставить"
@@ -961,6 +965,10 @@ CommanderBarPopup.RemotePanel2.Caption="Панель &сервера"
 CommanderBarPopup.RemotePanel2.Hint="Изменить отображение панели сервера"
 CommanderBarPopup.Options1.Caption="&Фоновая передача"
 CommanderBarPopup.Options1.Hint="Управление списком процессов"
+RemotePanelPopup.TBXSubmenuItem8.Caption="&Перейти"
+RemotePanelPopup.TBXSubmenuItem8.Hint="Сменить каталог"
+LocalPanelPopup.TBXSubmenuItem10.Caption="&Перейти"
+LocalPanelPopup.TBXSubmenuItem10.Hint="Сменить каталог"
 LocalDirViewColumnPopup.LocalFormatSizeBytesPopupItem.Caption="Показывать размер файлов в…"
 LocalDirViewColumnPopup.LocalFormatSizeBytesPopupItem.Hint="Выбрать формат вывода размеров файлов"
 LocalDirViewColumnPopup.Showcolumns3.Caption="&Колонки"
@@ -1261,9 +1269,10 @@ MainPanel.PageControl.IntegrationAppSheet.ExternalAppsGroup.PuttyPathBrowseButto
 MainPanel.PageControl.IntegrationAppSheet.ExternalAppsGroup.TelnetForFtpInPuttyCheck.Caption="О&ткрывать telnet-сессии в PuTTY для сессий FTP"
 MainPanel.PageControl.IntegrationAppSheet.ExternalAppsGroup.PuttyPathHintText.Caption="&шаблоны"
 MainPanel.PageControl.NetworkSheet.Caption="Сеть"
-MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox.Caption="Внешний IP-адрес"
-MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox.RetrieveExternalIpAddressButton.Caption="Запросить внешний IP-адрес у &операционной системы"
-MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox.CustomExternalIpAddressButton.Caption="Использовать следующий &внешний IP-адрес:"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.Caption="Входящие соединения FTP (активный режим)"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.RetrieveExternalIpAddressButton.Caption="Запросить внешний IP-адрес у &операционной системы"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.CustomExternalIpAddressButton.Caption="Использовать следующий &внешний IP-адрес:"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.LocalPortNumberCheck.Caption="Ограничить прослушиваемые порты до:"
 MainPanel.PageControl.NetworkSheet.ConnectionsGroup.Caption="Подключение"
 MainPanel.PageControl.NetworkSheet.ConnectionsGroup.TryFtpWhenSshFailsCheck.Caption="Если соединение по SFTP &отклонено, обратиться к порту FTP"
 MainPanel.PageControl.PanelRemoteSheet.Caption="Панель сервера"
@@ -1594,6 +1603,10 @@ MainPanel.PageControl.S3Sheet.S3Group.Label27.Caption="&Регион по умо
 MainPanel.PageControl.S3Sheet.S3Group.S3UrlStyleLabel.Caption="Стиль по умолчанию &URL:"
 MainPanel.PageControl.S3Sheet.S3Group.S3UrlStyleCombo.Items.Strings.0="Виртуальный хост"
 MainPanel.PageControl.S3Sheet.S3Group.S3UrlStyleCombo.Items.Strings.1="Путь"
+MainPanel.PageControl.S3Sheet.S3AuthenticationGroup.Caption="Аутентификация"
+MainPanel.PageControl.S3Sheet.S3AuthenticationGroup.Label5.Caption="Токен безопасности:"
+MainPanel.PageControl.WebDavSheet.WebdavGroup.Caption="Параметры протокола"
+MainPanel.PageControl.WebDavSheet.WebdavGroup.WebDavLiberalEscapingCheck.Caption="Разрешить незакодированные спецсимволы в именах файлов"
 MainPanel.PageControl.ConnSheet.Caption="Подключение"
 MainPanel.PageControl.ConnSheet.FtpPingGroup.Caption="Имитировать активность"
 MainPanel.PageControl.ConnSheet.FtpPingGroup.FtpPingIntervalLabel.Caption="&Секунд между пакетами"
@@ -1675,6 +1688,7 @@ MainPanel.PageControl.KexSheet.KexOptionsGroup.Caption="Параметры об
 MainPanel.PageControl.KexSheet.KexOptionsGroup.Label28.Caption="Политика выбора протокола:"
 MainPanel.PageControl.KexSheet.KexOptionsGroup.KexUpButton.Caption="&Выше"
 MainPanel.PageControl.KexSheet.KexOptionsGroup.KexDownButton.Caption="&Ниже"
+MainPanel.PageControl.KexSheet.KexOptionsGroup.AuthGSSAPIKEXCheck.Caption="Попытка обмена &GSSAPI ключом"
 MainPanel.PageControl.KexSheet.KexReexchangeGroup.Caption="Параметры перевыбора ключей"
 MainPanel.PageControl.KexSheet.KexReexchangeGroup.Label31.Caption="Менять не реже, минут (0 — не менять)"
 MainPanel.PageControl.KexSheet.KexReexchangeGroup.Label32.Caption="Менять после пересылки объёма (0 — не менять)"
@@ -1747,7 +1761,7 @@ HelpButton.Caption="&Справка"
 MinimizeMenu.Minimize1.Caption="&Свернуть"
 MinimizeMenu.MinimizetoTray1.Caption="Свернуть в область &уведомлений"
 StartMenu.Start1.Caption="&Начать"
-StartMenu.StartInNewWindow1.Caption="Запустить в новом окне"
+StartMenu.StartInNewWindowItem.Caption="Запустить в новом окне"
 
 [SynchronizeChecklist.dfm]
 Panel.OkButton.Caption="OK"
@@ -1852,7 +1866,7 @@ LIST_DIR_ERROR="Не могу просмотреть каталог '%s'."
 LIST_LINE_ERROR="Неожиданная строка в содержимом каталога: '%s'."
 RIGHTS_ERROR="Неверно заданы права: «%s»."
 CLEANUP_CONFIG_ERROR="Не могу удалить общие настройки."
-CLEANUP_HOSTKEYS_ERROR="Не могу удалить избранные соединения."
+CLEANUP_CACHES_ERROR="Не могу удалить кэши."
 CLEANUP_SEEDFILE_ERROR="Не могу удалить файл случайных чисел."
 CLEANUP_SESSIONS_ERROR="Не могу удалить открытые ключи серверов."
 DETECT_RETURNVAR_ERROR="Не определяется переменная, содержащая код возврата."
@@ -2076,6 +2090,9 @@ MISSING_TARGET_BUCKET="Укажите контейнер назначения."
 UNKNOWN_FILE_ENCRYPTION="Файл не был зашифрован известным типом щифрования."
 INVALID_ENCRYPT_KEY="**Неверный ключ шифрования.**\n\nКлюч шифрования для %s шифрования болжен иметь %d байт. Он должен быть введен в шестнадцатиричном представлении (т.е. %d символов)."
 UNREQUESTED_FILE="Сервер отправил файл, который не был запрошен"
+STORE_NEW_HOSTKEY_ERROR="Невозможно сохранить новый ключ хоста"
+STREAM_IN_SCRIPT_ERROR="При загрузке потоковых данных может быть указан только один источник и цель должна быть именем файла"
+STREAM_READ_ERROR="Ошибка чтения входящего потока"
 CONFIRM_PROLONG_TIMEOUT3="Не удаётся связаться с хостом в течение %d секунд(ы).\n\nЖдать ещё %0:d секунд?"
 PROMPT_KEY_PASSPHRASE="Пароль для ключа '%s':"
 FILE_OVERWRITE="Файл '%s' уже существует. Перезаписать?"
@@ -2115,7 +2132,7 @@ RENAME_TITLE="Передать с другим именем"
 RENAME_PROMPT2="&Новое имя:"
 VERIFY_CERT_PROMPT3="**Сертификат сервера неизвестен. Нельзя гарантировать, что это тот самый сервер, который вам нужен.**\n\nПараметры сертификата сервера:\n\n%s\n\nЕсли вы доверяете этому сертификату, нажмите «Да». Чтобы подключиться без сохранения сертификата, нажмите «Нет». Чтобы прервать подключение, нажмите «Отмена».\n\nПродолжить подключение и сохранить сертификат?"
 VERIFY_CERT_CONTACT="- Организация: %s\n|- Расположение: %s\n|- Прочее: %s\n"
-CERT_TEXT="Поставщик:\n%s\nТема:\n%s\nДействителен: %s — %s\n\nОтпечаток (SHA1): %s\n\nРезюме: %s"
+CERT_TEXT2="Отправитель:\n%s\nТема:\n%s\nValid: %s - %s\n\nОтпечаток:\n- SHA-256: %s\n- SHA-1: %s\n\nИтог: %s"
 CERTIFICATE_PASSPHRASE_PROMPT="&Идентификационная фраза для сертификата клиента:"
 CERTIFICATE_PASSPHRASE_TITLE="Идентификационная фраза сертификата клиента"
 KEY_TYPE_CONVERT3="**Вы желаете преобразовать данный закрытый ключ %s в формат PuTTY?**\n\n%s"
@@ -2368,7 +2385,7 @@ REMOVE_PATH_ERROR="Ошибка удаления пути '%s' из переме
 ALREADY_EDITED_EXTERNALLY_OR_UPLOADED="Файл '%s' уже открыт в другом приложении или передаётся."
 COPY_PARAM_NO_RULE="Вы не указали ни одной маски для автоматического выбора варианта"
 COPY_PARAM_DUPLICATE="Вариант с именем '%s' уже существует."
-CUSTOM_COMMAND_IMPOSSIBLE="Команда '%s' не может быть исполнена. Выберите файлы, над которыми нужно исполнить команду."
+CUSTOM_COMMAND_IMPOSSIBLE2="**Пользовательская команда '%s' не может быть выполнена прямо сейчас.** Возможно Вам необходимо сначала выбрать файлы или открыть сеанс."
 CUSTOM_COMMAND_AD_HOC_NAME="Ad hoc"
 EDIT_SESSION_CLOSED_RELOAD="Невозможно перезагрузить файл '%s', соединение '%s' уже закрыто."
 DECRYPT_PASSWORD_ERROR="Пароль не может быть расшифрован."
@@ -2411,6 +2428,7 @@ EXTENSION_INSTALLED_ALREADY="Расширение уже установлено.
 EXTENSION_LOAD_ERROR="Ошибка загрузки расширения из \"%s\"."
 NO_SITE_FOR_COMMAND="**Ни одной сессии не открыто**\nВыбранные комманды имеют настройки, специфичные для соединений, но ни одного соединения не открыто."
 DD_TARGET_UNKNOWN="**WinSCP не удалось обнаружить папку, в которую были перетащены файлы.** В режиме перетаскивания по умолчанию WinSCP позволяет сбрасывать файлы только на локальные диски и подключенные сетевые диски.\n\nВы можете разрешить удаление файлы для других целей в настройках. Нажмите кнопку Справка для получения подробной информации."
+JUMPLIST_ERROR="Ошибка обновления списка перетаскивания"
 CONFIRM_OVERWRITE_SESSION="Соединение '%s' уже существует. Перезаписать?"
 CREATE_LOCAL_DIRECTORY="Каталог '%s' не существует. Создать?"
 CANCEL_OPERATION_FATAL2="**Отменить передачу файла?**\n \nОперация не может быть отменена в процессе передачи файла.\nНажмите «Да» для отмены передачи файла и закрытия соединения.\nНажмите «Нет» для окончания передачи текущего файла.\nНажмите «Отмена» для продолжения операции."
@@ -2465,7 +2483,7 @@ REPORT_BUTTON="&Отправить"
 MASTER_PASSWORD_OTHER_INSTANCE="Работает другая копия WinSCP.\n\nУстановка или удаление мастер-пароля при наличии другой работающей копии WinSCP могут привести к потери ваших сохранённых паролей.\n\nПожалуйста, закройте все остальные работающие копии WinSCP перед тем, как продолжить."
 EDIT_SESSION_REATTACH="**Вы хотите прикрепить изменённый файл '%s' к сессии '%s'?**\n\nИсходная сессия, в которой файл '%s' был загружен в редактор, уже закрыта."
 CONFIRM_UNREGISTER_URL="Вы хотите отменить регистрацию WinSCP как обработчика адресов URL?"
-INTERNAL_EDITOR_LARGE_FILE="**Попытаться открыть большой файл?**\n\nФайл, который вы пытаетесь открыть во встроенном редакторе, слишком велик (%s). Встроенный редактор WinSCP не предназначен для редактирования больших файлов. Попробуйте использовать внешний редактор, способный работать с большими файлами.\n\nВы всё равно можете попробовать открыть файл, но программа может завершить работу из-за недостатка памяти."
+INTERNAL_EDITOR_LARGE_FILE2="**Пытаетесь открыть большой файл?**\n\nФайл (%s), который Вы пытаетесь открыть слишком велик для внутреннего редактора. Внутренний редактор WinSCP не рассчитан на редактирование больших файлов. Используйте внешний редактор для редактирования больших файлов.\n\nВы можете всё равно попытаться открыть этот файл, но WinSCP может упасть."
 CLOSE_BUTTON="Закрыть"
 EXTENSION_UNTRUSTED="Расширение получено не из проверенного источника. Вы действительно желаете установить его?"
 EXTENSION_NOT_LATEST="**Используется последняя совместимая и проверенная версия расширения.**\n\nНовейшая версия расширения либо ещё не проверена, либо не совместимо с этой версией WinSCP."
@@ -2608,6 +2626,11 @@ AUTO_WORKSPACE_ENABLE="Нажмите 'Нет' для включения авт
 USAGE_BROWSE="Выбирает указанный файл в файловой панели(ях)."
 PUTTY_SETTINGS_INSTRUCTIONS="**Изменить настройки консоли для PuTTY.**\n\nPuTTY будет запущен. Изменить настройки консоли для временного сайта %s. WinSCP запомнит эти настройки после закрытия PuTTY."
 PUTTY_SETTINGS_SITE_NAME="Настройки консоли для %s"
+USAGE_USERNAME="Альтернативный путь указания имени пользователя"
+USAGE_PASSWORD="Альтернативный путь указания пароля"
+USAGE_INTERACTIVEINPUT="Все запросы автоматически отменяются"
+USAGE_STDOUT="Позволяет транслировать файлы в stdout"
+USAGE_STDIN="Позволяет транслировать файлы из stdin"
 COPY_FILE="%s файл %s в %s"
 COPY_FILES="%s %d файлов(-а) в %s"
 COPY_TOLOCAL="локальный каталог"
@@ -2667,7 +2690,7 @@ PROPERTIES_UNKNOWN_SIZE="Неизвестно"
 PROGRESS_CALCULATE_SIZE="Расчёт размера папки"
 CLEANUP_CONFIG="Общие параметры"
 CLEANUP_SESSIONS="Подключения"
-CLEANUP_HOSTKEYS="Кэшированные хост-ключи"
+CLEANUP_CACHES="Кэши"
 CLEANUP_INIFILE="Файл конфигурации"
 CLEANUP_SEEDFILE="Файл случайных чисел"
 SELECT_LOCAL_DIRECTORY="Выберите локальный каталог."
@@ -2952,24 +2975,46 @@ SCREENSHOT_EDITOR="Встроенный текстовый редактор"
 SCREENSHOT_TRANSFER="Окно настроек передачи"
 SCREENSHOT_PROPERTIES="Изменение свойств файлов"
 LICENSE="WinSCP — свободное ПО: вы можете пользоваться им, распространять его и модифицировать в рамках Универсальной общедоступной лицензии GNU, версии 3 или более поздней."
+; <override>
 NEW_5_10_MULTI_CONNECTIONS="Фоновая передача может использовать несколько соединений"
+; <override>
 NEW_5_10_DPI_AWARE="Поддержка нескольких мониторов с различным DPI/разрешением"
+; <override>
 NEW_5_10_FIND="Диалог Поиска не блокирует главное окно и найденные файлы могут быть загружены или удалены через диалог Поиска"
+; <override>
 NEW_5_10_ONEDRIVE="Поддержка Microsoft OneDrive"
+; <override>
 NEW_5_10_AUTOMATION="Множественные улучшения для пользовательских комманд/расширений и сборки .NET"
+; <override>
 NEW_5_12_S3="Поддержка протокола Amazon S3"
+; <override>
 NEW_5_12_SHA256_HOSTKEY="Поддержка отпечатка ключа хоста алгоритмом SHA-256"
+; <override>
 NEW_5_12_AUTOMATION="Многочисленные улучшения сборки .NET , включая поддержку управления пакетами PackageReference в пакете NuGet"
+; <override>
 NEW_5_14_ENCRYPTION="Файлы могут быть по желанию зашифрованы, при их размещении на сервере SFTP"
+; <override>
 NEW_5_14_UNC="Локальные пути UNC могут быть просмотрены"
+; <override>
 NEW_5_14_CLIPBOARD="Файлы могут быть скопированы в буфер обмена"
+; <override>
 NEW_5_14_SYNCHRONIZATION="Множество улучшений в синхронизации каталогов"
+; <override>
 NEW_5_14_FILES_COLOR="Опциональная цветовая подсветка файлов в файловых панелях, основанная на файловой маске"
+; <override>
 NEW_5_16_TABS="Улучшения в управлении подключениями и рабочими пространствами"
+; <override>
 NEW_5_16_HW_AES="Аппаратноеускорение AES"
+; <override>
 NEW_5_16_ARCHIVE_DOWNLOAD="Расширение 'Архивировать и Скачать' для сжатия удаленных файлов и загрузки архива"
+; <override>
 NEW_5_16_SYNC_CHECKLIST="Улучшения в окне контрольного списка синхронизации"
+; <override>
 NEW_5_16_FIND_SORT="Результаты поиска могут быть отсортированы"
+NEW_5_18_QUEUE_FILE_LIST="Может быть отображен полный список файлов, подготовленный к пересылке"
+NEW_5_18_STREAMING="Поддержка потоков в скриптинге и .NET"
+NEW_5_18_REMOTE_SYNC="Расширение для синхронизации двух удаленных серверов"
+NEW_5_18_TLS="Включает TLS 1.3 И добавляет поддержку отпечатков SHA-256 TLS/SSL"
 
 [WinSCP_DRC.rc]
 Baseutils_SNoValidPath="Не могу найти подходящего адреса."
@@ -2986,7 +3031,6 @@ Customdirview_STextDirectories="%u папок"
 Customdirview_STextFileExt="Файл %s"
 Customdirview_STextFiles="%u файлов"
 Customunixdirview_SUnixDefaultRootName="/ <корень>"
-Dirview_coFileOperatorTitle="Операции над файловой системой"
 Dirviewcolproperties_SDirViewAttrCol="Атр."
 Dirviewcolproperties_SDirViewChangedCol="Изменено"
 Dirviewcolproperties_SDirViewExtCol="Расширение"
@@ -2997,7 +3041,6 @@ Dragdrop_MIAbortStr="&Прервать"
 Dragdrop_MICopyStr="&Копировать сюда"
 Dragdrop_MILinkStr="Создать здесь &ярлык(и)"
 Dragdrop_MIMoveStr="&Перенести сюда"
-Fileoperator_SFileOperation="Операции над файлом"
 Iedriveinfo_ErrorInvalidDrive="Неверная буква диска '%s'."
 System_Sysconst_SInvalidDate="Неправильная дата '%s'"
 System_Sysconst_SInvalidDateTime="Неверные дата/время '%s'"
@@ -3088,7 +3131,7 @@ ButtonBrowse="&Обзор..."
 ButtonWizardBrowse="&Обзор..."
 ButtonNewFolder="&Создать папку"
 SelectLanguageTitle="Выберите язык установки"
-SelectLanguageLabel="Выберите язык, который будет использован в  процессе установки."
+SelectLanguageLabel="Выберите язык, который будет использован в процессе установки."
 ClickNext="Нажмите «Далее», чтобы продолжить, или «Отмена», чтобы выйти из программы установки."
 BeveledLabel=""
 BrowseDialogTitle="Обзор папок"
@@ -3235,8 +3278,6 @@ ExistingFileReadOnly2="Невозможно заменить существую
 ExistingFileReadOnlyRetry="&Удалить атрибут «только для чтения» и повторить попытку"
 ExistingFileReadOnlyKeepExisting="&Оставить файл на месте"
 ErrorReadingExistingDest="Произошла ошибка при попытке чтения существующего файла:"
-FileExists="Файл уже существует.\n\nПерезаписать его?"
-ExistingFileNewer="Существующий файл более новый, чем устанавливаемый. Рекомендуется сохранить существующий файл.\n\nВы хотите сохранить существующий файл?"
 ErrorChangingAttr="Произошла ошибка при попытке изменения атрибутов существующего файла:"
 ErrorCreatingTemp="Произошла ошибка при попытке создания файла в папке назначения:"
 ErrorReadingSource="Произошла ошибка при попытке чтения исходного файла:"
@@ -3392,4 +3433,17 @@ ArchiveDownload.ExtractCheckbox.Caption="Извлечь после скачив
 ArchiveDownload.Use7zipCheckbox.Caption="Использовать &7-zip для извлечения"
 ArchiveDownload.Path7zipFile.Caption="Путь до 7-zip (7z.exe/7za.exe):"
 ArchiveDownload.LoggingGroup.Caption="Протоколирование"
+SynchronizeAnotherServer.Name="&Синхронизировать с другим удаленным сервером..."
+SynchronizeAnotherServer.Description="Синхронизирует директорию на другом сервере (или другую директорию на этом сервере) с директорией на этом сервере"
+SynchronizeAnotherServer.SynchronizeDirectoryFromThisServerGroup.Caption="Синхронизировать директорию с этого сервера:"
+SynchronizeAnotherServer.RemotePath1Textbox.Caption="&Директория:"
+SynchronizeAnotherServer.ToAnotherServerGroup.Caption="... на &другой сервер:"
+SynchronizeAnotherServer.SessionUrl2Textbox.Caption="&Сеанс:"
+SynchronizeAnotherServer.PasswordPromptCheckbox.Caption="&Запросить пароль сеанса"
+SynchronizeAnotherServer.RemotePath2Textbox.Caption="Д&иректория:"
+SynchronizeAnotherServer.OptionsGroup.Caption="Настройки"
+SynchronizeAnotherServer.DeleteCheckbox.Caption="&Удалять файлы"
+SynchronizeAnotherServer.PreviewCheckbox.Caption="&Просмотр изменений"
+SynchronizeAnotherServer.ContinueOnErrorCheckbox.Caption="Продолжить при &ошибке"
+SynchronizeAnotherServer.LoggingGroup.Caption="Протоколирование"
 

File diff suppressed because it is too large
+ 122 - 99
translations/SK.ini


+ 69 - 15
translations/TR.ini

@@ -137,6 +137,7 @@ HelpButton.Caption="Ya&rdım"
 
 [CustomScpExplorer.dfm]
 QueueSplitter.Hint="Kuyruk listesini yeniden boyutlandırmak için sürükleyin, gizlemek için çift tıklayın."
+QueuePanel.QueueFileListSplitter.Hint="Kuyruk listesini yeniden boyutlandırmak için sürükleyin, gizlemek için çift tıklayın."
 QueuePanel.QueueView3.item0.Caption="İşlem"
 QueuePanel.QueueView3.item1.Caption="Kaynak"
 QueuePanel.QueueView3.item2.Caption="Hedef"
@@ -283,6 +284,7 @@ DirectionGroup.SynchronizeLocalButton.Caption="&Yerel"
 CompareCriterionsGroup.Caption="Karşılaştırma ölçütü"
 CompareCriterionsGroup.SynchronizeByTimeCheck.Caption="&Değişiklik zamanı"
 CompareCriterionsGroup.SynchronizeBySizeCheck.Caption="Dosya &boyutu"
+CompareCriterionsGroup.SynchronizeCaseSensitiveCheck.Caption="Büyük &küçük harfe duyarlı"
 SaveSettingsCheck.Caption="Gelecek &sefer aynı ayarlar kullanılsın"
 CopyParamGroup.Caption="Aktarım ayarları"
 HelpButton.Caption="Ya&rdım"
@@ -291,7 +293,7 @@ ModeGroup.SynchronizeFilesButton.Caption="Dos&yalar eşitlensin"
 ModeGroup.MirrorFilesButton.Caption="Dosyalar &yansıtılsın"
 ModeGroup.SynchronizeTimestampsButton.Caption="&Zaman damgaları eşitlensin"
 OkMenu.Start1.Caption="&Başlat"
-OkMenu.StartInNewWindow1.Caption="&Yeni Pencerede Başlat"
+OkMenu.StartInNewWindowItem.Caption="&Yeni Pencerede Başlat"
 
 [GenerateUrl.dfm]
 OptionsPageControl.UrlSheet.Caption="İnternet Adresi"
@@ -791,6 +793,8 @@ ExplorerActions.QueueHideAction.Caption="&Gizle"
 ExplorerActions.QueueHideAction.Hint="Kuyruk listesini gizler"
 ExplorerActions.QueueToolbarAction.Caption="&Araç Çubuğu"
 ExplorerActions.QueueToolbarAction.Hint="Kuyruk listesi araç çubuğunu görüntüler ya da gizler (kuyruk listesi panosu)"
+ExplorerActions.QueueFileListAction.Caption="&Dosya Listesi"
+ExplorerActions.QueueFileListAction.Hint="Kuyruktaki dosya listesinin tamamını görüntüler ya da gizler"
 ExplorerActions.QueuePreferencesAction.Caption="Ö&zelleştir..."
 ExplorerActions.QueuePreferencesAction.Hint="Kuyruk listesini özelleştirir"
 ExplorerActions.PasteAction2.Caption="Ya&pıştır"
@@ -961,6 +965,10 @@ CommanderBarPopup.RemotePanel2.Caption="&Uzak Pano"
 CommanderBarPopup.RemotePanel2.Hint="Uzak pano görünümünü değiştirir"
 CommanderBarPopup.Options1.Caption="&Kuyruk"
 CommanderBarPopup.Options1.Hint="Kuyruk listesi ayarlarını görüntüler"
+RemotePanelPopup.TBXSubmenuItem8.Caption="&Git"
+RemotePanelPopup.TBXSubmenuItem8.Hint="Klasöre gider"
+LocalPanelPopup.TBXSubmenuItem10.Caption="&Git"
+LocalPanelPopup.TBXSubmenuItem10.Hint="Klasöre gider"
 LocalDirViewColumnPopup.LocalFormatSizeBytesPopupItem.Caption="D&osya Boyutu Görünümü"
 LocalDirViewColumnPopup.LocalFormatSizeBytesPopupItem.Hint="Dosya boyutlarının görüntülenme biçimini ayarlar"
 LocalDirViewColumnPopup.Showcolumns3.Caption="Görüntülenecek &Sütunlar"
@@ -1261,9 +1269,10 @@ MainPanel.PageControl.IntegrationAppSheet.ExternalAppsGroup.PuttyPathBrowseButto
 MainPanel.PageControl.IntegrationAppSheet.ExternalAppsGroup.TelnetForFtpInPuttyCheck.Caption="FTP oturumları için &Telnet oturumları PuTTY ile açılsın"
 MainPanel.PageControl.IntegrationAppSheet.ExternalAppsGroup.PuttyPathHintText.Caption="ko&dlar"
 MainPanel.PageControl.NetworkSheet.Caption="Ağ"
-MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox.Caption="Dış IP Adresi"
-MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox.RetrieveExternalIpAddressButton.Caption="&Dış IP adresi işletim sisteminden alınsın"
-MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox.CustomExternalIpAddressButton.Caption="Özel dış IP adresi &kullanılsın:"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.Caption="Gelen FTP bağlantıları (etkin kip)"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.RetrieveExternalIpAddressButton.Caption="&Dış IP adresi işletim sisteminden alınsın"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.CustomExternalIpAddressButton.Caption="Özel dış IP adresi &kullanılsın:"
+MainPanel.PageControl.NetworkSheet.ExternalIpAddressGroupBox2.LocalPortNumberCheck.Caption="Dinlenecek kapı &numaraları şunlarla sınırlansın:"
 MainPanel.PageControl.NetworkSheet.ConnectionsGroup.Caption="Bağlantılar"
 MainPanel.PageControl.NetworkSheet.ConnectionsGroup.TryFtpWhenSshFailsCheck.Caption="SFTP bağlantısı &reddedildiğinde, FTP kapısı yoklansın"
 MainPanel.PageControl.PanelRemoteSheet.Caption="Uzak"
@@ -1594,6 +1603,10 @@ MainPanel.PageControl.S3Sheet.S3Group.Label27.Caption="&Varsayılan bölge:"
 MainPanel.PageControl.S3Sheet.S3Group.S3UrlStyleLabel.Caption="%Adres biçemi:"
 MainPanel.PageControl.S3Sheet.S3Group.S3UrlStyleCombo.Items.Strings.0="Sanal Sunucu"
 MainPanel.PageControl.S3Sheet.S3Group.S3UrlStyleCombo.Items.Strings.1="Yol"
+MainPanel.PageControl.S3Sheet.S3AuthenticationGroup.Caption="Kimlik doğrulama"
+MainPanel.PageControl.S3Sheet.S3AuthenticationGroup.Label5.Caption="&Güvenlik kodu"
+MainPanel.PageControl.WebDavSheet.WebdavGroup.Caption="İletişim kuralı ayarları"
+MainPanel.PageControl.WebDavSheet.WebdavGroup.WebDavLiberalEscapingCheck.Caption="&Dosya adlarındaki kodlanmamış özel karakterler hoş görülsün"
 MainPanel.PageControl.ConnSheet.Caption="Bağlantı"
 MainPanel.PageControl.ConnSheet.FtpPingGroup.Caption="Canlı kal paketleri"
 MainPanel.PageControl.ConnSheet.FtpPingGroup.FtpPingIntervalLabel.Caption="&Canlı kal paketleri arasındaki süre(sn):"
@@ -1675,6 +1688,7 @@ MainPanel.PageControl.KexSheet.KexOptionsGroup.Caption="Anahtar değiş tokuş a
 MainPanel.PageControl.KexSheet.KexOptionsGroup.Label28.Caption="Al&goritma seçim ilkesi"
 MainPanel.PageControl.KexSheet.KexOptionsGroup.KexUpButton.Caption="&Yukarı"
 MainPanel.PageControl.KexSheet.KexOptionsGroup.KexDownButton.Caption="&Aşağı"
+MainPanel.PageControl.KexSheet.KexOptionsGroup.AuthGSSAPIKEXCheck.Caption="&GSSAPI anahtar değiş tokuşu denensin"
 MainPanel.PageControl.KexSheet.KexReexchangeGroup.Caption="Anahtar değiş tokuş denetimi ayarları"
 MainPanel.PageControl.KexSheet.KexReexchangeGroup.Label31.Caption="İki anahtar arası en uzun süre (dakika, 0 sınırsız)"
 MainPanel.PageControl.KexSheet.KexReexchangeGroup.Label32.Caption="İki anahtar arası en çok veri (0 sınırsız)"
@@ -1747,7 +1761,7 @@ HelpButton.Caption="Ya&rdım"
 MinimizeMenu.Minimize1.Caption="&Küçült"
 MinimizeMenu.MinimizetoTray1.Caption="Sistem &Tepsisine Küçült"
 StartMenu.Start1.Caption="&Başlat"
-StartMenu.StartInNewWindow1.Caption="&Yeni Pencerede Başlat"
+StartMenu.StartInNewWindowItem.Caption="&Yeni Pencerede Başlat"
 
 [SynchronizeChecklist.dfm]
 Panel.OkButton.Caption="Tamam"
@@ -1852,7 +1866,7 @@ LIST_DIR_ERROR="'%s' klasörü listelenirken sorun çıktı"
 LIST_LINE_ERROR="Beklenmeyen klasör listesi satırı '%s'."
 RIGHTS_ERROR="Geçersiz izin ayarları '%s'"
 CLEANUP_CONFIG_ERROR="Genel ayarlar temizlenirken sorun çıktı."
-CLEANUP_HOSTKEYS_ERROR="Kaydedilmiş bağlantılar temizlenirken sorun çıktı."
+CLEANUP_CACHES_ERROR="Ön bellekler temizlenirken sorun çıktı."
 CLEANUP_SEEDFILE_ERROR="Rastgele tohum dosyası temizlenirken sorun çıktı."
 CLEANUP_SESSIONS_ERROR="Önbelleğe alınmış sunucu anahtarları temizlenirken sorun çıktı."
 DETECT_RETURNVAR_ERROR="Son komutun yanıt kodunu içeren değişken algılanırken sorun çıktı."
@@ -2076,6 +2090,9 @@ MISSING_TARGET_BUCKET="Hedef buketi belirtin"
 UNKNOWN_FILE_ENCRYPTION="Dosya bilinen bir şifreleme yöntemi ile şifrelenmemiş."
 INVALID_ENCRYPT_KEY="**Şifreleme anahtarı geçersiz.**\n\n%s şifrelemesi için anahtar %d bayt boyutunda olmalıdır. Değer onaltılık biçimde yazılmalıdır (%d karakter gibi)."
 UNREQUESTED_FILE="Sunucu isteği yapılmamış bir dosya gönderdi."
+STORE_NEW_HOSTKEY_ERROR="Yeni sunucu anahtarı kaydedilemedi."
+STREAM_IN_SCRIPT_ERROR="Akış verisi yüklenirken, yalnız bir kaynak belirtilebilir ve hedef bir dosya adı olmalıdır."
+STREAM_READ_ERROR="Giriş akışı okunurken sorun çıktı."
 CONFIRM_PROLONG_TIMEOUT3="Sunucu ile %d saniyedir iletişim kurulamadı.\n\n%0:d saniye daha beklensin mi?"
 PROMPT_KEY_PASSPHRASE="'%s' anahtarı için şifre cümlesi:"
 FILE_OVERWRITE="'%s' dosyası zaten var. Üzerine yazılsın mı?"
@@ -2115,7 +2132,7 @@ RENAME_TITLE="Farklı ad ile aktarılsın"
 RENAME_PROMPT2="Ye&ni ad:"
 VERIFY_CERT_PROMPT3="**Sunucu sertifikası bilinmiyor. Bu sunucunun olmasını beklediğiniz bilgisayar olduğunun bir garantisi yok.**\n\nSunucu sertifikasının ayrıntıları şu şekilde:\n\n%s\n\nBu sertifikaya güveniyorsanız Evet düğmesine tıklayın. Sertifikayı kaydetmeden bağlanmak için Hayır düğmesine tıklayın. Bağlantıyı iptal etmek için İptal düğmesine tıklayın.\n\nBağlanmaya devam etmek ve sertifikayı kaydetmek istiyor musunuz?"
 VERIFY_CERT_CONTACT="- Organizasyon: %s\n|- Konum: %s\n|- Diğer: %s\n"
-CERT_TEXT="Yayıncı:\n%s\nKonu:\n%s\nGeçerlilik: %s - %s\n\nParmakizi (SHA1): %s\n\nÖzet: %s"
+CERT_TEXT2="Yayıncı:\n%s\nKonu:\n%s\nGeçerlilik tarihi: %s - %s\n\nParmak izi:\n- SHA-256: %s\n- SHA-1: %s\n\nÖzet: %s"
 CERTIFICATE_PASSPHRASE_PROMPT="İstemci sertifikasının &parolası:"
 CERTIFICATE_PASSPHRASE_TITLE="İstemci sertifikasının parolası"
 KEY_TYPE_CONVERT3="**Bu %s özel anahtarı PuTTY biçimine dönüştürülsün mü?**\n\n%s"
@@ -2368,7 +2385,7 @@ REMOVE_PATH_ERROR="Arama yolundan (%%PATH%%) '%s' yolu silinirken sorun çıktı
 ALREADY_EDITED_EXTERNALLY_OR_UPLOADED="%s dosyası zaten dış düzenleyicide (uygulama) açık ya da yükleniyor."
 COPY_PARAM_NO_RULE="Herhangi bir otomatik seçim kuralı maskesi belirtmediniz."
 COPY_PARAM_DUPLICATE="'%s' açıklamalı bir hazır aktarım ayarı zaten var."
-CUSTOM_COMMAND_IMPOSSIBLE="'%s' özel komutu şu anda yürütülemiyor. Lütfen önce komutun uygulanacağı dosyaları seçin."
+CUSTOM_COMMAND_IMPOSSIBLE2="'%s' özel koöutu şu anda yürütülemez.** Komut için dosyalar seçmeniz ya da önce bir oturum açmanız gerekiyor olabilir."
 CUSTOM_COMMAND_AD_HOC_NAME="Ad Hoc"
 EDIT_SESSION_CLOSED_RELOAD="'%s' dosyası yeniden yüklenemedi, '%s' oturumu zaten kapatılmış."
 DECRYPT_PASSWORD_ERROR="Parola şifresi çözülemedi."
@@ -2411,6 +2428,7 @@ EXTENSION_INSTALLED_ALREADY="Bu eklenti zaten kurulmuş."
 EXTENSION_LOAD_ERROR="\"%s\" üzerinden eklenti yüklenirken bir sorun çıktı."
 NO_SITE_FOR_COMMAND="**Henüz bir oturum açılmamış**\nSeçilmiş komutta siteye özel seçenekler var ancak açılmış bir oturum yok."
 DD_TARGET_UNKNOWN="**WinSCP sürüklenen dosyaların bırakıldığı bir klasör algılayamadı.**Varsayılan sürükleyip bırakma kipinde WinSCP dosyaların yalnız yerel sürücü ve bağlanmış ağ sürücülerine bırakılmasına izin verir.\n\nDosyaların diğer hedeflere bırakılabilmesini istiyorsanız bunu ayarlar bölümünden sağlayabilirsiniz. Ayrıntılı bilgi almak için Yardım düğmesine tıklayabilirsiniz."
+JUMPLIST_ERROR="Bağlantı listesi güncellenirken sorun çıktı."
 CONFIRM_OVERWRITE_SESSION="'%s' adında bir bağlantı zaten var. Üzerine yazılsın mı?"
 CREATE_LOCAL_DIRECTORY="'%s' klasörü bulunamadı. Oluşturulsun mu?"
 CANCEL_OPERATION_FATAL2="**Dosya aktarımı iptal edilsin mi?**\n \nAktarım sırasında işlem iptal edilemez.\nAktarımı iptal edip bağlantıyı kapatmak için 'Evet' düğmesine tıklayın.\nGeçerli aktarımı bitirmek için 'Hayır' düğmesine tıklayın.\nİşlemi sürdürmek için 'İptal' düğmesine tıklayın."
@@ -2465,7 +2483,7 @@ REPORT_BUTTON="&Bildir"
 MASTER_PASSWORD_OTHER_INSTANCE="WinSCP uygulamasının başka bir kopyası çalışıyor.\n\nBu durumda ana parolanın değiştirilmesi ya da kaldırılması, kayıtlı parolaların silinmesine neden olabilir.\n\nLütfen ilerlemeden önce diğer WinSCP kopyalarını kapatın."
 EDIT_SESSION_REATTACH="**Düzenlenen '%s' dosyasını '%s' oturumuna eklemek ister misiniz?**\n\n'%s' dosyasının indirildiği özgün oturum kapatılmış."
 CONFIRM_UNREGISTER_URL="İnternet adreslerinin WinSCP uygulaması ile açılmasından vazgeçmek ister misiniz?"
-INTERNAL_EDITOR_LARGE_FILE="**Büyük bir dosyayı açmaya çalışıyorsunuz?**\n\nİç düzenleyici ile açmaya çalıştığınız dosya çok büyük (%s). WinSCP iç düzenleyicisi büyük dosyaları açmak için yapılmamıştır. Büyük dosyalar ile çalışmak için geliştirilmiş bir dış düzenleyici kullanmayı düşünün.\n\nDosyayı iç düzenleyici ile açmayı deneyebilirsiniz ancak bellek yetersiz kalabilir."
+INTERNAL_EDITOR_LARGE_FILE2="**Büyük bir dosyayı açmaya çalışıyorsunuz?**\n\nİç düzenleyici ile açmaya çalıştığınız dosya çok büyük (%s). WinSCP içindeki düzenleyici büyük dosyaları düzenlemek için tasarlanmamıştır. Büyük dosyaları düzenlemek için bir dış düzenleyici kullanmayı deneyin.\n\nDosyayı gene de açmayı deneyebilirsiniz ancak WinSCP çalışamayabilir."
 CLOSE_BUTTON="Kapat"
 EXTENSION_UNTRUSTED="Eklentinin kaynağı güvenilir değil. Gene de kurmak ister misiniz?"
 EXTENSION_NOT_LATEST="**Eklentinin son uyumlu ve güvenilir sürümünü kullanmak.**\n\nEklentinin son sürümü henüz değerlendirilmemiş ya da bu WinSCP sürümü ile uyumsuz olabilir."
@@ -2608,6 +2626,11 @@ AUTO_WORKSPACE_ENABLE="Çalışma alanının otomatik kaydedilmesi için 'No' ü
 USAGE_BROWSE="Belirtilen dosyayı dosya panolarında seçer."
 PUTTY_SETTINGS_INSTRUCTIONS="**Uçbirim ayarlarını PuTTY üzerine düzenleyin.**\n\nPuTTY başlatılacak. %s geçici sitesinin uçbirim ayarlarını düzenleyin. WinSCP bu ayarları PuTTY kapatıldıktan sonra da korur."
 PUTTY_SETTINGS_SITE_NAME="%s için uçbirim ayarları"
+USAGE_USERNAME="Bir kullanıcı adı belirtmenin alternatif yolu"
+USAGE_PASSWORD="Bir parola belirtmenin alternatif yolu"
+USAGE_INTERACTIVEINPUT="Tüm etkileşimler otomatik olarak iptal edildi"
+USAGE_STDOUT="Stdout üzerinden dosya akışı yapılabilsin (ve durum çıktısı stderr üzerine yönlendirilsin"
+USAGE_STDIN="Stdin üzerinden dosya akışı yapılabilsin"
 COPY_FILE="%s, '%s' dosyasını %s üzerine"
 COPY_FILES="%s, %d dosyayı %s üzerine:"
 COPY_TOLOCAL="yerel klasöre"
@@ -2667,7 +2690,7 @@ PROPERTIES_UNKNOWN_SIZE="Bilinmiyor"
 PROGRESS_CALCULATE_SIZE="Klasör boyutu hesaplanıyor"
 CLEANUP_CONFIG="Genel ayarlar"
 CLEANUP_SESSIONS="Bağlantılar"
-CLEANUP_HOSTKEYS="Ön bellekteki sunucu anahtarları"
+CLEANUP_CACHES="Ön bellekler"
 CLEANUP_INIFILE="Ayar INI dosyası"
 CLEANUP_SEEDFILE="Rastgele tohum dosyası"
 SELECT_LOCAL_DIRECTORY="Yerel klasörü seçin."
@@ -2952,24 +2975,46 @@ SCREENSHOT_EDITOR="İç Metin Düzenleyici"
 SCREENSHOT_TRANSFER="Aktarım Ayarları Penceresi"
 SCREENSHOT_PROPERTIES="Dosya Özelliklerini Değiştirmek"
 LICENSE="WinSCP ücretsizdir. Kullanabilir, dağıtabilir, GNU Genel Kamu Lisansı 3 ve üzerindeki sürümlerin koşulları altında uygulama kodlarını değiştirebilirsiniz."
+; <override>
 NEW_5_10_MULTI_CONNECTIONS="Arka planda aktarım işlemlerinde birden çok bağlantı kullanılabilir"
+; <override>
 NEW_5_10_DPI_AWARE="Farklı DPI/çözünürlükte ekranlar için destek"
+; <override>
 NEW_5_10_FIND="Arama penceresi ana pencereyi engellemesin ve bulunan dosyalar arama penceresinden indirilebilsin ya da silinebilsin"
+; <override>
 NEW_5_10_ONEDRIVE="Microsoft OneDrive Desteği"
+; <override>
 NEW_5_10_AUTOMATION="Özel komutlar, eklentiler ve .NET mekanizması ile ilgili çeşitli geliştirmeler"
+; <override>
 NEW_5_12_S3="Amazon S3 iletişim kuralı desteği"
+; <override>
 NEW_5_12_SHA256_HOSTKEY="SHA-256 sunucu anahtarı parmak izi algoritması desteği"
+; <override>
 NEW_5_12_AUTOMATION=".NET mekanizmasında, NuGet paketinde PackageReference paket yönetimi de dahil çeşitli iyileştirmeler"
+; <override>
 NEW_5_14_ENCRYPTION="Dosyalar SFTP sunucusuna kaydedilirken isteğe bağlı olarak şifrelenebilir"
+; <override>
 NEW_5_14_UNC="Yerel UNC yollarına gözatılabilir"
+; <override>
 NEW_5_14_CLIPBOARD="Dosyalar panoya kopyalanabilir"
+; <override>
 NEW_5_14_SYNCHRONIZATION="Klasör eşitlemesi oldukça geliştirildi"
+; <override>
 NEW_5_14_FILES_COLOR="Dosya maskesine göre dosya panolarında isteğe bağlı dosya renklendirmesi"
+; <override>
 NEW_5_16_TABS="Oturum ve çalışma alanı yönetiminde iyileştirmeler"
+; <override>
 NEW_5_16_HW_AES="Donanımsal AES hızlandırması"
+; <override>
 NEW_5_16_ARCHIVE_DOWNLOAD="Uzak dosyaları arşivleyip indirmek için 'Arşivle ve İndir' eklentisi"
+; <override>
 NEW_5_16_SYNC_CHECKLIST="Eşitleme kontrol listesi penceresinde iyileştirmeler"
+; <override>
 NEW_5_16_FIND_SORT="Arama sonuçlarının sıralanabilmesi"
+NEW_5_18_QUEUE_FILE_LIST="Bir aktarım için kuyrukta bekleyen tüm dosyaların listesi görüntülenebilir"
+NEW_5_18_STREAMING="Betik ve .NET mekanizması içinden bir akış desteği"
+NEW_5_18_REMOTE_SYNC="İki uzak sunucuyu eşitlemek için bir eklenti"
+NEW_5_18_TLS="TLS 1.3 etkinleştirildi ve SHA-256 TLS/SSL parmak izleri desteği eklendi"
 
 [WinSCP_DRC.rc]
 Baseutils_SNoValidPath="Geçerli bir yol bulunamadı."
@@ -2986,7 +3031,6 @@ Customdirview_STextDirectories="%u Klasör"
 Customdirview_STextFileExt="%s Dosya"
 Customdirview_STextFiles="%u Dosya"
 Customunixdirview_SUnixDefaultRootName="/ <kök>"
-Dirview_coFileOperatorTitle="Dosya Sistemi İşlemi"
 Dirviewcolproperties_SDirViewAttrCol="Özntlk"
 Dirviewcolproperties_SDirViewChangedCol="Değişiklik"
 Dirviewcolproperties_SDirViewExtCol="Uzantı"
@@ -2997,7 +3041,6 @@ Dragdrop_MIAbortStr="&Vazgeç"
 Dragdrop_MICopyStr="&Buraya Kopyala"
 Dragdrop_MILinkStr="Burada &Kısayol Oluştur"
 Dragdrop_MIMoveStr="Buraya &Taşı"
-Fileoperator_SFileOperation="Dosya İşlemi"
 Iedriveinfo_ErrorInvalidDrive="%s geçerli bir sürücü harfi değil."
 System_Sysconst_SInvalidDate="'%s' geçerli bir tarih değil"
 System_Sysconst_SInvalidDateTime="'%s' geçerli bir tarih ya da saat değil"
@@ -3235,10 +3278,8 @@ ExistingFileReadOnly2="Var olan dosya salt okunabilir olarak işaretlenmiş oldu
 ExistingFileReadOnlyRetry="&Salt okunur işareti kaldırılıp yeniden denensin"
 ExistingFileReadOnlyKeepExisting="&Var olan dosya korunsun"
 ErrorReadingExistingDest="Var olan dosya okunmaya çalışılırken bir sorun çıktı."
-FileExists="Dosya zaten var.\n\nKurulum yardımcısı bu dosyanın üzerine yazsın mı?"
-ExistingFileNewer="Var olan dosya, kurulum yardımcısı tarafından yazılmaya çalışılandan daha yeni. Var olan dosyayı korumanız önerilir \n\nVar olan dosya korunsun mu?"
 ErrorChangingAttr="Var olan dosyanın öznitelikleri değiştirilirken bir sorun çıktı:"
-ErrorCreatingTemp="Hedef klasörde bir dosya oluşturulurken sorun çıktı:"
+ErrorCreatingTemp="Hedef klasörde bir dosya oluşturulurken bir sorun çıktı:"
 ErrorReadingSource="Kaynak dosya okunurken bir sorun çıktı:"
 ErrorCopying="Dosya kopyalanırken bir sorun çıktı:"
 ErrorReplacingExistingFile="Var olan dosya değiştirilirken bir sorun çıktı:"
@@ -3392,4 +3433,17 @@ ArchiveDownload.ExtractCheckbox.Caption="İndirildikten &sonra ayıklansın"
 ArchiveDownload.Use7zipCheckbox.Caption="Ayıklama için &7-zip kullanılsın"
 ArchiveDownload.Path7zipFile.Caption="7-zip &yolu (7z.exe/7za.exe):"
 ArchiveDownload.LoggingGroup.Caption="Günlükleme"
+SynchronizeAnotherServer.Name="&Başka Bir Uzak Sunucu ile Eşitle..."
+SynchronizeAnotherServer.Description="Bu sunucu üzerindeki bir klasörü başka bir sunucu üzerindeki bir klasör (ya da bu sunucuda başka bir klasör) ile eşitler"
+SynchronizeAnotherServer.SynchronizeDirectoryFromThisServerGroup.Caption="Bu &sunucudaki bir klasörden eşitle"
+SynchronizeAnotherServer.RemotePath1Textbox.Caption="&Klasör"
+SynchronizeAnotherServer.ToAnotherServerGroup.Caption="... &başka bir sunucuya"
+SynchronizeAnotherServer.SessionUrl2Textbox.Caption="&Oturum"
+SynchronizeAnotherServer.PasswordPromptCheckbox.Caption="Oturum &parolası sorulsun"
+SynchronizeAnotherServer.RemotePath2Textbox.Caption="K&lasör"
+SynchronizeAnotherServer.OptionsGroup.Caption="Ayarlar"
+SynchronizeAnotherServer.DeleteCheckbox.Caption="&Dosya silme"
+SynchronizeAnotherServer.PreviewCheckbox.Caption="&Değişiklikleri önizle"
+SynchronizeAnotherServer.ContinueOnErrorCheckbox.Caption="Sorun çıkması durumunda d&evam edilsin"
+SynchronizeAnotherServer.LoggingGroup.Caption="Günlükleme"
 

+ 12 - 12
translations/version.ini

@@ -1,11 +1,11 @@
 [Version]
-CS=248
-DE=140
+CS=250
+DE=141
 ES=80
-FI=97
+FI=98
 FR=105
 HE=22
-HU=95
+HU=96
 IN=39
 IT=102
 JP=66
@@ -14,11 +14,11 @@ MS=18
 NL=78
 NO=47
 PL=100
-RU=90
+RU=92
 SV=76
 XXE=7
 EL=17
-PTG=57
+PTG=59
 CHS=72
 TH=5
 RO=59
@@ -29,10 +29,10 @@ KO=48
 AR=43
 DA=20
 ET=23
-SK=58
+SK=60
 CH=130
 SQ=3
-TR=47
+TR=49
 SL=28
 LV=16
 UK=36
@@ -58,10 +58,10 @@ MYA=6
 CS=2003,2020,Martin Přikryl
 DE=2003,2020,Marko Meister,Mick Weiss
 ES=2003,2019,David Martin,Fredy Rojas,Pablo Grande,Juan Razeto
-FI=2003,2019,Sami Kuusisto,Tero Pelander,Jarmo Järvenpää
+FI=2003,2020,Sami Kuusisto,Tero Pelander,Jarmo Järvenpää
 FR=2003,2020,Eric Winter,Julien Terral,Raphael Raimbault
 HE=2003,2019,Refael Ackermann
-HU=2003,2019,Dániel Kiss-Kálmán,Csaba Tóth,Kácsor István,Csizmadia Gábor
+HU=2003,2020,Dániel Kiss-Kálmán,Csaba Tóth,Kácsor István,Csizmadia Gábor
 IN=2003,2019,Radhitya Wawan Yunarko,Iwan Setya Putra,Budi Rahardjo
 IT=2003,2019,Claudio Galdiolo,bovirus,Vincenzo Reale,Toni Giorgino
 JP=2003,2019,Kobachi,Nobushige Sanada,Hiroki Kobayashi,Shinichi Ozaki
@@ -74,7 +74,7 @@ RU=2003,2020,Vitaliy Zhukov,Alexey Vesnin,Maksim Sidorov,Dmitriy Yermolayev,Stas
 SV=2003,2019,Andreas Pettersson,René Fichter
 XXE=2004,2019,Trio
 EL=2004,2019,Chrysostomos Rousopoulos,Dimitris Botsis,Michail K. Karos
-PTG=2003,2019,Hugo Simões,Sérgio Clemente Alves,enVide neFelibata,Joaquim Fonseca,Francisco Azenha,Marcelo Rodrigues
+PTG=2003,2020,Hugo Simões,Sérgio Clemente Alves,enVide neFelibata,Joaquim Fonseca,Francisco Azenha,Marcelo Rodrigues
 TH=2004,2019,Thanapon Namjittrong
 RO=2004,2019,Catalin Podoleanu,Radu Basca
 PT=2003,2020,Eduardo Mozart,Claudionor Buzzo Raymundo,Jefferson Sousa,Marcelo Zanatta,Marcelo Pessoa,Daniel Costa,Rafael Camacho,André Arruda dos Santos Silva,Guilherme Camacho
@@ -85,7 +85,7 @@ AR=2005,2019,Ramzi alsllami,Suhaila
 DA=2004,2020,Kristoff Carsten,Torben Stallknecht,Thomas Pryds Lauritsen,Thomas Poulsen
 CHS=2005,2019,Digital Sonic
 ET=2005,2019,Kristjan Randma
-SK=2005,2019,Marián Hikaník,Patrik Lenart
+SK=2005,2020,Marián Hikaník,Patrik Lenart
 CH=2005,2019,Walter Cheuk,Mark Lin,Hong-Yi Chen
 SQ=2005,2019,
 TR=2004,2020,Kaya Zeren,Fatih Savas,Kerem Emik,Süleyman Şentürk

Some files were not shown because too many files changed in this diff