Skip to content

Commit

Permalink
Version 11.3 (2020-11-01)
Browse files Browse the repository at this point in the history
  • Loading branch information
hkneptune committed Nov 4, 2020
1 parent 091aca0 commit 2ccd20e
Show file tree
Hide file tree
Showing 59 changed files with 1,448 additions and 1,414 deletions.
151 changes: 4 additions & 147 deletions Bugs.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ the ones mentioned below. The remaining issues that are yet to be fixed are list


----------------
| libcurl 7.72 |
| libcurl 7.73 |
----------------
__________________________________________________________________________________________________________
/lib/ftp.c
Expand Down Expand Up @@ -46,9 +46,9 @@ https://github.com/curl/curl/issues/4342
__________________________________________________________________________________________________________


-----------------
| libssh2 1.9.0 |
-----------------
--------------------------
| libssh2 1.9.0-20201014 |
--------------------------
__________________________________________________________________________________________________________
src/session.c
memory leak: https://github.com/libssh2/libssh2/issues/28
Expand All @@ -62,149 +62,6 @@ move the following constants from src/sftp.h to include/libssh2_sftp.h:
#define MAX_SFTP_READ_SIZE 30000

__________________________________________________________________________________________________________
src/transport.c
https://github.com/libssh2/libssh2/pull/443

- if (encrypted && compressed)
+ if (encrypted && compressed && session->local.comp_abstract)

__________________________________________________________________________________________________________
src/openssl.cpp
properly support ssh-ed25519: https://github.com/libssh2/libssh2/pull/416

+static int
+gen_publickey_from_ed_evp(LIBSSH2_SESSION* session,
+ unsigned char** method,
+ size_t* method_len,
+ unsigned char** pubkeydata,
+ size_t* pubkeydata_len,
+ EVP_PKEY* pk)
+{
+ const char methodName[] = "ssh-ed25519";
+ unsigned char* methodBuf = NULL;
+ unsigned char* pubKeyBuf = NULL;
+ size_t pubKeyLen = 0;
+ size_t edKeyLen = 0;
+ unsigned char* bufPos = NULL;
+
+ _libssh2_debug(session,
+ LIBSSH2_TRACE_AUTH,
+ "Computing public key from ED private key envelop");
+
+ methodBuf = LIBSSH2_ALLOC(session, sizeof(methodName) - 1);
+ if (!methodBuf)
+ {
+ _libssh2_error(session, LIBSSH2_ERROR_ALLOC,
+ "Unable to allocate memory for private key data");
+ goto cleanup;
+ }
+
+ if (EVP_PKEY_get_raw_public_key(pk, NULL, &edKeyLen) != 1)
+ {
+ _libssh2_error(session, LIBSSH2_ERROR_PROTO,
+ "EVP_PKEY_get_raw_public_key failed");
+ goto cleanup;
+ }
+
+ pubKeyLen = 4 + sizeof(methodName) - 1 + 4 + edKeyLen;
+ bufPos = pubKeyBuf = LIBSSH2_ALLOC(session, pubKeyLen);
+ if (!pubKeyBuf)
+ {
+ _libssh2_error(session, LIBSSH2_ERROR_ALLOC,
+ "Unable to allocate memory for private key data");
+ goto cleanup;
+ }
+
+ _libssh2_store_str(&bufPos, methodName, sizeof(methodName) - 1);
+ _libssh2_store_u32(&bufPos, edKeyLen);
+
+ if (EVP_PKEY_get_raw_public_key(pk, bufPos, &edKeyLen) != 1)
+ {
+ _libssh2_error(session, LIBSSH2_ERROR_PROTO,
+ "EVP_PKEY_get_raw_public_key failed");
+ goto cleanup;
+ }
+
+ memcpy(methodBuf, methodName, sizeof(methodName) - 1);
+ *method = methodBuf;
+ *method_len = sizeof(methodName) - 1;
+ *pubkeydata = pubKeyBuf;
+ *pubkeydata_len = pubKeyLen;
+ return 0;
+
+cleanup:
+ if (methodBuf)
+ LIBSSH2_FREE(session, methodBuf);
+ if (pubKeyBuf)
+ LIBSSH2_FREE(session, pubKeyBuf);
+ return -1;
+}
+
static int
gen_publickey_from_ed25519_openssh_priv_data(LIBSSH2_SESSION* session,
struct string_buf* decrypted,
unsigned char** method,
size_t* method_len,
unsigned char** pubkeydata,




int
_libssh2_ed25519_new_private_frommemory(libssh2_ed25519_ctx** ed_ctx,
LIBSSH2_SESSION* session,
const char* filedata,
size_t filedata_len,
unsigned const char* passphrase)
{
+ libssh2_ed25519_ctx* ctx = NULL;
+
+ _libssh2_init_if_needed();
+
+ ctx = _libssh2_ed25519_new_ctx();
+ if (!ctx)
+ return _libssh2_error(session, LIBSSH2_ERROR_ALLOC,
+ "Unable to allocate memory for ed25519 key");
+
+ if (read_private_key_from_memory((void**)&ctx->private_key, (pem_read_bio_func)&PEM_read_bio_PrivateKey,
+ filedata, filedata_len, passphrase) == 0)
+ {
+ if (EVP_PKEY_id(ctx->private_key) != EVP_PKEY_ED25519)
+ {
+ _libssh2_ed25519_free(ctx);
+ return _libssh2_error(session, LIBSSH2_ERROR_PROTO,
+ "Private key is not an ed25519 key");
+ }
+
+ *ed_ctx = ctx;
+ return 0;
+ }
+ _libssh2_ed25519_free(ctx);

return read_openssh_private_key_from_memory((void**)ed_ctx, session,
"ssh-ed25519",
filedata, filedata_len,
passphrase);



#ifdef HAVE_OPAQUE_STRUCTS
pktype = EVP_PKEY_id(pk);
#else
pktype = pk->type;
#endif

switch (pktype)
{
+#if LIBSSH2_ED25519
+ case EVP_PKEY_ED25519 :
+ st = gen_publickey_from_ed_evp(session, method, method_len,
+ pubkeydata, pubkeydata_len, pk);
+ break;
+#endif /* LIBSSH2_ED25519 */
case EVP_PKEY_RSA :
st = gen_publickey_from_rsa_evp(session, method, method_len,
__________________________________________________________________________________________________________


-------------------
Expand Down
49 changes: 32 additions & 17 deletions Changelog.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,20 @@
FreeFileSync 11.2
-----------------
FreeFileSync 11.3 [2020-11-01]
------------------------------
Enhanced main grid color scheme
Mouse-highlight for file selection
Added file create/delete indicators
Show file list tooltip for missing items
Click folder name and scroll to group start
Log failure to create application default config folder
Added tooltips and fixed help link context menu
Fixed tooltip not updated when scrolling (macOS, Linux)
Move error dialogs to foreground during batch sync
Align context menu popup positions
Updated translation files


FreeFileSync 11.2 [2020-10-02]
------------------------------
Improved grid layout with file icons hidden
Improved rendering of inactive and disabled grid items
Remember last user-selected paths for file and folder pickers
Expand Down Expand Up @@ -1470,7 +1485,7 @@ Allow CTRL + C to copy selection to clipboard on overview panel
Consider current view filter for file selection on overview panel
Work around silent failure to set modification times on NTFS volumes (Linux)
Avoid main dialog flash when closing progress dialog (Linux)
Do not show middle grid tool tip when dragging outside visible area
Do not show middle grid tooltip when dragging outside visible area
Reduced file accesses when loading XML files
Simplified structure of GlobalSettings.xml
Allow to change default exclusion filter via GlobalSettings.xml: "DefaultExclusionFilter"
Expand All @@ -1494,7 +1509,7 @@ Implemented file icon support for sync preview (OS X)
RealTimeSync exit via menu working again
Restore main dialog even if "close progress dialog" is selected
Show full path when failing to create directory on not existing target drive
Middle grid tool tip shown correctly again (SUSE Linux/X11)
Middle grid tooltip shown correctly again (SUSE Linux/X11)
Prevent process hang when manually writing to directory history (Linux and OS X, wxWidgets 2.9.4)
Resolved crash after showing help dialog (OS X)
Properly handle non-ASCII characters for external commands (OS X)
Expand Down Expand Up @@ -1643,7 +1658,7 @@ Apply hidden attribute to lock file
Fixed potential "access denied" problem when updating the database file
Show errors when saving configuration files during exit (ignore for batch mode)
Mark begin of comparison phase in the log file
More detailed tool tip describing items that differ in attributes only
More detailed tooltip describing items that differ in attributes only
Added Scottish Gaelic translation


Expand Down Expand Up @@ -1707,7 +1722,7 @@ New context menu filter option: exclude by short name
Use clicked-on row rather than anchor when determining action for shift-selection
Refresh grid after pressing "CTRL + A"
Add base folder pairs to CSV export
Show full path in tool tip if multiple folder pairs are used
Show full path in tooltip if multiple folder pairs are used
Show child dialogs on same monitor as parent dialog on multiple monitor systems
Added statistics at beginning of batch log file
Fixed batch mode final speed statistic and reset graph after binary comparison
Expand Down Expand Up @@ -1735,7 +1750,7 @@ Reenabled global shortcut F8 to toggle data shown in middle grid
Unified error handling on failure to create log directory
Do not close batch creation dialog after save
Tree view: compress and filter root nodes the same way as regular folder nodes
Fixed wrong tool tip being shown if directory name changes
Fixed wrong tooltip being shown if directory name changes
Date range selector does not trim year field anymore
Show action "do nothing" on mouse-hover for conflicts in middle grid
Fixed "Windows Error Code 59: An unexpected network error occurred"
Expand All @@ -1754,7 +1769,7 @@ Even more pedantic user interface fine-tuning
Compiles and runs on openSuse 12.1
Fixed grid page-up/down keys scrolling twice (Linux, wxGTK 2.9.3)
Fixed unwanted grid scrolling when toggling middle column (Linux, wxGTK 2.9.3)
Fixed middle grid tool tip occasionally going blank (Linux)
Fixed middle grid tooltip occasionally going blank (Linux)
Support single shift-click to check/set direction of multiple rows
Removed gtkmm dependency (Linux)
Installer remembers all settings for next installation (local installation only)
Expand Down Expand Up @@ -1975,7 +1990,7 @@ Improved color theme support
Fixed crash on certain system text color settings
Fixed progress numbers for manual deletion
Allow aborting manual deletion via escape key
Use relative name for file tool tip
Use relative name for file tooltip
Automatically redirect arrow keys to main grid
More tolerant directory creation (operation not supported/wrong parameter)
More tolerant file move: ignore existing files (user-defined deletion directory)
Expand Down Expand Up @@ -2018,7 +2033,7 @@ Correctly report message "nothing to sync" in batch mode
Removed libjpg-8 dependency (Linux)
Fixed loading correct maximized position on multi-screen desktop
RealTimeSync: Removed blank icons in ALT-TAB list during execution of command line
Show RealTimeSync job name as systray tool tip
Show RealTimeSync job name as systray tooltip
Last used configurations as sorted list without size limitation
Remove redundant configuration when merging multiple ffs_gui/ffs_batch files
Warning if folder is modified that is part of multiple folder pairs
Expand All @@ -2032,7 +2047,7 @@ FreeFileSync 3.12 [2010-11-28]
Allow empty folder pairs without complaining
Automatically exclude database and lock files from all (sub-)directories (not only from base)
Resize grid columns on both sides in parallel
Fixed tool tip foreground text color (Linux)
Fixed tooltip foreground text color (Linux)
Search via CTRL + F and F3 now as global hotkeys
Fully portable use of directory locking (Windows/Linux, 32/64 bit)
RealTimeSync: Treat missing network path the same as missing local path
Expand All @@ -2046,7 +2061,7 @@ Fixed moving buttons in synchronization dialog
Allow deleting currently selected item from list of last used folders (not before wxWidgets 2.9.1)
Avoid losing focus after manually deleting a file
Preserve custom changes to sync directions after manually deleting a file
Handle empty tool tips correctly (Linux)
Handle empty tooltips correctly (Linux)
Updated translation files


Expand All @@ -2060,7 +2075,7 @@ FreeFileSync 3.10 [2010-09-19]
------------------------------
Automatically solve daylight saving time and time zone shift issues on FAT/FAT32 (finally)
Instantly resolve abandoned directory locks associated with local computer
Show expanded directory name as tool tip and label text (resolves macros and relative paths)
Show expanded directory name as tooltip and label text (resolves macros and relative paths)
Do not copy relative file attributes for base target directories that are created implicitly
Move dialogs by clicking (almost) anywhere
RealTimeSync: ignore request for device removal on Samba shares
Expand All @@ -2069,7 +2084,7 @@ Correctly handle window position on multi-screen desktop
Disabled warning "database not yet existing"
RealTimeSync: replaced delay by minimum idle time
Maximum number of folder pairs configurable via GlobalSettings.xml (XML node <FolderPairsMax>)
Added tool tips to display long filenames on main grid
Added tooltips to display long filenames on main grid
Keep application responsive when deleting large directories
Vista/Windows 7: harmonize modification times shown on main grid with Windows Explorer
Changed background color to avoid unreadable texts in combination with certain color themes
Expand Down Expand Up @@ -2101,7 +2116,7 @@ FreeFileSync 3.8 [2010-06-20]
-----------------------------
New options handling Symlinks: ignore/direct/follow => warning: new database format for <Automatic> mode
Fixed crash when starting sync for Windows XP SP2
Prevent tool tip from stealing focus
Prevent tooltip from stealing focus
Show associated file icons (Linux)
Run folder existence checks in separate thread (faster network share access)
Write <Automatic> mode database file even if both sides are already in sync
Expand Down Expand Up @@ -2271,10 +2286,10 @@ FreeFileSync 2.2 [2009-08-16]
New user-defined recycle bin directory
Possibility to create synchronization directories automatically (if not existing)
Support for relative directory names (e.g. \foo, ..\bar) respecting current working directory
New tool tip in middle grid showing detailed information (including conflicts)
New tooltip in middle grid showing detailed information (including conflicts)
Status feedback and new abort button for manual deletion
Options to add/remove folder pairs in batch dialog
Added tool tip showing progress for silent batch mode
Added tooltip showing progress for silent batch mode
New view filter buttons in synchronization preview
Revisioned handling of symbolic links (Linux/Windows)
GUI optimizations removing flicker
Expand Down
Binary file modified FreeFileSync/Build/Resources/Icons.zip
Binary file not shown.
Binary file modified FreeFileSync/Build/Resources/Languages.zip
Binary file not shown.
Loading

0 comments on commit 2ccd20e

Please sign in to comment.