diff --git a/src/INSTALLpc.txt b/src/INSTALLpc.txt
index b70758c..51b315b 100644
--- a/src/INSTALLpc.txt
+++ b/src/INSTALLpc.txt
@@ -34,10 +34,11 @@
 11. Building with Ruby support
 12. Building with Tcl support
 13. Building with DirectX (DirectWrite) support
-14. Windows 3.1
-15. MS-DOS
+14. Building with libsodium support
+15. Windows 3.1
+16. MS-DOS
 
-16. Installing after building from sources
+17. Installing after building from sources
 
 
 The currently recommended way (that means it has been verified to work) is
@@ -247,9 +248,6 @@
 
     $ pacman -S git
 
-For enabling libsodium support, you also need to install the package
-
-    $ pacman -S mingw-w64-x86_64-libsodium
 
 2.3. Keep the build environment up-to-date
 
@@ -846,20 +844,55 @@
     mingw32-make -f Make_ming.mak DIRECTX=yes
 
 
-14. Windows 3.1x
+14. Building with libsodium support
+===================================
+
+For better encryption support, you can build Vim with libsodium.
+
+A) Using MSVC
+
+You can download the latest libsodium library from here:
+	https://download.libsodium.org/libsodium/releases/
+
+At this moment, libsodium-1.0.18-stable-msvc.zip is the latest package.
+Unpack it to anywhere you like, and specify the path to the SODIUM option:
+
+    nmake -f Make_mvc.mak SODIUM=C:/path/to/libsodium
+    (libsodium.dll will be used as the libsodium DLL name.)
+
+B) Using MinGW
+
+If you use msys2, you can install the libsodium package by pacman (or pacboy):
+
+    $ pacman -S mingw-w64-x86_64-libsodium	# for 64-bit Vim
+    $ pacman -S mingw-w64-i686-libsodium	# for 32-bit Vim
+    $ pacboy -S libsodium:m		# for both 32-bit and 64-bit Vim
+
+Then set SODIUM to yes:
+
+    mingw32-make -f Make_ming.mak SODIUM=yes
+    (libsodium-23.dll will be used as the libsodium DLL name.)
+
+Or you can set the path to libsodium explicitly:
+
+    mingw32-make -f Make_ming.mak SODIUM=C:/path/to/libsodium
+    (libsodium.dll will be used as the libsodium DLL name.)
+
+
+15. Windows 3.1x
 ================
 
 The Windows 3.1x support was removed in patch 7.4.1364.
 
 
-15. MS-DOS
+16. MS-DOS
 ==========
 
 The MS-DOS support was removed in patch 7.4.1399.  Only very old Vim versions
 work on MS-DOS because of the limited amount of memory available.
 
 
-16. Installing after building from sources
+17. Installing after building from sources
 ==========================================
 
 [provided by Michael Soyka, updated by Ken Takata]
diff --git a/src/Make_cyg_ming.mak b/src/Make_cyg_ming.mak
index 7c1cbd9..a2d8f3b 100644
--- a/src/Make_cyg_ming.mak
+++ b/src/Make_cyg_ming.mak
@@ -670,14 +670,17 @@
 
 ifdef SODIUM
 DEFINES += -DHAVE_SODIUM
- ifneq ($(SODIUM),yes)
+ ifeq ($(SODIUM),yes)
+SODIUM_DLL = libsodium-23.dll
+ else
+SODIUM_DLL = libsodium.dll
 CFLAGS += -I $(SODIUM)/include
  endif
  ifndef DYNAMIC_SODIUM
 DYNAMIC_SODIUM=yes
  endif
  ifeq ($(DYNAMIC_SODIUM),yes)
-DEFINES += -DDYNAMIC_SODIUM
+DEFINES += -DDYNAMIC_SODIUM -DDYNAMIC_SODIUM_DLL=\"$(SODIUM_DLL)\"
  else
 SODIUMLIB = -lsodium
  endif
diff --git a/src/Make_mvc.mak b/src/Make_mvc.mak
index 7b16c59..aaaf530 100644
--- a/src/Make_mvc.mak
+++ b/src/Make_mvc.mak
@@ -391,7 +391,8 @@
 !if "$(SODIUM)" != "no"
 SOD_INC		= /I "$(SODIUM)\include"
 ! if "$(DYNAMIC_SODIUM)" == "yes"
-SOD_DEFS	= -DHAVE_SODIUM -DDYNAMIC_SODIUM
+SODIUM_DLL	= libsodium.dll
+SOD_DEFS	= -DHAVE_SODIUM -DDYNAMIC_SODIUM -DDYNAMIC_SODIUM_DLL=\"$(SODIUM_DLL)\"
 SOD_LIB		=
 ! else
 SOD_DEFS	= -DHAVE_SODIUM
diff --git a/src/crypt.c b/src/crypt.c
index d66e50c..86f4846 100644
--- a/src/crypt.c
+++ b/src/crypt.c
@@ -251,7 +251,7 @@
 sodium_runtime_link_init(int verbose)
 {
     static HINSTANCE hsodium = NULL;
-    const char *libname = "libsodium.dll";
+    const char *libname = DYNAMIC_SODIUM_DLL;
     int i;
 
     if (hsodium != NULL)
@@ -270,7 +270,7 @@
 	if ((*sodium_funcname_table[i].ptr = symbol_from_dll(hsodium,
 			sodium_funcname_table[i].name)) == NULL)
 	{
-	    FreeLibrary(hsodium);
+	    close_dll(hsodium);
 	    hsodium = NULL;
 	    if (verbose)
 		semsg(_(e_could_not_load_library_function_str), sodium_funcname_table[i].name);
diff --git a/src/version.c b/src/version.c
index a2f9d29..450d49b 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    4524,
+/**/
     4523,
 /**/
     4522,
