diff --git a/about.html b/about.html index 4e30b1bd..e9101a86 100644 --- a/about.html +++ b/about.html @@ -31,11 +31,14 @@ and such source code may be obtained at http:/ did not receive this Content directly from the Eclipse Foundation, the following is provided for informational purposes only, and you should look to the Redistributor's license for terms and conditions of use.

-

- None

-

-

- +

libwebsockets 2.4.2

+

This project makes use of the libwebsockets library.

+

The use of libwebsockets is based on the terms and conditions of the + LGPL 2.1 with some specific exceptions. + https://github.com/warmcat/libwebsockets/blob/v2.4.2/LICENSE

+

When libwebsockets is distributed with the project, it is being used + subject to the Static Linking Exception (Section 2) of the License. As + a result, the content is not subject to the LGPL 2.1.

diff --git a/installer/mosquitto.nsi b/installer/mosquitto.nsi index f8300f03..f3e08b54 100644 --- a/installer/mosquitto.nsi +++ b/installer/mosquitto.nsi @@ -8,7 +8,7 @@ !include "WinMessages.nsh" !define env_hklm 'HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment"' -Name "mosquitto" +Name "Eclipse Mosquitto" !define VERSION 1.5.0 OutFile "mosquitto-${VERSION}-install-windows-x86.exe" @@ -55,8 +55,8 @@ Section "Files" SecInstall File "..\readme.md" File "..\readme-windows.txt" ;File "C:\pthreads\Pre-built.2\dll\x86\pthreadVC2.dll" - ;File "C:\OpenSSL-Win32\libeay32.dll" - ;File "C:\OpenSSL-Win32\ssleay32.dll" + ;File "C:\OpenSSL-Win32\bin\libssl_1-1.dll" + ;File "C:\OpenSSL-Win32\bin\libcrypto_1-1.dll" File "..\edl-v10" File "..\epl-v10" @@ -68,11 +68,11 @@ Section "Files" SecInstall File "..\src\mosquitto_plugin.h" WriteUninstaller "$INSTDIR\Uninstall.exe" - WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Mosquitto" "DisplayName" "Mosquitto MQTT broker" + WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Mosquitto" "DisplayName" "Eclipse Mosquitto MQTT broker" WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Mosquitto" "UninstallString" "$\"$INSTDIR\Uninstall.exe$\"" WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Mosquitto" "QuietUninstallString" "$\"$INSTDIR\Uninstall.exe$\" /S" - WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Mosquitto" "HelpLink" "http://mosquitto.org/" - WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Mosquitto" "URLInfoAbout" "http://mosquitto.org/" + WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Mosquitto" "HelpLink" "https://mosquitto.org/" + WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Mosquitto" "URLInfoAbout" "https://mosquitto.org/" WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Mosquitto" "DisplayVersion" "${VERSION}" WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Mosquitto" "NoModify" "1" WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Mosquitto" "NoRepair" "1" @@ -81,10 +81,6 @@ Section "Files" SecInstall SendMessage ${HWND_BROADCAST} ${WM_WININICHANGE} 0 "STR:Environment" /TIMEOUT=5000 SectionEnd -Section "Service" SecService - ExecWait '"$INSTDIR\mosquitto.exe" install' -SectionEnd - Section "Uninstall" ExecWait '"$INSTDIR\mosquitto.exe" uninstall' Delete "$INSTDIR\mosquitto.exe" @@ -100,8 +96,8 @@ Section "Uninstall" Delete "$INSTDIR\readme.txt" Delete "$INSTDIR\readme-windows.txt" ;Delete "$INSTDIR\pthreadVC2.dll" - ;Delete "$INSTDIR\libeay32.dll" - ;Delete "$INSTDIR\ssleay32.dll" + ;Delete "$INSTDIR\libssl_1-1.dll" + ;Delete "$INSTDIR\libcrypto_1-1.dll" Delete "$INSTDIR\edl-v10" Delete "$INSTDIR\epl-v10" @@ -120,10 +116,8 @@ Section "Uninstall" SectionEnd LangString DESC_SecInstall ${LANG_ENGLISH} "The main installation." -LangString DESC_SecService ${LANG_ENGLISH} "Install mosquitto as a Windows service?" !insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN !insertmacro MUI_DESCRIPTION_TEXT ${SecInstall} $(DESC_SecInstall) - !insertmacro MUI_DESCRIPTION_TEXT ${SecService} $(DESC_SecService) !insertmacro MUI_FUNCTION_DESCRIPTION_END Var Dialog @@ -138,16 +132,11 @@ Function DependencyPage Abort ${EndIf} - ${NSD_CreateLabel} 0 0 100% 12u "OpenSSL - install 'Win32 OpenSSL vXXXXX Light' then copy dlls to the mosquitto directory" + ${NSD_CreateLabel} 0 0 100% 12u "OpenSSL - install 'Win32 OpenSSL v1.1.0* Light' then copy libssl_1-1.dll and libcrypto_1-1.dll to the mosquitto directory" ${NSD_CreateLink} 13u 13u 100% 12u "http://slproweb.com/products/Win32OpenSSL.html" Pop $OSSLLink ${NSD_OnClick} $OSSLLink OnClick_OSSL - ${NSD_CreateLabel} 0 26u 100% 12u "pthreads - copy 'pthreadVC2.dll' to the mosquitto directory" - ${NSD_CreateLink} 13u 39u 100% 12u "ftp://sources.redhat.com/pub/pthreads-win32/dll-latest/dll/x86/" - Pop $PTHLink - ${NSD_OnClick} $PTHLink OnClick_PTH - !insertmacro MUI_HEADER_TEXT_PAGE "Dependencies" "This page lists packages that must be installed if not already present" nsDialogs::Show FunctionEnd @@ -156,8 +145,3 @@ Function OnClick_OSSL Pop $0 ExecShell "open" "http://slproweb.com/products/Win32OpenSSL.html" FunctionEnd - -Function OnClick_PTH - Pop $0 - ExecShell "open" "ftp://sources.redhat.com/pub/pthreads-win32/dll-latest/dll/x86/" -FunctionEnd diff --git a/installer/mosquitto64.nsi b/installer/mosquitto64.nsi index 05aced11..af05ef60 100644 --- a/installer/mosquitto64.nsi +++ b/installer/mosquitto64.nsi @@ -8,21 +8,12 @@ !include "WinMessages.nsh" !define env_hklm 'HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment"' -Name "mosquitto" +Name "Eclipse Mosquitto" !define VERSION 1.5.0 OutFile "mosquitto-${VERSION}-install-windows-x64.exe" !include "x64.nsh" -# Default install location, for 32-bit files -InstallDir "$PROGRAMFILES\mosquitto" - -# Override install and registry locations if this is a 64-bit install. -function .onInit - ${If} ${ARCH} == "x64" - SetRegView 64 - StrCpy $INSTDIR "$PROGRAMFILES64\mosquitto" - ${EndIf} -functionEnd +InstallDir "$PROGRAMFILES64\mosquitto" ;-------------------------------- ; Installer pages @@ -65,8 +56,8 @@ Section "Files" SecInstall File "..\readme.md" File "..\readme-windows.txt" ;File "C:\pthreads\Pre-built.2\dll\x64\pthreadVC2.dll" - ;File "C:\OpenSSL-Win64\libeay32.dll" - ;File "C:\OpenSSL-Win64\ssleay32.dll" + ;File "C:\OpenSSL-Win64\bin\libssl_1-1-x64.dll" + ;File "C:\OpenSSL-Win64\bin\libcrypto_1-1-x64.dll" File "..\edl-v10" File "..\epl-v10" @@ -78,11 +69,11 @@ Section "Files" SecInstall File "..\src\mosquitto_plugin.h" WriteUninstaller "$INSTDIR\Uninstall.exe" - WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Mosquitto64" "DisplayName" "Mosquitto MQTT broker (64 bit)" + WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Mosquitto64" "DisplayName" "Eclipse Mosquitto MQTT broker (64 bit)" WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Mosquitto64" "UninstallString" "$\"$INSTDIR\Uninstall.exe$\"" WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Mosquitto64" "QuietUninstallString" "$\"$INSTDIR\Uninstall.exe$\" /S" - WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Mosquitto64" "HelpLink" "http://mosquitto.org/" - WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Mosquitto64" "URLInfoAbout" "http://mosquitto.org/" + WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Mosquitto64" "HelpLink" "https://mosquitto.org/" + WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Mosquitto64" "URLInfoAbout" "https://mosquitto.org/" WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Mosquitto64" "DisplayVersion" "${VERSION}" WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Mosquitto64" "NoModify" "1" WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Mosquitto64" "NoRepair" "1" @@ -91,10 +82,6 @@ Section "Files" SecInstall SendMessage ${HWND_BROADCAST} ${WM_WININICHANGE} 0 "STR:Environment" /TIMEOUT=5000 SectionEnd -Section "Service" SecService - ExecWait '"$INSTDIR\mosquitto.exe" install' -SectionEnd - Section "Uninstall" ExecWait '"$INSTDIR\mosquitto.exe" uninstall' Delete "$INSTDIR\mosquitto.exe" @@ -110,8 +97,8 @@ Section "Uninstall" Delete "$INSTDIR\readme.txt" Delete "$INSTDIR\readme-windows.txt" ;Delete "$INSTDIR\pthreadVC2.dll" - ;Delete "$INSTDIR\libeay32.dll" - ;Delete "$INSTDIR\ssleay32.dll" + ;Delete "$INSTDIR\libssl_1-1-x64.dll" + ;Delete "$INSTDIR\libcrypto_1-1-x64.dll" Delete "$INSTDIR\edl-v10" Delete "$INSTDIR\epl-v10" @@ -130,10 +117,8 @@ Section "Uninstall" SectionEnd LangString DESC_SecInstall ${LANG_ENGLISH} "The main installation." -LangString DESC_SecService ${LANG_ENGLISH} "Install mosquitto as a Windows service?" !insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN !insertmacro MUI_DESCRIPTION_TEXT ${SecInstall} $(DESC_SecInstall) - !insertmacro MUI_DESCRIPTION_TEXT ${SecService} $(DESC_SecService) !insertmacro MUI_FUNCTION_DESCRIPTION_END Var Dialog @@ -148,16 +133,11 @@ Function DependencyPage Abort ${EndIf} - ${NSD_CreateLabel} 0 0 100% 12u "OpenSSL - install 'Win64 OpenSSL vXXXXX Light' then copy dlls to the mosquitto directory" + ${NSD_CreateLabel} 0 0 100% 12u "OpenSSL - install 'Win64 OpenSSL v1.1.0* Light' then copy libssl_1-1-x64.dll and libcrypto_1-1-x64.dll to the mosquitto directory" ${NSD_CreateLink} 13u 13u 100% 12u "http://slproweb.com/products/Win32OpenSSL.html" Pop $OSSLLink ${NSD_OnClick} $OSSLLink OnClick_OSSL - ${NSD_CreateLabel} 0 26u 100% 12u "pthreads - copy 'pthreadVC2.dll' to the mosquitto directory" - ${NSD_CreateLink} 13u 39u 100% 12u "ftp://sources.redhat.com/pub/pthreads-win32/dll-latest/dll/x64/" - Pop $PTHLink - ${NSD_OnClick} $PTHLink OnClick_PTH - !insertmacro MUI_HEADER_TEXT_PAGE "Dependencies" "This page lists packages that must be installed if not already present" nsDialogs::Show FunctionEnd @@ -166,8 +146,3 @@ Function OnClick_OSSL Pop $0 ExecShell "open" "http://slproweb.com/products/Win32OpenSSL.html" FunctionEnd - -Function OnClick_PTH - Pop $0 - ExecShell "open" "ftp://sources.redhat.com/pub/pthreads-win32/dll-latest/dll/x64/" -FunctionEnd diff --git a/readme-windows.txt b/readme-windows.txt index d8cd5696..9325a4c9 100644 --- a/readme-windows.txt +++ b/readme-windows.txt @@ -1,70 +1,63 @@ Mosquitto for Windows ===================== -Mosquitto for Windows comes in two flavours, win32 or Cygwin. The win32 version is only -supported on Windows Vista or later. +Mosquitto for Windows comes in 32-bit and 64-bit flavours. -In all cases, the dependencies are not provided in this installer and must be installed -separately in the case that they are not already available. +In both cases, the dependencies are not provided in this installer and must be +installed separately in the case that they are not already available. Capabilities ------------ Some versions of Windows have limitations on the number of concurrent -connections. Non-server versions have been reported to be limited to -approximately 1024 connections. +connections, set at approximately 2048 connections depending on the version of +Windows you are using. Websockets ---------- -The broker executables provided in the installers do not have Websockets support enabled. -If you wish to have a version of the broker with Websockets support, you will need to compile -libwebsockets version v1.7 onwards because no Windows binaries are provided. +The broker executables provided in the installers have Websockets support +through a statically compiled version of libwebsockets and is being distributed +under the Static Linking Exception (Section 2) of the License. As a result, the +content is not subject to the LGPL 2.1. Please note that on Windows, libwebsockets limits connections to a maximum of 64 clients. +Library Thread Support +---------------------- -Dependencies - win32 --------------------- +libmosquitto on Windows is currently compiled without thread support, so +neither of mosquitto_loop_start() nor "mosquitto_pub -l" are available. + +A better solution that the old pthreads-win32 is being looked into, so support +will return in the future. If you need thread support, the code still supports +it just fine. Support has been dropped to simplify installation. + +Dependencies +------------ * OpenSSL Link: http://slproweb.com/products/Win32OpenSSL.html - Install "Win32 OpenSSL " - Required DLLs: libeay32.dll ssleay32.dll -* pthreads - Link: ftp://sourceware.org/pub/pthreads-win32 - Install "pthreads-w32--release.zip - Required DLLs: pthreadVC2.dll + Install "Win32 OpenSSL 1.1.0* Light" or "Win64 OpenSSL 1.1.0* Light" + Required DLLs: libssl-1_1.dll, libcrypto-1_1.dll or libssl-1_1-x64.dll, libcrypto-1_1-x64.dll Please ensure that the required DLLs are on the system path, or are in the same directory as -the mosquitto executable. - - -Dependencies - Cygwin ---------------------- - -* OpenSSL - Link: http://slproweb.com/products/Win32OpenSSL.html - Install "Win32 OpenSSL " -* pthreads - Link: ftp://sourceware.org/pub/pthreads-win32 - Install "pthreads-w32--release.zip -* Cygwin - Link: https://www.cygwin.com/setup-x86.exe - Required packages: libgcc1, openssl, zlib0 - +the mosquitto executable - usually C:\Program Files (x86)\mosquitto or C:\Program Files\mosquitto. Windows Service --------------- -If all dependencies are installed prior to the installer being run, the broker can be -installed as a Windows service. - -You can start/stop it from - the control panel as well as running it as a normal +If you wish, mosquitto can be installed as a Windows service so you can +start/stop it from the control panel as well as running it as a normal executable. -When running as a service, the configuration in mosquitto.conf in the -installation directory is used so modify this to your needs. +When running as a service, the configuration file used is mosquitto.conf in the +directory that you installed to. + +If you want to install/uninstall mosquitto as a Windows service run from the +command line as follows: + +C:\Program Files\mosquitto\mosquitto install +C:\Program Files\mosquitto\mosquitto uninstall