From 613a55ed05adcf23a77111473ca0a15dfb3411f9 Mon Sep 17 00:00:00 2001 From: Jonas Gehring Date: Mon, 16 Oct 2017 16:33:01 +0200 Subject: [PATCH] Use zmq C++ wrapper instead of czmq This is the same single-header wrapper that is used in the client. We do not get any benefit from czmq really. With the C++ wrapper, we have one less dependency, RAII semantics and are closer to the main zmq C API. --- .gitmodules | 3 - BWEnv/CMakeLists.txt | 4 +- BWEnv/VisualStudio/BWEnv.vcxproj | 18 +- BWEnv/bin/LICENSE-czmq | 378 -------------- BWEnv/bin/LICENSE-libsodium | 20 - BWEnv/bin/LICENSE-libzmq | 192 ------- BWEnv/bin/README | 8 +- BWEnv/bin/czmq.dll | Bin 199168 -> 0 bytes BWEnv/bin/libsodium.dll | Bin 452096 -> 0 bytes BWEnv/include/czmq | 1 - BWEnv/include/zmq.hpp | 832 +++++++++++++++++++++++++++++++ BWEnv/include/zmq_server.h | 5 +- BWEnv/lib/LICENSE-czmq | 378 -------------- BWEnv/lib/README | 4 +- BWEnv/lib/czmq.lib | Bin 164678 -> 0 bytes BWEnv/src/zmq_server.cc | 121 +++-- docs/user/openbw.md | 2 +- 17 files changed, 921 insertions(+), 1045 deletions(-) delete mode 100644 BWEnv/bin/LICENSE-czmq delete mode 100644 BWEnv/bin/LICENSE-libsodium delete mode 100644 BWEnv/bin/LICENSE-libzmq delete mode 100644 BWEnv/bin/czmq.dll delete mode 100644 BWEnv/bin/libsodium.dll delete mode 160000 BWEnv/include/czmq create mode 100644 BWEnv/include/zmq.hpp delete mode 100644 BWEnv/lib/LICENSE-czmq delete mode 100644 BWEnv/lib/czmq.lib diff --git a/.gitmodules b/.gitmodules index 30b5c66..254b77f 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,6 +1,3 @@ [submodule "BWEnv/include/libzmq"] path = BWEnv/include/libzmq url = https://github.com/TorchCraft/libzmq -[submodule "BWEnv/include/czmq"] - path = BWEnv/include/czmq - url = https://github.com/torchcraft/czmq diff --git a/BWEnv/CMakeLists.txt b/BWEnv/CMakeLists.txt index 53fa271..f42c04a 100644 --- a/BWEnv/CMakeLists.txt +++ b/BWEnv/CMakeLists.txt @@ -55,7 +55,7 @@ if (NOT USE_MINI_OPENBWAPI) ) target_link_libraries(BWEnv - czmq + zmq ${BWAPI_LIBRARIES} ) endif() @@ -66,6 +66,6 @@ add_executable(BWEnvClient ) target_link_libraries(BWEnvClient - czmq + zmq ${BWAPI_LIBRARIES} ) diff --git a/BWEnv/VisualStudio/BWEnv.vcxproj b/BWEnv/VisualStudio/BWEnv.vcxproj index dbef6a5..a92b7ab 100644 --- a/BWEnv/VisualStudio/BWEnv.vcxproj +++ b/BWEnv/VisualStudio/BWEnv.vcxproj @@ -93,7 +93,7 @@ Disabled - $(SolutionDir)/../include;$(SolutionDir)/../include/libzmq/include;$(SolutionDir)../../include/;$(SolutionDir)/../include/czmq/include;$(SolutionDir)/../fbs/;$(SolutionDir)/../fbs/;$(BWAPI_DIR)/include;%(AdditionalIncludeDirectories) + $(SolutionDir)/../include;$(SolutionDir)/../include/libzmq/include;$(SolutionDir)../../include/;$(SolutionDir)/../fbs/;$(SolutionDir)/../fbs/;$(BWAPI_DIR)/include;%(AdditionalIncludeDirectories) NOMINMAX;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) false EnableFastChecks @@ -108,7 +108,7 @@ true Console MachineX86 - Ws2_32.lib;$(SolutionDir)/../lib/czmq.lib;$(BWAPI_DIR)/lib/BWAPId.lib;$(BWAPI_DIR)/lib/BWAPIClientd.lib;%(AdditionalDependencies) + Ws2_32.lib;$(SolutionDir)/../lib/libzmq.lib;$(BWAPI_DIR)/lib/BWAPId.lib;$(BWAPI_DIR)/lib/BWAPIClientd.lib;%(AdditionalDependencies) C:\Users\edran\Source\Repos\TorchCraft\BWEnv\lib @@ -119,7 +119,7 @@ MaxSpeed true - $(SolutionDir)/../include;$(SolutionDir)/../include/libzmq/include;$(SolutionDir)../../include/;$(SolutionDir)/../include/czmq/include;$(SolutionDir)/../fbs/;;$(BWAPI_DIR)/include;%(AdditionalIncludeDirectories) + $(SolutionDir)/../include;$(SolutionDir)/../include/libzmq/include;$(SolutionDir)../../include/;$(SolutionDir)/../fbs/;;$(BWAPI_DIR)/include;%(AdditionalIncludeDirectories) NOMINMAX;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) MultiThreadedDLL true @@ -136,7 +136,7 @@ true true MachineX86 - Ws2_32.lib;$(SolutionDir)/../lib/czmq.lib;$(BWAPI_DIR)/lib/BWAPI.lib;$(BWAPI_DIR)/lib/BWAPIClient.lib;%(AdditionalDependencies) + Ws2_32.lib;$(SolutionDir)/../lib/libzmq.lib;$(BWAPI_DIR)/lib/BWAPI.lib;$(BWAPI_DIR)/lib/BWAPIClient.lib;%(AdditionalDependencies) @@ -148,7 +148,7 @@ MaxSpeed true - $(BWAPI_DIR)/include;$(SolutionDir)/../include;$(SolutionDir)/../include/libzmq/include;$(SolutionDir)../../include/;$(SolutionDir)/../include/czmq/include;$(SolutionDir)/../fbs/;%(AdditionalIncludeDirectories) + $(BWAPI_DIR)/include;$(SolutionDir)/../include;$(SolutionDir)/../include/libzmq/include;$(SolutionDir)../../include/;$(SolutionDir)/../fbs/;%(AdditionalIncludeDirectories) NOMINMAX;WIN32;NDEBUG;_WINDOWS;_USRDLL;BWENV_EXPORTS;%(PreprocessorDefinitions) MultiThreadedDLL true @@ -165,7 +165,7 @@ true true MachineX86 - Ws2_32.lib;$(SolutionDir)/../lib/czmq.lib;$(BWAPI_DIR)/lib/BWAPI.lib;$(BWAPI_DIR)/lib/BWAPIClient.lib;%(AdditionalDependencies) + Ws2_32.lib;$(SolutionDir)/../lib/libzmq.lib;$(BWAPI_DIR)/lib/BWAPI.lib;$(BWAPI_DIR)/lib/BWAPIClient.lib;%(AdditionalDependencies) $(IntDir)$(TargetName).lib @@ -178,7 +178,7 @@ Disabled false - $(SolutionDir)/../include;$(SolutionDir)/../include/libzmq/include;$(SolutionDir)../../include/;$(SolutionDir)/../include/czmq/include;$(SolutionDir)/../fbs/;;$(BWAPI_DIR)/include;%(AdditionalIncludeDirectories) + $(SolutionDir)/../include;$(SolutionDir)/../include/libzmq/include;$(SolutionDir)../../include/;$(SolutionDir)/../fbs/;;$(BWAPI_DIR)/include;%(AdditionalIncludeDirectories) NOMINMAX;WIN32;_DEBUG;_WINDOWS;_USRDLL;BWENV_EXPORTS;%(PreprocessorDefinitions) MultiThreadedDebugDLL @@ -199,7 +199,7 @@ MachineX86 - Ws2_32.lib;$(SolutionDir)/../lib/czmq.lib;$(BWAPI_DIR)/lib/BWAPId.lib;$(BWAPI_DIR)/lib/BWAPIClientd.lib;%(AdditionalDependencies) + Ws2_32.lib;$(SolutionDir)/../lib/libzmq.lib;$(BWAPI_DIR)/lib/BWAPId.lib;$(BWAPI_DIR)/lib/BWAPIClientd.lib;%(AdditionalDependencies) @@ -234,4 +234,4 @@ - \ No newline at end of file + diff --git a/BWEnv/bin/LICENSE-czmq b/BWEnv/bin/LICENSE-czmq deleted file mode 100644 index 61e75cb..0000000 --- a/BWEnv/bin/LICENSE-czmq +++ /dev/null @@ -1,378 +0,0 @@ -The following software is included in this product: czmq. This software contains the following license and notice below. - -Copyright (c) 1991-2014 iMatix Corporation -Copyright (c) 2014-2016 Brocade Communications Systems Inc. - -Mozilla Public License Version 2.0 -================================== - -1. Definitions --------------- - -1.1. "Contributor" - means each individual or legal entity that creates, contributes to - the creation of, or owns Covered Software. - -1.2. "Contributor Version" - means the combination of the Contributions of others (if any) used - by a Contributor and that particular Contributor's Contribution. - -1.3. "Contribution" - means Covered Software of a particular Contributor. - -1.4. "Covered Software" - means Source Code Form to which the initial Contributor has attached - the notice in Exhibit A, the Executable Form of such Source Code - Form, and Modifications of such Source Code Form, in each case - including portions thereof. - -1.5. "Incompatible With Secondary Licenses" - means - - (a) that the initial Contributor has attached the notice described - in Exhibit B to the Covered Software; or - - (b) that the Covered Software was made available under the terms of - version 1.1 or earlier of the License, but not also under the - terms of a Secondary License. - -1.6. "Executable Form" - means any form of the work other than Source Code Form. - -1.7. "Larger Work" - means a work that combines Covered Software with other material, in - a separate file or files, that is not Covered Software. - -1.8. "License" - means this document. - -1.9. "Licensable" - means having the right to grant, to the maximum extent possible, - whether at the time of the initial grant or subsequently, any and - all of the rights conveyed by this License. - -1.10. "Modifications" - means any of the following: - - (a) any file in Source Code Form that results from an addition to, - deletion from, or modification of the contents of Covered - Software; or - - (b) any new file in Source Code Form that contains any Covered - Software. - -1.11. "Patent Claims" of a Contributor - means any patent claim(s), including without limitation, method, - process, and apparatus claims, in any patent Licensable by such - Contributor that would be infringed, but for the grant of the - License, by the making, using, selling, offering for sale, having - made, import, or transfer of either its Contributions or its - Contributor Version. - -1.12. "Secondary License" - means either the GNU General Public License, Version 2.0, the GNU - Lesser General Public License, Version 2.1, the GNU Affero General - Public License, Version 3.0, or any later versions of those - licenses. - -1.13. "Source Code Form" - means the form of the work preferred for making modifications. - -1.14. "You" (or "Your") - means an individual or a legal entity exercising rights under this - License. For legal entities, "You" includes any entity that - controls, is controlled by, or is under common control with You. For - purposes of this definition, "control" means (a) the power, direct - or indirect, to cause the direction or management of such entity, - whether by contract or otherwise, or (b) ownership of more than - fifty percent (50%) of the outstanding shares or beneficial - ownership of such entity. - -2. License Grants and Conditions --------------------------------- - -2.1. Grants - -Each Contributor hereby grants You a world-wide, royalty-free, -non-exclusive license: - -(a) under intellectual property rights (other than patent or trademark) - Licensable by such Contributor to use, reproduce, make available, - modify, display, perform, distribute, and otherwise exploit its - Contributions, either on an unmodified basis, with Modifications, or - as part of a Larger Work; and - -(b) under Patent Claims of such Contributor to make, use, sell, offer - for sale, have made, import, and otherwise transfer either its - Contributions or its Contributor Version. - -2.2. Effective Date - -The licenses granted in Section 2.1 with respect to any Contribution -become effective for each Contribution on the date the Contributor first -distributes such Contribution. - -2.3. Limitations on Grant Scope - -The licenses granted in this Section 2 are the only rights granted under -this License. No additional rights or licenses will be implied from the -distribution or licensing of Covered Software under this License. -Notwithstanding Section 2.1(b) above, no patent license is granted by a -Contributor: - -(a) for any code that a Contributor has removed from Covered Software; - or - -(b) for infringements caused by: (i) Your and any other third party's - modifications of Covered Software, or (ii) the combination of its - Contributions with other software (except as part of its Contributor - Version); or - -(c) under Patent Claims infringed by Covered Software in the absence of - its Contributions. - -This License does not grant any rights in the trademarks, service marks, -or logos of any Contributor (except as may be necessary to comply with -the notice requirements in Section 3.4). - -2.4. Subsequent Licenses - -No Contributor makes additional grants as a result of Your choice to -distribute the Covered Software under a subsequent version of this -License (see Section 10.2) or under the terms of a Secondary License (if -permitted under the terms of Section 3.3). - -2.5. Representation - -Each Contributor represents that the Contributor believes its -Contributions are its original creation(s) or it has sufficient rights -to grant the rights to its Contributions conveyed by this License. - -2.6. Fair Use - -This License is not intended to limit any rights You have under -applicable copyright doctrines of fair use, fair dealing, or other -equivalents. - -2.7. Conditions - -Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted -in Section 2.1. - -3. Responsibilities -------------------- - -3.1. Distribution of Source Form - -All distribution of Covered Software in Source Code Form, including any -Modifications that You create or to which You contribute, must be under -the terms of this License. You must inform recipients that the Source -Code Form of the Covered Software is governed by the terms of this -License, and how they can obtain a copy of this License. You may not -attempt to alter or restrict the recipients' rights in the Source Code -Form. - -3.2. Distribution of Executable Form - -If You distribute Covered Software in Executable Form then: - -(a) such Covered Software must also be made available in Source Code - Form, as described in Section 3.1, and You must inform recipients of - the Executable Form how they can obtain a copy of such Source Code - Form by reasonable means in a timely manner, at a charge no more - than the cost of distribution to the recipient; and - -(b) You may distribute such Executable Form under the terms of this - License, or sublicense it under different terms, provided that the - license for the Executable Form does not attempt to limit or alter - the recipients' rights in the Source Code Form under this License. - -3.3. Distribution of a Larger Work - -You may create and distribute a Larger Work under terms of Your choice, -provided that You also comply with the requirements of this License for -the Covered Software. If the Larger Work is a combination of Covered -Software with a work governed by one or more Secondary Licenses, and the -Covered Software is not Incompatible With Secondary Licenses, this -License permits You to additionally distribute such Covered Software -under the terms of such Secondary License(s), so that the recipient of -the Larger Work may, at their option, further distribute the Covered -Software under the terms of either this License or such Secondary -License(s). - -3.4. Notices - -You may not remove or alter the substance of any license notices -(including copyright notices, patent notices, disclaimers of warranty, -or limitations of liability) contained within the Source Code Form of -the Covered Software, except that You may alter any license notices to -the extent required to remedy known factual inaccuracies. - -3.5. Application of Additional Terms - -You may choose to offer, and to charge a fee for, warranty, support, -indemnity or liability obligations to one or more recipients of Covered -Software. However, You may do so only on Your own behalf, and not on -behalf of any Contributor. You must make it absolutely clear that any -such warranty, support, indemnity, or liability obligation is offered by -You alone, and You hereby agree to indemnify every Contributor for any -liability incurred by such Contributor as a result of warranty, support, -indemnity or liability terms You offer. You may include additional -disclaimers of warranty and limitations of liability specific to any -jurisdiction. - -4. Inability to Comply Due to Statute or Regulation ---------------------------------------------------- - -If it is impossible for You to comply with any of the terms of this -License with respect to some or all of the Covered Software due to -statute, judicial order, or regulation then You must: (a) comply with -the terms of this License to the maximum extent possible; and (b) -describe the limitations and the code they affect. Such description must -be placed in a text file included with all distributions of the Covered -Software under this License. Except to the extent prohibited by statute -or regulation, such description must be sufficiently detailed for a -recipient of ordinary skill to be able to understand it. - -5. Termination --------------- - -5.1. The rights granted under this License will terminate automatically -if You fail to comply with any of its terms. However, if You become -compliant, then the rights granted under this License from a particular -Contributor are reinstated (a) provisionally, unless and until such -Contributor explicitly and finally terminates Your grants, and (b) on an -ongoing basis, if such Contributor fails to notify You of the -non-compliance by some reasonable means prior to 60 days after You have -come back into compliance. Moreover, Your grants from a particular -Contributor are reinstated on an ongoing basis if such Contributor -notifies You of the non-compliance by some reasonable means, this is the -first time You have received notice of non-compliance with this License -from such Contributor, and You become compliant prior to 30 days after -Your receipt of the notice. - -5.2. If You initiate litigation against any entity by asserting a patent -infringement claim (excluding declaratory judgment actions, -counter-claims, and cross-claims) alleging that a Contributor Version -directly or indirectly infringes any patent, then the rights granted to -You by any and all Contributors for the Covered Software under Section -2.1 of this License shall terminate. - -5.3. In the event of termination under Sections 5.1 or 5.2 above, all -end user license agreements (excluding distributors and resellers) which -have been validly granted by You or Your distributors under this License -prior to termination shall survive termination. - -************************************************************************ -* * -* 6. Disclaimer of Warranty * -* ------------------------- * -* * -* Covered Software is provided under this License on an "as is" * -* basis, without warranty of any kind, either expressed, implied, or * -* statutory, including, without limitation, warranties that the * -* Covered Software is free of defects, merchantable, fit for a * -* particular purpose or non-infringing. The entire risk as to the * -* quality and performance of the Covered Software is with You. * -* Should any Covered Software prove defective in any respect, You * -* (not any Contributor) assume the cost of any necessary servicing, * -* repair, or correction. This disclaimer of warranty constitutes an * -* essential part of this License. No use of any Covered Software is * -* authorized under this License except under this disclaimer. * -* * -************************************************************************ - -************************************************************************ -* * -* 7. Limitation of Liability * -* -------------------------- * -* * -* Under no circumstances and under no legal theory, whether tort * -* (including negligence), contract, or otherwise, shall any * -* Contributor, or anyone who distributes Covered Software as * -* permitted above, be liable to You for any direct, indirect, * -* special, incidental, or consequential damages of any character * -* including, without limitation, damages for lost profits, loss of * -* goodwill, work stoppage, computer failure or malfunction, or any * -* and all other commercial damages or losses, even if such party * -* shall have been informed of the possibility of such damages. This * -* limitation of liability shall not apply to liability for death or * -* personal injury resulting from such party's negligence to the * -* extent applicable law prohibits such limitation. Some * -* jurisdictions do not allow the exclusion or limitation of * -* incidental or consequential damages, so this exclusion and * -* limitation may not apply to You. * -* * -************************************************************************ - -8. Litigation -------------- - -Any litigation relating to this License may be brought only in the -courts of a jurisdiction where the defendant maintains its principal -place of business and such litigation shall be governed by laws of that -jurisdiction, without reference to its conflict-of-law provisions. -Nothing in this Section shall prevent a party's ability to bring -cross-claims or counter-claims. - -9. Miscellaneous ----------------- - -This License represents the complete agreement concerning the subject -matter hereof. If any provision of this License is held to be -unenforceable, such provision shall be reformed only to the extent -necessary to make it enforceable. Any law or regulation which provides -that the language of a contract shall be construed against the drafter -shall not be used to construe this License against a Contributor. - -10. Versions of the License ---------------------------- - -10.1. New Versions - -Mozilla Foundation is the license steward. Except as provided in Section -10.3, no one other than the license steward has the right to modify or -publish new versions of this License. Each version will be given a -distinguishing version number. - -10.2. Effect of New Versions - -You may distribute the Covered Software under the terms of the version -of the License under which You originally received the Covered Software, -or under the terms of any subsequent version published by the license -steward. - -10.3. Modified Versions - -If you create software not governed by this License, and you want to -create a new license for such software, you may create and use a -modified version of this License if you rename the license and remove -any references to the name of the license steward (except to note that -such modified license differs from this License). - -10.4. Distributing Source Code Form that is Incompatible With Secondary -Licenses - -If You choose to distribute Source Code Form that is Incompatible With -Secondary Licenses under the terms of this version of the License, the -notice described in Exhibit B of this License must be attached. - -Exhibit A - Source Code Form License Notice -------------------------------------------- - - This Source Code Form is subject to the terms of the Mozilla Public - License, v. 2.0. If a copy of the MPL was not distributed with this - file, You can obtain one at http://mozilla.org/MPL/2.0/. - -If it is not possible or desirable to put the notice in a particular -file, then You may include the notice in a location (such as a LICENSE -file in a relevant directory) where a recipient would be likely to look -for such a notice. - -You may add additional accurate notices of copyright ownership. - -Exhibit B - "Incompatible With Secondary Licenses" Notice ---------------------------------------------------------- - - This Source Code Form is "Incompatible With Secondary Licenses", as - defined by the Mozilla Public License, v. 2.0. \ No newline at end of file diff --git a/BWEnv/bin/LICENSE-libsodium b/BWEnv/bin/LICENSE-libsodium deleted file mode 100644 index 13a752c..0000000 --- a/BWEnv/bin/LICENSE-libsodium +++ /dev/null @@ -1,20 +0,0 @@ -The following software is included in this product: libsodium. This software contains the following license and notice below. - -/* - * ISC License - * - * Copyright (c) 2013-2016 - * Frank Denis - * - * Permission to use, copy, modify, and/or distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ \ No newline at end of file diff --git a/BWEnv/bin/LICENSE-libzmq b/BWEnv/bin/LICENSE-libzmq deleted file mode 100644 index 3eb43ef..0000000 --- a/BWEnv/bin/LICENSE-libzmq +++ /dev/null @@ -1,192 +0,0 @@ -The following software is included in this product: libzmq. The source code is available at https://github.com/zeromq/libzmq. This software contains the following license and notice below: - -Copyright (c) 2007-2014 iMatix Corporation -Copyright (c) 2009-2011 250bpm s.r.o. -Copyright (c) 2010-2011 Miru Limited -Copyright (c) 2011 VMware, Inc. -Copyright (c) 2012 Spotify AB -Copyright (c) 2013 Ericsson AB -Copyright (c) 2014 AppDynamics Inc. -Copyright (c) 2015-2016 Brocade Communications Systems Inc. - - GNU LESSER GENERAL PUBLIC LICENSE - Version 3, 29 June 2007 - - Copyright (C) 2007 Free Software Foundation, Inc. - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - - This version of the GNU Lesser General Public License incorporates -the terms and conditions of version 3 of the GNU General Public -License, supplemented by the additional permissions listed below. - - 0. Additional Definitions. - - As used herein, "this License" refers to version 3 of the GNU Lesser -General Public License, and the "GNU GPL" refers to version 3 of the GNU -General Public License. - - "The Library" refers to a covered work governed by this License, -other than an Application or a Combined Work as defined below. - - An "Application" is any work that makes use of an interface provided -by the Library, but which is not otherwise based on the Library. -Defining a subclass of a class defined by the Library is deemed a mode -of using an interface provided by the Library. - - A "Combined Work" is a work produced by combining or linking an -Application with the Library. The particular version of the Library -with which the Combined Work was made is also called the "Linked -Version". - - The "Minimal Corresponding Source" for a Combined Work means the -Corresponding Source for the Combined Work, excluding any source code -for portions of the Combined Work that, considered in isolation, are -based on the Application, and not on the Linked Version. - - The "Corresponding Application Code" for a Combined Work means the -object code and/or source code for the Application, including any data -and utility programs needed for reproducing the Combined Work from the -Application, but excluding the System Libraries of the Combined Work. - - 1. Exception to Section 3 of the GNU GPL. - - You may convey a covered work under sections 3 and 4 of this License -without being bound by section 3 of the GNU GPL. - - 2. Conveying Modified Versions. - - If you modify a copy of the Library, and, in your modifications, a -facility refers to a function or data to be supplied by an Application -that uses the facility (other than as an argument passed when the -facility is invoked), then you may convey a copy of the modified -version: - - a) under this License, provided that you make a good faith effort to - ensure that, in the event an Application does not supply the - function or data, the facility still operates, and performs - whatever part of its purpose remains meaningful, or - - b) under the GNU GPL, with none of the additional permissions of - this License applicable to that copy. - - 3. Object Code Incorporating Material from Library Header Files. - - The object code form of an Application may incorporate material from -a header file that is part of the Library. You may convey such object -code under terms of your choice, provided that, if the incorporated -material is not limited to numerical parameters, data structure -layouts and accessors, or small macros, inline functions and templates -(ten or fewer lines in length), you do both of the following: - - a) Give prominent notice with each copy of the object code that the - Library is used in it and that the Library and its use are - covered by this License. - - b) Accompany the object code with a copy of the GNU GPL and this license - document. - - 4. Combined Works. - - You may convey a Combined Work under terms of your choice that, -taken together, effectively do not restrict modification of the -portions of the Library contained in the Combined Work and reverse -engineering for debugging such modifications, if you also do each of -the following: - - a) Give prominent notice with each copy of the Combined Work that - the Library is used in it and that the Library and its use are - covered by this License. - - b) Accompany the Combined Work with a copy of the GNU GPL and this license - document. - - c) For a Combined Work that displays copyright notices during - execution, include the copyright notice for the Library among - these notices, as well as a reference directing the user to the - copies of the GNU GPL and this license document. - - d) Do one of the following: - - 0) Convey the Minimal Corresponding Source under the terms of this - License, and the Corresponding Application Code in a form - suitable for, and under terms that permit, the user to - recombine or relink the Application with a modified version of - the Linked Version to produce a modified Combined Work, in the - manner specified by section 6 of the GNU GPL for conveying - Corresponding Source. - - 1) Use a suitable shared library mechanism for linking with the - Library. A suitable mechanism is one that (a) uses at run time - a copy of the Library already present on the user's computer - system, and (b) will operate properly with a modified version - of the Library that is interface-compatible with the Linked - Version. - - e) Provide Installation Information, but only if you would otherwise - be required to provide such information under section 6 of the - GNU GPL, and only to the extent that such information is - necessary to install and execute a modified version of the - Combined Work produced by recombining or relinking the - Application with a modified version of the Linked Version. (If - you use option 4d0, the Installation Information must accompany - the Minimal Corresponding Source and Corresponding Application - Code. If you use option 4d1, you must provide the Installation - Information in the manner specified by section 6 of the GNU GPL - for conveying Corresponding Source.) - - 5. Combined Libraries. - - You may place library facilities that are a work based on the -Library side by side in a single library together with other library -facilities that are not Applications and are not covered by this -License, and convey such a combined library under terms of your -choice, if you do both of the following: - - a) Accompany the combined library with a copy of the same work based - on the Library, uncombined with any other library facilities, - conveyed under the terms of this License. - - b) Give prominent notice with the combined library that part of it - is a work based on the Library, and explaining where to find the - accompanying uncombined form of the same work. - - 6. Revised Versions of the GNU Lesser General Public License. - - The Free Software Foundation may publish revised and/or new versions -of the GNU Lesser General Public License from time to time. Such new -versions will be similar in spirit to the present version, but may -differ in detail to address new problems or concerns. - - Each version is given a distinguishing version number. If the -Library as you received it specifies that a certain numbered version -of the GNU Lesser General Public License "or any later version" -applies to it, you have the option of following the terms and -conditions either of that published version or of any later version -published by the Free Software Foundation. If the Library as you -received it does not specify a version number of the GNU Lesser -General Public License, you may choose any version of the GNU Lesser -General Public License ever published by the Free Software Foundation. - - If the Library as you received it specifies that a proxy can decide -whether future versions of the GNU Lesser General Public License shall -apply, that proxy's public statement of acceptance of any version is -permanent authorization for you to choose that version for the -Library. - --------------------------------------------------------------------------------- - - SPECIAL EXCEPTION GRANTED BY COPYRIGHT HOLDERS - -As a special exception, copyright holders give you permission to link this -library with independent modules to produce an executable, regardless of -the license terms of these independent modules, and to copy and distribute -the resulting executable under terms of your choice, provided that you also -meet, for each linked independent module, the terms and conditions of -the license of that module. An independent module is a module which is not -derived from or based on this library. If you modify this library, you must -extend this exception to your version of the library. - -Note: this exception relieves you of any obligations under sections 4 and 5 -of this license, and section 6 of the GNU General Public License. \ No newline at end of file diff --git a/BWEnv/bin/README b/BWEnv/bin/README index 49be512..1f7e8df 100644 --- a/BWEnv/bin/README +++ b/BWEnv/bin/README @@ -1,6 +1,4 @@ -The files czmq.dll, libzmq.dll, libsodium.dll, are provided "as is", they are -executables made respectively from the 3 following softwares: - - czmq can be found at: https://github.com/zeromq/czmq +The files libzmq.dll and bwheadless.exe are provided "as is" and have been built +from the following sources: - libzmq can be found at: https://github.com/zeromq/libzmq - - libsodium can be found: https://github.com/jedisct1/libsodium - - The source for the executable bwheadless.exe can be found at https://github.com/tscmoo/bwheadless \ No newline at end of file + - The source for the executable bwheadless.exe can be found at https://github.com/tscmoo/bwheadless diff --git a/BWEnv/bin/czmq.dll b/BWEnv/bin/czmq.dll deleted file mode 100644 index 59f1b07fcfd23c0d483f6b50770df63725955c8d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 199168 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%0A13E7 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 G{`DW~pNBL6 diff --git a/BWEnv/bin/libsodium.dll b/BWEnv/bin/libsodium.dll deleted file mode 100644 index b6916aa63b7fca850ce9cfa79d35851162c05340..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 452096 zcmeFa4SbZpX+S0<>5E(#Za3Th*8b4aK6t!Sr3bv+z zL+U&pre(LVg)QvM+ooIImR++e(6j}cNwP`!s08G%!P1&m)_tsbOTZKYq|E=i?(;k| z&m@x&EcN~EZv9E-e1F{Moa_ELA5ZX}wJx{I<;uptM8f5&!!Q3Uk-vlg=|c1s*Z=ei z*Y;7r_&{CO>|cD~t_5FQQna{o(HANodZOs_4}IxNiu?SG zKyFr^%XQTVm+P<&oqR3aUbrXVmoB=8xm@Cd)Bbf8jnu@G=#nhS#I(#HzxwCFNh4gh zf86ETws3?i#Aw$@R|it}`_DVlW#;w^?H91&lOxi{2<^1Tu3usV+_?0S$UpD zzH-nV{}s7h58hb$@Iy-y1g~9)mEIVrVFeDF;(=n=|c;4K^4mKcUejbUU72UBww`bcsISXC!-{(Xt z{vhrgai5|)1gFj%tvGE5L@RpelvHPuuCqzkIdcRGR}}?Twc)}@)3iuqSLBrh>nAk~ zs};YhL&AM%hidk0i|546oM;e@uv}<@*xV2w+NgvPiec5pzIbZ?<+VOC-XhuQA7mH*pe7xEWj*oPa}8_Tje zwDtEs;Qz(_W{y?Pe(OJ(Up;7PpZSIP!@*X8RhPt5((Gm@G1_tjRLq#7a#oarK*2nnHht zDljQjGpCG2wU>8rVlm#DSfvR}qZk)kq{&;oXX)jtIa2R6vLdg#jHmRFKXAYQ7x$W1 zlgOAlGU77c+5Pe4234Md6eo}r>EShEz2~v4)@Ov1NL8Ur1qzmpt{fie@h-Uv6ZZiP zCmY#F!pXclF*z(enN*pMCk5=9hMFhNBYht{;b4VK9}=m?)9sNC&q9~A+!o9PCWg$O z?T88#a6p5Fk@_wTeUXESvXDk2y&#R4E@=;w3p!>j?T3iQ^ds5~gj#}30$1X?09pYt zlJF2@-J7$~BehSX!eBE9&5&u*2c0f7i8M<8_636Je+kl=Lxz1AqdfFLJ0k*3TxqvUNNOn$7LADy% zLT1aqvi3;R>_01tJtVa_Ak2$^GzeR97V}0{C1=?n5OycVL_?UrUgMZONq}dn+#Bi4 ziT`exe~(e_tv=*gy#ezD(}S}jCvrBYvNATkcWx|uZR~;GSmC!O_bkhv{Ocw6sRs30 zq+_IdWqkYiSB>)C*bFa@mxg+tM*u6!uk|KC!wms@O-ujMb z#mqMNW{>E=-;xeHtYdPpr*c1PzIXE8CBE^eW7*#ve^BL3h?QhdoY^}o+zobaBeCv* zv_B6b-MrYWDY3;0q z%@w<|D0UkgR?3##X1DG(Y26hJn`*c2wvL(MHk4tL&R$=tJjcHWE6N*bs0Y>ZRdc*! zq`NKl9rj-hi`|)RWUHx>Gv239#4E$2b+j4uigbF>+Hq)VF_zF981U+5FtooxYfC(lpTVihi{>+UBi&Vnkwn7tY>e&$ zsv#0jMA{N#4~%WdZS_2ENF^K+dOT<}CSW$ZXg}{LZef_f-EYA^=H=aE@6hp*aX$ z&GAv?q7IZ~-)RI8UyR~aV4TP@;R1Ku2zDpJAY)G=>`jF8%zu>JMb*DtdZUc85$IBZ zVl*oeMiQhgnh&^(!r*{XB25MEKo=r!4|gQO6B6MYbh*9K6e(|xF3(?&K@tXV_0|a^ zye*;}K5#$f*HkEyw7A}fHY2!C=(T-AnbZ;Jn6WbcPp1j1bLY*+G1_2-d1#yAfQYf`^UZ1{G{Gf}2!u zzY*N7f*722D%iyQovH$0)1$)Os;bKf)~H~;5!|YRyNrspMsS;~NB2Heu{ItbIgxp{ zyMx=}@lg|5eyuyWJs!W@e}v9`$PwRj#l+w?72N6$ZjuaW$`)~t@}E%^XvP-z0pys- zDz?JO^k`O{dmobfPtf&}l#Yhf&?$x2u<#A4Vx6R~i{%Yt>LW(Qx>(*ARj~#+*oJjX z2G8aGcr4G2wElxCxXm40Crx3EMzG#)J}WSSP43`UWI)j@Kpw6h+WK^`NiY>aEadxvcNkk)f zls@(p?cV}g8^I2DuvT}L*@MSoc^|jByw<4bM6cQ9GqJquneRj_?-uE8A{a%7J=M2U ztPPkdu-Yi^iIw*l;claie=jON+|hFj{g+Ux6pmS2o@sfH^b3#BiI!y{IpTg4K{iU5M3RKGzR}_?FR8!s)smgbG=GQ;!@dZrJGe1IqmgTA- zR1DAR{|%1{cB+#A78Nw(zaM4~A?T0<(~B{#>&h`H&o%jtX=~;;c5( zh9%!UIgnqua@nZKL9geTFpwDyO>h57wm%zG`HBj3-loD>`M_a7U5|>7y|v!+d?1hP zE>IAfZ$5t-B}kQM>Ti1}O!kD-w1WDvfnG<#x#riC3DLHnNW$(&(%#ssA7O?N?R#YJ@|L1VT0&78p4fwYXgh0y+(RlNpz`ViUs_Vm_j|Gk{EDD+V z|1sRP@YAutme9f?1R?E)M0jl?yv`g0c|6io45EE97FZoJFM}c~d^!B3g^$i7p!sE;X(Dsm2(;IQcT2<$>h3m*-c-=&93wm>yQy}SQj zbB&e9!Or*BJ&HkcjCWlJ+UfAi_~!sXux!ETtM@D`th@pfz^KSubT$w%jwIz#SCs^oep+VK9M#MXYh05ld1#DMUzG_zu zo^6d;2hEm|j5kn3LVePI2<_kF`B6ipr^s{bUjM;J50=7SBF?khkqi>w%bsU{2v=-+ zmN7EY^O?%M7^Hd;eNe1_Pu#o=dRW%Mw^X}Ta4KK?v( z)C})v{N9xVrQ>`fd}UsETk-GV9B{Sc4;4M?scb`%$`d0W^{gmIvg3Q<2-m`aWGgC= zYEc}HM^GM1SY$HCHTd&~QApE?e+XIh?}$aRMJS-M&4)iHFGtKP_=k{14TwdGMO}=& z0)I|jg_w69^(;Q}EjSRoXdjZign))m!Sfp=ImlLZqgBVzgvI|p2Mz=;+ON|sI>RJv z#%VUA2Qf|fMdRj4UQd~^Jf?o4v4IjjMPY!2FP6mls#=V58`MwyAnl5;O+Y5JPiWA}8R5g9 z6I{($Im856&2ju@9;o=IkogI$+4BJo?_NyR^TB$Qd?Wr%_u@|u{#A9%@~r;iC_r8V z<;3PtykmsBS%rHb4}&A2^d}eNPgw|cqSK2$TLK5lTlCO_aQq7YuqsxRqg*bw72yul z0(4qYQHu~Xa>XM^oI*B&nzSA5{-1$jgDe<(iY(^B5wye7&|vx(6vOoC$679oVzMS| z@FH#rkdmY5RgI-0_yz!zfysdBe?c)&ZD4*6Y|>Md&_yITeh}gh$l4V9GO*!%!wkLf z2f?d!L_d!r$Yuqv0ss<$!WFJ0W}%K1GrjO0CQg)vAW+2i7UBSM4%D{r3%ZP+RTct5efQ1mx!YX{S##@ z0LOU(mnCBX0#VsL($&$iVa!Or;kq~XT632sR<{-Pp6#7rVMR>YqyToI}?eiE;UpSIpU$e;{? zk^J{n5k;IGjn#O1B#1?kNAz|CFM{cSFtrGCwz8XY6;J^18Oz4vT?FxFgdRMxWnhsz zm+k|I!rJAsJrCuIHloUd7@Nv2+AyG#9Y@IdKrPT>+Jq8RO2dx875spm#Z7bQM|SuD zJBwQ=Wd+ax_!rY&t=_m-8yN?-f6dK<3^-3M(fi@^(Tw}NU8wp#8p0Mm?X8FVX|wEv0l1Do_fB< zB_|ly-K86p|E5r=zRE>Ss5>}1HiJvKdn9%lv97UL`%4dhiqry`=2H1{be^m_G;b(^^{CU7|maH1E>_GZCJfqr6^7G2BHbf zf!Dx-rGi~Eu*gr20tPB@lH+YKXW<8_hG_qXD5+6Swyg%Rr)4Ga4a2+QHZT4>)rGK> zQLU^f5--8o7>IJQ{2ceKdAvWgt$ZI0YJ2y4$O=elUXe0y(Omi$|QPCFdQ*-km7rfhz z=l9g&mNfPJIfS(iP(_5bT978WOW-iJ-HjA0O1khT2mcm(C!hB`^CT>8MpX}FP1qj= zP;t_t1atUt+S-o4fqxHs;TKrZrntwwjG<(9pLa1*iWN>|GpGTAXGwG1@w>baB1Hz_ z3^=ypky@02IO^h}LIAoP+Xk1!4#%m|Wlfc&>EL3`)S_TO*AWf5&4Nm10_~Wn-s!WI!thrfGZ9Y++CA^QAo8IX1=errCH+_5}zKFXWIKVjW z^ndaqM8>b@oWuQ&=jh&-yx*};-|x5|p>n_D9PW3N(S!RP zxA8aOSv?iM_Wh32yx%bf0rvflD;$y5{f=``pK;o+-Sg}TxNyIt(ewPPneTVBF+tz^ z9Y14W@_xr}(PHa<$G;%Ly5BKHLgju3Z!ulu{f-wUH!uE<&vd_ow`;#6jlkuOe0{m& zj_?};T<&;M7si{zjw8PMa>u>;$~X?M>JzF+l6I8X5$ZS)Y#)Rj=yC@RhRS(Q9%0Q> zjq@-8^3|){3I8SJcB8x-m$R1Mi^=SVzf100_)n=|4(_sbcp}Zi-Ho1|cdc^A@>Y3v zP8}BiZH~JQjx5Wee~oK+8R>kevL({!O$58byH$C&I;(K)3#viT`y$5Ob=%~ZzC1m4 z)1=r_=MNr_6}o2NA_1Bd%dTQ9>c)LmGyVz>i1)gi=Z0{^w%hzy_}$@79(XP9z9W2; zMTWaP&xd<)5O=;ioR6c`-A1^}j51>whx)sC+vY3umCHHVDsL?N<3^w}c1I$1YXXZ? zWltCzuTCKU(g05N-hS|{sYXSCI^uc00k<6Hm$?J^p?T({w-Sl5fdZUR@0~x7L5Xmu zITnFD4Bu3Q!fzWJzdgJc4Zehe;P@mk@m zEVVEGmN))(L3Gxz=soU8PpI;xNDHXd6K=8(rdx-2FIxlr$ z3-OrpEub16A1LAN9Q^P|E`H=#YD)>PR=}69e+u+Zq5dh-KgIl!LS=q<(J@t?hx5Ry zG}}EjTisKjzEY?vi`<_ra6eV(ezJ&XcT02JQ*)^AmFBspLh5?wJVqUrl1ET#&TApa@5^9YH^+_!Nsp* zMpY+fkAW*q<@f(0p&}E$Q;H1DF(R?<9xlOJuF3p%wt$uxPZ)JBz84oBTYFka>X$q zWLD~sIpHolkyQR8q_6|bIg%#-Mc9K~`aX`%`-y&eQJ!RE{kRlywUyB))vZQ#ZbufK zNZK{U$`vwyiv%^A*5dq*8K2cE^b`ra4jhPC2nrd$liD-`iIoAiV<#9gY6fnz+qIHCp4p9jjliFZ!@ie@P+?PNQ!~71!z)%|mT)KXqxw#x zV!IJG&7Vt7BhUtX@V%nK`&TuyI-~rU)%Ipb+k1h9Y<#%Zd=~k5`@@Zk->nN>zCf>) z5l|WE;eD=(ZJuq;%sl{4$-LE^#mvDx956m>1e$zRJwmNvfHgp%rr4Nx&zMyWXv#1$ zpFk%pVw zQME-?b$e=B#sFjD9b-NM+{4=~BUPXdmsJryTEa(<$B4Rd<@JtiK)9zSJ_a{mksQH+ z?ZzFrXk#L9G_JtLJ4TOh!wV$khmHBT6?n{3gVySVwZc zi_4?N9mRd54Z-JCof9C1SuBt2)rj2%o6jNwHBqfhocDcbC9n#5$M&r52EBFV0t?9AmeAhqjFBfS5S;f|i%&^|-6-}Zwn6&guHR@>Pog(&tmjig z@bVoBZ0@bk7H?paYB9>UAp8b~W0v3&^ZG6nzR?J5RgK2_$8|P77D2MCAE)!Jj%ANB z%GV(yU-eMZZexA7WUOA!#L_*ZeC+B7E3fCaKpjW(ON4 zk=qmD{bq&4L?zEk32sk>+sx^@ocRcun+Ufi!X2icDR+=QQVfYE>DMN9kXois;z?YI zC%GklT_U{NJXOcc92JS=P%&}`$0iZpYQ7@z98rnq5KHDQxQS@~1d#|<)trVBT)PpS zHL4$kUkO=^^$XwznYO9whv72HH((5wGXA8h=EU8oT8$kc1~eG*$WW-vsO~|7%zIdO zxDJ!hDDMQd@Wcr-nxzuHJu84KyLbWvQM-I6L2dIR645RZZ4AN#0;cJc&{hfU@SQZm zohrNrWs%!Msr|fFr9B zB%O^?h;8eq!LiYZaTOcZ5O8=@payip@EkQ{AXK%W(0UmH>lvHsnMkN#Uc#uT28@IT z5Lp}M-kt0V?ld0*S&j8iBe8xYOg}wi{t)q5fnyeFue1`dg2WDvy=h1RwMc_mqIO6D z;SC(9ZRQgahxv}Ul?d9wMkjXM$9!eF;Q4rRjlE+myK8<5;i_sa^n&?%uDh{DT3KF) zd7YHEjv=cVBC98dfikxlzLnv!*t&MeD7o7ivdLPTzhvMJ&O~=Rn6rN1$#>GdnWRnZ zxQQ*

ag$R&flfgCV^VDPkC=CS?eS4`7~auo8K(8wq$(*ZRSb@ zgIxm~-4F*5+T?3+?@I^__;@@-#bk2GdKXFN7)6n+$U%rAt)t^-MjIO5C7C%s9q1IJ%ruUi@3!SE<1q4^pE<<&cc%j##; z2F})>OZs(8zZ!wg6<;H{hzN|`%Ghy2!D9S1zm8ZpgjCIYG`q1TueneP-NI~}n1ZOR zA<4W0Q7YK&?&3rY*ZN*_?;v|4;Wm>}LLFlVIU#6dZ06b~rL-iVgtc!}XF<66kYc;F zETY8?^PPW_5x1!)GhR=2vz<|WDUh6mKb4G03d`tO5dFU-Dn(}*k>?~ZMPwO~uv9?` zk;tSGx~_?Qk3^9QnqoH~G7Wq`B?YDkMjmM4?)xQg4*V>35`IZhjtaS&OJarT#7HX8 zRip^rdQz7Hl(ohyx=^LzhFdhXKnJeszk zqY~B25jNQ#$D(~gqSmmrT$YS=tlB#yww4*27_|UNEDm&&L`503l2MMeJX)ga7!cfrVNnWnqgbga<&#M$q{9TC zfMC)tyjloXvC;^vQzB$;1pP=WLrOGu6duw|=sQ&JG890*bC`)tD{{W&G-ivSu zZ%!g_mt58=KrYA7Y?LT#6(FNP$7%_*NQywg$wdg{OE*~Gt9@tP;dQEfrEfP$EGrvJ zK5_`ei+XB;^|aBv9}PUv+a%GV_hA{yd|z)sLuDD`SV7WGn)P0rdmk`F>0@(DukBF0aW z9OKX|M%d`#9D?^riX1z|Bsf^+7K*QD|CvPZB@2SkMNkbwMr!g^tPv|>p624b*h_1K zr51NWuMCCJvAX#O?WFfVNtA{0_LToy1iHIm?l|k#Z{~*UeO0Emd@S_IOg%pu z^K8;~THVt5IGIRYey}#=h4qffySLFJo+ujDg{FG|Us{ z;Aq6-Q(mh3?eRB9TWa7KCDJHt0i&@QK@&l%lF@Sqk6CKttZXItEw%+w&MhOvR$~^d z6)Uw7VztiOXv~6SZkaXktPjl^S}UCeg9WT3uxtpPX=_Aaoi3GF>8`+u3Zysgf!(6U zm<7AV8eMi&mn{>?m{q7PBru!wS`DdxV0^PNtLT2CbO3wus?NiZk}P|Lw$B%+#a^{M z$5>AsR3T_mttynSwK4_MGvtEAPiw2QzNnga3=#YyzoJ0CXI-vozI zvHG!!Zl7v~dT63X6=Nf*M~i_#ZD#34`8IfWK?_GCP{MMADN9k|IzVKb7!07>Q;TQY zjPj<9sz;rCteRc>u;#NHHNS+4KJ16XUGwJ8n-432vHm`!FuVQ_*Fd|fS_xEAqI9?+ zXEjkB*l!+^*j|QE(G>n{>DE7%s9HvuOuUWK#djqzkAYj5o_*CU!+aJ|?jCJEAU6RZ zuY^vv%cy=FX#oCOtwKLb#1CbG7=x~1*JOiHeiW`Xsu53^(L$nn3~4KI9fNf(hJhxC z526x2#RD@2dTIKkIY*%=0qYf3I@-04ja_5*Y?Xd9g!;19$V3b_*ofB4j1tE5sBV$ynAk}I z%iRD&uX%@VjcA8ZX%M`Q?VlvUc@n%u>=sY6Zry`xC32fYLM1^S@Qz((HiGdyA5p&x zT8C7Px7>U((eaX=Y}2h3fVZJNuo_}FD8GqTE6!24v5DJC>ymm6SU)$UX9eE+(-XrG zlZd(D2c&Nlwkf;jxC=EiMl25! zc@*R|{fNX1gQ&;iWIgCsa5eTxeF1QIT6^(yod^XuEvx&aRj8RL5SwY3rsnVei7h>9 z1R#z;AOIf}y1y#HXb*zXo*GQ2CJCxlRR}UwxCYZe<_+f$C$afGNsyWz(&cY3P*wud z69zZ~Wk8l73RsGnLt;dsVee+cKrvsqOPY;_QFdgFhefLi*VqP+ZitVgVGoC8KCs2u z&Gl}6kOhkLHWwS=+n_&Uq5^-+QPKzwU>3tb_dH7>J^pCzSif(?L19FjavGh*3XU!Zdpcc@`*hta$S3j)d*+IZBn ztz`^4N5lK>DM$&i&AeBtjcPrj2LcM{ZBEy1Ay*cyRz_)}1X}zU(v7T*LJ1UIV;2Q2 zN1L+{MNu;kBF||U^L-UHRK^lX8Mdjg6S?Ucn982Pov`s((ec)XD z0i(j(*gR^!x+Q-n={b8Tf{;6~J*2dSqEAW!jvX^@VMduWpG7#^xgn{SomS=bzKT3O znX6V)C>G(W;|F={k7$=Xso4l3E~g3w6j}nW;Iib#3UJ{vqHMZ5n)NA+qn!NjbaV=_$n~&c-OKHFHoZVj56tVa$8tA zIk74>S*RsyDS0_S$@ECA?1&hf$V5fz=O9|B-uYcNOk)f>&0)Hdios2ige%tEgCsEJ z%tJUjB(2^lxj1xq^#)_7s!Wby6ZNG1<_5&tf}b=6{i&+UDEK{rq)KnEY!0Egq~NDE z-v=+nzmx{c*#odIHO?=+KF~B{4)i%6FJ#!CFZi zy8(%;wg^2a<<;pd*yTEn%_~TT6k7v5eT6;iyocjF%6J?fvCpH7|7^kdrwYg8=!l$0 z8E>CQ8E>CQ8E>CQ887Ei#;4AsjK75EQLw#cpAW&|kZkN};d}^BhAhuFs`9YcWmNSl z>~B@|U{8zEW}xe_dY@4RsO*%5iOpVj9LVEtq^p6hX1ZGF!ULLc271NaBkpc-cfpNv z0Jf6X+Gms^WP1@iu1wcO@?xuzIl+!iob2IXbm36}#I_mXV|b36X?mD`G`5thI+*~1 z2sCS?!JDOS6gUQ1n83h+t1ygml1389eUGkWnh#+~p2s_{s1yy$fjon`8!gSE&l@cr z_FQ9q$FS&S@iPUNwJJ1sM6@)UzgI*{hev0*p#eM>ukUcj&%N)mcIFu#Egi|<%cG?^ z(R)U~@XZp2$Io1?^Sh&^moa~Cv@|z5Ym_?h98@A-ea8r$eOR>ga%R6QdQV=o6ptJB z#?M?8o#nwKW-wZIC4bSftDb8dRv(?^O}1=gv^1Y3d!nURM`!t9ytP_(O|oUzSS>4v z-t#{7>*pHLs``#>-LULv=@@25wbw>xVbydo`-u3t{AA0nQ}GATG_>gc=skte()UMa zUGF^iB6Ma~)wJ^9gCCG|6hE6gm&Vk*1lf(JISs_mtnT4@5kax*bPD#ybM6 z@9VUlV71ID>C8IuqZzvIHaSkTTdlK#*_$WMvEq_srB+2CY-0y2&X8=Z^!&BFYxcd);12A=386(`*Qc{?N7|x94)&Tn<+LM>&cxxs~^OXMRkP{BRf%Z zaL|B+RdaCAfQ(qp!5IXyW;F*V4#>UL929-GIB@8oL>xFjKo+Xz;Mjn$<~haIfrUBa zj2OGF=G=v{egUSd@+aK@yXy_WrC_8MxgwUY_GSS$aq7Hj(e zP8rBJ8-eZCW^|wy%(z8t2sl9HdV7?rT89U~X?exN;*IfoSeS5r!_UXm^V~=Ljq>t$ zO}swG-Hy#W{jPX$t^c4r-o7>7;C1hfH;%;H?EWC$V$aJ8Zt$0Hh&SY9l|$j!rpmYS zv2(muzQ%t-UV7giZ}#E=^#)|w?hoQsbY$7&4{wS$=VXPqXO(Z!`-jld^|R~2sQ-*S zAYU7A@#1CnW@N1O2cwd)&RZe%ei}hIEeY(s zZ5Y06kPGP-r*7-wkJRNLC~Fj7+|Q#AXOcWSM=^ejTUM0cN{ZYgkreOp>fHE+ces?K z-Pv?+aLe-3xn$ZPV=hu&mYz|nfGoj6q`*yXS*})fn~=+cs4LQQUGAtZ4{ll5Zcs7L zkN4O%cy`Y4d3N4$m1KhBO55SJirMBC1n|cZ`97=&WVpsobG7Zrw-T>)3ra|0Zbu{W zwRReaooF>mDX_AIHc-%c~pc1+NTWq%opm?Zv$J@aOK z(oS}>?YK#&hmNvW(ta8yOcXrXj{lVHn4}X5&bqP6R!Z_)fKf>P89UYA*p4YWIliJG z76gAh0UIH=&X!^ggtMm`;gzbqPVMDs`k7h$^+sn7i+ba~D~N{NYCTtv6+7ID9T5#> zOEhp{lNC40in}Zt!uM^EH5Y(j#a(X2T@elCNt_4E-io_Y$AwVoRTAe@z!Ke>tF5?v zM$CL)G<1zBUt`6MR(qqN0v`Qm+?Z(ST2&sk;;v&{p%oXpUX|BGXTG0dMbgO+=wfGn zQ0g0tLw;7i4_Of(=A8mi<0EpnAUgA}qoHC+`&R%lEA2POB%}bOmR@E@jItd$R*ETd^8I4kXEo01%=H&&1A3zyI!KRoI|uKHZl`_5U)n3* zQ}FDZ<3?9JJEspLEvMVG)HE?>d69r0+d$L^Nnq1xx<#W|`A7j8O}A+@-KNoWi$=2w zkOC}b`V|)OreAJ5@X-qlA@-Ay0{mq9Rd&Rcw!>?sC_;*Bkm7xI#MQPV-%3%86xSlf z7&`*n&oV!z7g#CAAqD6?{rz^tb+)5W94*5hS-$uoW7Z8VrP*J4xX9m9n)C6Ge(tH3 z(!8aQ6g}p=;sE+ZI;S~=>0klmXd$R-&JB2%-ckk`G-R%WRKO2b|y^U8Jz z^tl0E9LrhyIXra_truVL4E%(@-e};bs3jV#yA$8o2t|WGGyi}F#R7F9d<;SwxW1Rb z&Bmg2IKl}Hq~V=p+g^|TiP&pivLlZZ>uH;ag9zy7)iim>jK{U1yvToloF$}+@%5u{AU*YQ$W`u8L7 z%@0z#08L93x?M6ArY@?b=2!AFA!!*RnKMXxP=5a!Dy7*)eQJ>O#hI%p$&dr-Bb`fA zYuiZ`XK^k?xsU2#W)XYuO_o{KcsM_x@t8cV7Z%bw+j zYf6@^1c@hLsOOfM#y%?Xn0WmV@|^gl&n6_ih?sK(s5K1!yI0@SGu*$elqz6KX}#Jp83 zjr%Ig=Lbk}`k)XbBI)tHNPgN=h|kqDl+O-JI{E0Zxa8}w_}DNS1b_9O@a5F^bD)X5 zwTw3)s`6s^fLL>^Vi(RDiTb5l#>dCM4rxC&<1^exuUNgHSjH2^B#ftASNaEB%!&oy z28I0flTY9)BXd3zE8m9i73NJ2uUvK`yps=9{*{sgj5yAPICopgb9o>C_+`<&G5GdL z<^NT(_o6CRza79O=mXN#t$(L`9C%=NzPOARIn- z_3Y2FAS*}ldoPjga4I=ih~4I@)zD#9_h8oaC+}pr1LnmSuJ8rH{|`wb=ZZYfJkJ$2 zClQ-=-H+V+CU-5%#Zcgrf01u9d`80Eh_IZ=2Rspe(FrFB_NiY-I<6o8Iu4|4rcR++ zVinskvK3K|_Uo!DYE-O@-S1VhUv0=>$$e-L8du_1>d%hNo|L5a1o;A4L5Ch!q~hBm zGCFxa-LFVP(d2`bKeqvggv{&o z2=Uu%p4Cw#jGQm3d=#?}Q_9^uxji=f=AYragD?;tSaOGIRxe=&D$GD+S6$;_{ee+# zg9@+X6tm_Rzh0-mhMM}K-8J}*XptS9&(yvF%^T-1boawxb0WLOB{=Fto;3 zY(V3$Vbl5j5WDpr-TGA1U&bR2vA`w{@z#hn#09od`tMfTb4ljELk`)5Yy!oWoFL=x zm|tKku$uAuXAa~n2&mZK^_GRqY|4*CoO$^E^)o2F3vOH~eSFDqS8f-+64f*g0r(c_ zy7=iMxv=x~KETg#-EWReHbo|M-4<|?^!0}O%YF89($~{{fI`Q5qF1k{Hd#;fXIf9+ zAXQR^c?%MxzYcvuucuwsdb;Hk__&y!9jlt#Fzi@TKSdap)L8srP>4d4*nj7e8k?#L z<*(}8kDM8nlpHl=O{>nYM2aupIM@8+&8(0MYc9*zJ0f$y~SD6M2O>kP)+M1icN?4aB$cnqyIcqgD=c3zuQ!<&7 zO@GG(zL?ebL99M06$?h1t5w zu`t)^{#HJDfxeby>?;j{U{Oz}1sZe6Q)<9Phl*7`P$qKPvcVWHW_oQRJ?#i%U=cn4j zB_s2BDC_fE7z^Qdsr9)QLAZZD!20|>TXn(piOpR=Ao(jg^%-;u^AY@kt1pLWhwtQ$ zU=Y5#iw`p0Z*J&QD%xN1))$a3wf@u8tTkvI=$q7nA@|y!Gw0`XZglbb}$6+1`zag{x+0&pOhkpY33qSMteUjgvNCVRI4SZcYGd-cc;**r) z_;}5k)^LQ-R(wV_FBGZwhD<+N28p1e5#Pjg3<~Pg`9EakzfO;3dgezZGX^s~ zGsXn@FNQwXVcHE&pYMFNFMX;>u?y1Y9U0P0^9|}CEIIh3Wgc|q9`BOj(g~0$Qs0Hn zLearsm7&9$Qv7J_hizi9e*@(&l>7zApPu=%HnBKm?f3HQ)4mtEs zb-d-z_R09&mzv+4*|9(k#R^RB0;s^4)ysfCz$<zXARfNH{p~Xl-O(K zDXU60UH+5yr^$ahN2=1JY= z4)Md_61$aOdFO51=hWYazzlzf2?+JSawo zqoDwdO|}eFvz|*RQ@TXMIh}`quX^Y(YBlP%HW;$Dqs?9;cv`Q}Nc`?MddR z}{u)v#g#BH>;j1^{wJjX@j-VK!DfCsm9W%kIUFbOp^Ch1` z?0GK;U**M}io@nfxMO!@>Qh&l`I@+~Q{P=?zC`!!NYhznHo%RR;L1Xq zxs%~I_7d1%X8usz$lF?G{-d~&H?Pe6JGyU2cyF2cb-M2WE6Fc2zanl-TeHmklDP2% z)v+@3bK>ShRAuHox^G809cAV$xK;UKoMKY=4m_R`sA|RO$(BI-WtfR;c}HOH!jWZW zBa{uC_Vl+d9ED@%vFs~DW~~I}`Ej_r6W>k?<}JJ&@7+n@F$Us0_qbB9@T!pcbp-m` zaGcZKxNs!!K+^Q;vT&nibjW;If{rp~ zNwN+m%V)BVg`@DElLU4#u!DhJEbu%QhQA9}9*_}59fx;ffavZHm@MhnvT(YY$;(XL zENKrj;aGmRyM<-^RMMDe{8hNy7R&xr$ozqngSX#Gn5uy#t&>z}I?2@|T&!82L04BoFL5CdZkUN1}BgFu@~9W0OEHNd<`Qt24W zqrFE3WdM({JQ=`mNT7_23}6S#drHb9wGzR0PxU_l6z{}=&^yhpx7@B+X*NLgO}Hpb zmtyncHF0}mrFnR-OH$C5)FiHau&$p+Y~WwS-5V<{#Cu(ElMt{;I}T7{y^08y z_j0{RF|vLa*z5O}%h3sI{eB#7S-)*%=7+_NwTAULM%-9CSdUlG&Gp+`h9^+W1U5tT z62|hYH@o1KRosKvUFL7Zi$c2Ltuqga7v*%pyWMQ0m&>^m-db}zyUc9odc}L<|@nUIrAn_J+IlWxnN8#OMei2>}f)9uUHdyN#3qHBplS{koSAAm?npp0nJK6u7YFTqozq3JH|yAb`=q^|X)~ zv6wrM5wqi7crn}1V8TVf%Lz9_^2ywiWqFi^eVqBQmXBgBqnNRh1`AGLB9=WdWO}72 zFCMwWnQ4}jz*OT(&cjMZ30=aDvGx{Tj-@Uu`BxGoOQoB$*kqGh5jZiBhbG};N-XEc zET^3d(ibv+NDt^Dt8+6wfGJs>Yv}<=>~**jejFK2uEQQS;xP#n01#B@W@qL}psYh_ zhOEP>2(&5FX;J2*l2F}q=1YeJ`ynmGPNGVy`-({VF!|nzw@6es5_f5A;1=`$= zA*}L{nI+!+?q+zg&QJaaV_V%V@M5XIAzqNK34Z7wFN+_KsMf=ukMp(S#|+s8KbHOr z;_r52lUbJk_r#CSte3cXn6(t*;93a+>1yFG4w);(5A5Ft|2WvE#gECd75*DS=7Zut z<_^@rKOtm>#NXi#Y=Qr#kXa&rkZu$FlS1YM@#nb%8{nT3GK=6x{b>l4jyEsyn5%_1 z4RG6dvs2s}Z+<9ljW_>DcM5O539kchRx*}SgT|XD#hb*N&xtpQH*@Jt;mtI9Q+RW; zc$0YZVeuyM<{I%P@g|4f6yBVX{el$Uj35)pgg1-Na z@a9bk?1MK45olA!#+%)eun*pBmB2oD^DPPNgEwE3A{}`1grssxi@=+^C9n_P+$w>6 z@a9G-Zy>zc@|!fg`CIWO@#Y!vCh=y8cvE=udGV+4X0G^Ccyp`xQ+VSSe;VEtNl*%J zyy8#cjZ6F~yy@y-dsBGRA^sHJw2423H@Fjn^eMclg@16oxgUlx8*lF9GoRE?Am2}G%a;EjpEH2LOL1SIihFFiKi?54-Yn_7Atc(Vomet4rKun*pRSpxgu%|i&ZDP!YJ zP!jgRn@JMb2XDqoU?04>LW*?Y%^z{VtDk&hN?;$nd07Jc;LVE&)Rf93-%R*b8s2&FH}4!}<`mw%A^sHJye$3{-ZY9o4R2~CD1|p$#Gk^Owc=0V%}Vj7 z@Mf|2Q+V^B_)~Zj5`PMBO5o3cH>w5l? zKE_p@$sSwr)_lZS7AE9R^Vh9Rx5wA5gz}qiPfM$&@Nrg?w*RrJvk-YwCQayzKPdvH z=;y6?)h=&-Z1>Z!SH1InybqXV-Q$^>ZN2${OQ-sIO??z>QfdTN?}0Cd&q6?a}yrl!um zdCh|1-?5(AnHswJvE5V88S=21ntIpGKROb*-jMr0YUH}Z%tvWIK7ajNN zrvj||Q;q5+x9m##0xPrR9FD$r;cNBF%MQ41BiAqtd4mA={p2c9?pf=3lUIl5?Ai4W zUaXY;+Es_X@aCw6xGU43A2angsuMVhRp38_C%ofkLGHoaE~QV^;Fa0cs@WHax{ufu zTIX$~0{U*s|bbbm#{Ckbf z@*Y-;Au0UL{$Hv#Pfcr9{CC&qw!8P}=WTKi>UUX<&3PoQysxD~;}qJpMlFUZ(-&CF zrrn2FAC3a?44RS$Sn-HIn#ORo*^9rqJ-7zdqV}zdPyWH))%sf7)z$yJ){8d`{^fo(EDa3D+g3)m+^o5djBE!p4_(F zBMJv|gWHVF?3LQgH`cU^Q zp5?{(pZLUe59m9BSAY5scYL4YA7Y_r{LS(I%u({@r~eQagscTz&dCLfu5<78wYX0x zxd8)$OEPP!{TdgaBwU|Hz$Z848WoD*dcYB3oG+0EVq(8!J-sY-`Wo%p{Vl4^kJkhA z{Kvz`xd)Y85LGeG0yi!quJ47z7pPaV;@t<0-F$N_xhy4=kI_De&TuGm+tdkt$Pd`W*L6f-Ac0Fs?E0D9c6GoVY*LNBK&y>9OHt01a;p&l zBERYcF5tb1=^w|b4t5ssVXU7(lFD;H?gm2+W~lXS10diPs}+DBhWHzC1+UHjORMwf zdb`>!BO*^qfe=OI}621zkznd4=iH6Nh0K)AsO0@-GWqDLhj&UwR^F&q1}B(9Wcamr7#VW zL*V9wlJx!tiz08z3_vefA6Ar%ynC;n2Y5DA9+&pF>sg2uB~M$cM&N19xvaQ(eeOPY zBDckm=0nMK$2br4Tf;EI`Ko0W$c-sCD&cZ8#OK3PxPA>pC;U5d5Y9PaEm#3z5@8C$ zRqK`OA7^~RFNG`ptkV&{ludHjGXkO*MhEt}1HMKZ5SAn7mBJrM0)YePj3AJBIV0Et z%@#N#T=Yq;dPcAv{sWpJq1}xRb|5pNIu8jr7qao|#=AM2^>P5GA_%yT=(o0$>r+DY zQ;ixBg*$J)fz=$rg4R!!3nshwX?Eai@k{9z(>&pqIxQ%`$1PHb*iA(2$Zks1q{MF_Ou>!4ckP4wvC!;Q&k`YPh)}>T(%-j>YBR?$_W-r@&z|{oFQ8aj<+7 z7~_r+)HLJw>G$-LtDNJfBk|d(DmeFnx`<{?|1(!5omsZjejgNtHTOi(iY2 zhcxyp-YzJB93ZP5(g$c6sLjm#$>RJM!TT-bwS*(dr8uay#FY9e}|0%OOb96-k(JJVwU%= zdB2DvTnJncTI;c}UHCgRAoicE*5U!60(r6}G=SHUMUeO9;aBrKrnVWsF4)QbWlHsD z{|*@lj~7DIu;GBU^=0~fWuSrCz0h7bw7(r#D&l~DkFkTT#bYz(_2m2MO#iTc2EeG6 zo(0-{a!B81_nZc@P$B#g1pL)G{0mtglRz`t%y#huL@44_Sl z-3tfl!|pk)bhl+qi$FKn2n!<-x|7?n&h!x$6<16vL zizsdnvO~|OmP;)kwhd}I{$FyAqwm@dWQnwx<6d-5<~Wx#Ile5SJ~}?3hTR9k36NMd4#@G7W)3~aSu@QXse1Zzdt}wd45X4w|Kwi>93Q^Go9w~mQ7By zI$w`pYVzBhz6Bb;)RfNgkAap@a58H9(t^P`e(njVJGQnzRF03)|UmkL%ZknVOL3Ujrw%K zk~6S&?_l>$>|)ZU_aJii)$Sc#6ts6RdQqd2j9zq<6r;Dad#5>HRGM}rR&WYaVw1wU z)*OFucF$?$WcQp{gN<+wiEu)Xu{M5X8ezSsVXyD|tnPE2)3`x@-|mywb9UKdJFrc^ zpLUP#w<~!kkP|!)h43v`;q_Xz_krD{Ecxr%Wv$)YwmMnY7<*g0hgm~oZ3gY0<)^fJ z;)$&AH0}N|Y+`^oFuY%CxKr1N^RJHZey z*qyb#Va>mOmV6RE6R&4G`>FQA(D2HlyoP6KQ-Li5@cN``pUo;{Z%5noEfqV1C7%;` z5MD1j583_7%S|La4Ru`GUL2t$WTaduaVh&hND6 z6F5>b9qY`*@wb!Z)!D0D*O;!|_w7D8KFdyVd_kna2HD=i)DXw@&F&Mdi1L z`Q2{e)1HsR{1*d2E zNiE;D=M(Yq0&F)qevjt()*im4Q|K3Z?VWsZ{!`Z50t4>l4@tYv#PK_Aj^Fj(a(wP2 zfZ0WdsND+gPX+nTd(puPM-wfjsQ|FE&1GaHu86vvnGv(0^4yH9d_ft*Xk@$F3w zqL31MUpmJJzwdLP!LsM1_U=VU$KJhs=!`nUY?Ni0@@-vz&j1|XdjHmtd5X=Y0XTkA zyBFAT>}I@cjvw4bc3*!H>^`a8bD?Eo_o==6)M2vzr#ZyzN+=}WLj%;(o)+Pn-j>{ zCac~H@7=GlPOLqM&XMT}KNgeaVC-IN^{SP}g~)BST$i?Y??8K7zq?etKB?Ugym!yF z%Ms?HhFW3s`r0AzdKqJKWF>n%WOg&*v$?*L*R%B02(!*4uNQo$WR*I)px5_6ygu`J zwP`3bWy)qdXv$`2YJ_RYPaaoF=k;Vg)|REk?pF@Z?q!Y(1r{KyN^WNmY%{ZaR*_Qh z$?p3r_=h>i+cPQnmdP;V=>@hWrQmbDUF3;9fD76EF1J`Y?CpEOuR+-T(6{f2LMe8i z#|DDkv;2YB{W`My4VOm2zo?^oUN%k?ah_z6ui^0|OY-Pmp~PDt&}S20t9O>jm+|Oc zF>?>Wn177y9$2S=fPV*3@RPdTg%x~){oN=HnqB6jdw>G#^kNZ`x$&&OrQp}4*u6~T zA+dYdJM`(d3`h6!Ns2)g{2CHrt1bEy6fTds@NA1{de8 zbtE{@lg{p)NA-wqkUix10_T8j{v+ULI;zKF2T|~Yon-f2e;#%}=uthg-W0oEZEVg) zOCfjKj9$xreYJbSkLH1Qv13UnoXPME+WpYjy>01!m}Od`e!6x~cHfs7XegY9JpK3X z35+RbaDk(GM`38ac=d<-H*O-#Nci&f{8Q7SwO(u_%SlG4CpxSGG z$F<85CI&;Ru-QFEnCoj$)&3&bJxfoqd)Ap`_YP^tK8(ql?W4fys=dRQFZLU)*ykQd zsrD>;0Q-$>+z-I+$$I20suvDyoBnCM-rlZFsrD@YLcHFVXO}bWg*NV!<|{qHOW6Jk zoX+RDd~Dfsqsp@E1DasY$5Fj4{78&Gx@xKRT1%tw-no~v+0E9~nG2rQW6?ul z_uI+oVC2$3z`ujA`=oC7r?LC=(|VBnExo=r#pq>Hq%(S$vniKr3qE-saYy7H>*W7z zQnUHp9MxM#B5Zgs*nOX)dYaugrL+6ibatQIyHDEliE&!sOSk7IS%5a9>yKt759(2T zw07?O341dGSE6tm>Rp`7*MfwI8SiHAKAqj~vW@xmDIj1cZRTqm^NB#0h}}DQp{@Bm z?5OcQWcSCcy5P;pxR9M`f2y+C-VXE z2O&kv!7-dsRB|B(BAs*lp3+V+in5uneKJ2a!51(#DbJGWWEtxueE( zOTJ_Dlig=qhN9XJvUk6Ms{J~rYOmL~Pwbc^0@=N7!?*VAh56${Al3OT+F5HRfYQU~7*9(L52&h8y(*hl%9hCC_dXC{1Fm-hjrxR{bUe!m_3@OJ@FzFySME(7su{d_K>vue(WCLMnRt7Ms|!FzxKv``w+By>{cyc)xzxk zI9p5&v4rJhII73;FQnbC;{=B`vz%!&YWIC@JCt_DG4&8O?gwG_E5YtXo4r^C|Kd*T z`SsBmOSO02!Lv>Q9I~|gUA&VAj$i*Ca{Nqt_eX7x-!W8|T)M&v06AbvnC`UWnZj)yVF(KuZ}%*zU!j)(dVT zyWetQcHjRch6}U%3mny>esAyH@3*!4wiLS;u-OY(#q278pR8Gb7Tn@{daMEb9P^=`%(w4h4b1NQcG1@E zdGCG#YZ5CF6kDz3U-+CJ*KSI?hy8{F&WA?cg)u+1QDd3Y@o>d7l&^6frd!$Dhs94! zx&3#p?SpCqv-`f?zbNhg!p3|UH@s*s?5IOv_ZPKsKOnnLny+|tL7&L}^RRoE^7U&t z&U^Pz=x`S=O6?x#CPLW|&*|A(ed;crt@Y35h`*lse7;}mP!~9-S3_REH50G5-q-lG zC2*ed!+>=Y>KpjYogo?XGx2)pwFFO|OCF+jf2nx=Ve)z$;Ls?*zk{gu88+_qi#vG7 zx6hk9gR1tKczu(t+P9{7y)d=+fY;ks5ih{&Ed`ek5A{2zm$q?lzp;a@6zkj`Ecp7F zo!ou;f}WvoBjXO>QjlJrURdNFKk!OybbC(q3aukUkCZ!pDgNE`RgGwTnNQUmVY zJI}0RPgkF)y97t|qy>C!0*VlM`_ND8CHHQIWY4!Px|fRM58<>PS1?x#(O!&QpMB0HlzQep@onGLA`tO$Gvkr26mfvstUgpB! zuj~=lF3nv$JdK%rWzu?OkArU?)x#@$tSjx6JzBDo2=He+s&`SZ>?QI3PuaW2#+Hre zGVYc!f4^q*+Qv_X2RLybY0_#xuw(7rC*RkbAOtGHUwtQE+qEeJ4ra`!>@Nm=hcVw4 zdo&jC@1JJOw{G31J+mXN&3shvXgbHo+j<=PfuGqC5W?vVy>tJkX!q~_RXtAE!B6I2 z#8JIYTf4_eCNf>3fOPVbY4`dG7U+Nafz7mQ$+o4NH4n`0|7=I~I$_)Xv+#Ncv$OXr zoV?z8O;6+&Jg9q7xA2m@e&C~eT-zz_90OOO|QRZkH2B97`6pq6yqKGO)>S1tAW z)~GW0QN48SUOzE|BboNyi}aKE>Bjs_yuQiS?(wk1a%+MY%XC|Szm)J8YF#}UM7w`? zNA>IpE_Gxy<~w-(0DJfO(!RUd+P)9zvioUo>>L3k@i9GF!U0q7)N6sj`Q8p!xwi3< zo&2f1UMd?%yBEP{@K^OFp=+0h*W;Fk{i1G$qk1^CD!g8+_VTKpKC)-Mtz*gj(CDml zde(z#gS@IIGieCN^6d*~8U^@w5bZw6>*ah|@)n+O{yy6MV8`;4cd*E(?Q@DZa2oN1 zA{Qht-D|Md3$yP7JHj}fNA;}zdP^)2@xg}|$7iD~f2*~XBh_*T-`crPomRuk!uF1a zh6DZ`gxw1r23PR=vHNM;y^IfrfjfTX2G6Q`Pug2cH$CYd{T>^o0@&fFh7{rau znfOf^d{d9;rYrcYGZQngw>DXGI=i+s=679p3++y|;mn>MHZc zGfaS?GwlpcssUn6ov2h$iGwQ&ZUb}@#0G|90&W{{|F#ve+8T&ZZCa*7G`FYo+qx}V z_zSyrm;G&3*6prM7Zos*ut}g4LP3&JwoPAbFD2Us%0hrhe&6qN&Yib}+ER7h?(+GN zx%b@j@|@@WIp?|ec%MQXq(AKHZCCQedw%wdQ4!w`x`wS_4>_*>YB)lVw(xdxHB^H0 z$sK&yFZGdmGpqC!Q4WCDy(uyLzSzyf%;G+^c1xmIuO6M1rRut=Rf0<>? zy`}R@^aq_vD<-N$k&Hp$4}_Dmk0Q5`S$VxepbG{ypW$*Z!a(6=hfTGi+M^ydwB`ZLufCb$g>jK z%O~?xg!b|&JPx6~d@9dDXfL0}(+}FqXYlxgC7Fj#q)sP&)934c&ZlMvti%lPKs8R; z^)&2SIk91IWeJY7{S)=M;SP<1`?(%#>Ig}>Q(0u#sc*o$( z%>IjX>x}8X+4F>DzG`8KnX+0j(aie8nDqxS>uGw{r8suD;JS=?_sUcXF_lQhR7RwM zVFL~IbwCr2uIBL@IWs>nB88^mX5NoR>6wq`aX*oniRx^ZjlmtO=%*P!oj-WaPW<3)VYHF@#7uE|?fP&+1emlUlSvlX@S z!n=-L=3mr&vp*PlR8?+Okw;w>a}uk*SUqN_6ll? zLG>3LbW$>!sQ98g$y1^0T{ttj;)^)6eKa6cqj5&1s=#?r&8h;2IPFvwJOfHq;0($= zsscwdb*c)S$aGLu;2@@MRZ)!dB~?WUk4LVUh!bX2#blg0t17182ur9Gocp9Irs1$l zRWSo6()l05see3B*WQ6)gP}Uow~5$lz(j! z7x&Z@tbN+Q_Ay+7#r)s>M_i-rKT?9yXxZW!4dqF}uNPG3tWoyu7qTvpZmc)Ey zFh5UlEG3YvMVQF)yo_3)^Di-V-9*Zx_SetnqrWNP=Ib2|wHW>IRORcJ0v|?eU1Q2L zl9uvJ=~7elCh+3|%*4+bz$^GUf(wJ6{kRnTbl^hc2WM>qKW`p8&_($;G8|_o6$z1X zKZ^Iq+?rFOi&)%i-;WW7M_nC|kcGM;OfDC7YcY!~)P;YOi@NuspIp?9F=ZL3JB5bn zbE}PgthNvILk6pGlwH0Wq2}h7jw+p(uV#7FTwiIqr*xiA%?hZw1*PSI(s>1HR-u|( zR9aqGITKkY&H?y7z{Jt{7Mtig0~YE*r}r22kN^r<|n%7-~% zHh%g17bYTp@RI9c#mOd%;>`fB6=!Gz9RSSr3qqKB41C}e=fupxc>mR_N>!vd-e0!r zDpge&KRdYU%Gy!!`hvk#pu7FGan)_Gxf=wVYx%YD9a3)v@qp4isLkBsXeB*XRbSHfG*+HP+2f5h=eR+Q{n^IKGc4e` zH&z7iX=$wNZ;YH)Evy?k#os_<3sCtq1_wuQ>io~uwJYf#nto0Ie*!oA?|l4b|Ex&F*!C$Z6nF9Vl$K8ai}g3wn9V z7v9Itd?ECEXESf^JmB7qCU|-$;=!#_7o){m)_?4tSy6yS(VEh43Rq zj9`WvI5~HMhjxdM63DW|gWtR6lizSB-JOXU?^aE0ZEfF)zrbZ1-~n`K-Xqv_<4D8ClAOPYEVj2hD?Zk3uyNo4`aCpadVJNVJ{E{7% z6lF0*t6NrK!fhdB>5%5()>zB&vB$sQPU8KZPLSTUPE!(K5LP9FXeipfX8s|~yi(I@ zXht`xUE^kq+_@4`wi~RN!<21dA)NjgD;TmZasTGKul`GnzKK&LE~IG&FIe(Km#5$m zLINACocOC>Eh+l3CE`Ii_-u^6!*NmMUoZl&A*`Im5duqC2se&6(F3{#&PypO(IQA!b8G=S_i?z6}kH1U9Ax*O=A&o_e7)S)W_?B&`funn6;-Mxs1U}Xg0hTBj1xgUH zLWwLIq@*$*kO2RXh*-;xhSC!7f>2D0nfnA5JT(O!4JDK^aLC*RBLegxugpHQiDP=Z zsoe1uDT<2`P$8ZYHU(IyIHJg6nl`8anUokF}it=V#U!4FO7!u`(#3YvV)DTT!m{HROOO z4GFE?i2%8zRdan#+ zqH(Ta0S<^(ZFt;rP?w`OMO9^Ss31b*D+LQ-a5QJ)!Ij6qpENcEu<)6-9^_EbveXrt zD%<7WSPy~0(Oz7yrmi4dDa{G_rvahXG+Zg*30HC)tuc%heO8@|wIsjteIEQE%!rfy zV0=fDv0%j0Y$c|gvvS7fsw^yr(NmC;c4+RD<+LOqaj2U ziNO>%DAw|wiXE?EDq?B0O9Y?5vEba!;rt0#mad?(G+ZH*7YrF}2sQ;9qANsSg@l)( zuf&d9T06muAm_$f+BPNq8B(GRfsqx!B7~JsU_egVG#qTGvN%G96)7@sh^`Qvh_oKi zOdi_Krrv&W1TC?8T2}x7;}oh*q9Z%CU3DMQ$^yHm`&3&S3SJOiDN>C5dUR02$Qhh9s4C z8KkpV%a7KsoJ%`S>SR-bL+bLBYzhN8dg8$&KYZi{;za?IdT8t#xvg>R!@LCg{6@6$zR~jU`j(_^aSUs z6MLw`2^T2zxVsZ70@TTJ`?Y~n;7F~HyxR#$=$zIR>e*P!bqoGW6v;pLhk5gwqpDY`4sx-z{5Zwe8D++WoFu=plq@WZFLl8&&kAEzSdUyu*jwo zBb$YTl%C)&Rko)u+?XYwLYrJY0U1L2JBg${i&#s?hun{Nwf+)Dhu)-*Z;99%htv4` z!m$}TO9(4FbkJGZdLjcKLeyM60XVv~eo$SGPeE*GpQ3%JPXUmiE#NlGwDyrMj~m_4 z=|03%M$PhS9rrO6{H^x8zVJ(GjW^U2nyI}RS_1k3dWPaSyq*BpaYk<0@q?adPu%~y zw+FK~4oIe+I1Ga$ia4d6L_CBeWwwH3?XGHnqT+l1@T&{^6Kq4-6!{R&%<(6<@8HO$ z@L`s0N^=p%VfDnY8UlQ2Fuu!68gwM?U+|^fqd*DmRtOZrK5p4(W;B@A7LGq5U1V|R zZ_^VGe)+1a3Wn7anf`=PqN2yM{Rz(1o#3v_oA4(DJdsi&%|syZBp?fI?lY9ez1nfm z(l}Hr&~MNqasvpwAR)bWKw>Qom;CF8ev3aL5C~t0o)AgXUIkzfJ%RTeL_QroG409; zA0=dtY)TIX2Pr-AMKgbq4T*@2p2(0-X_%`glwjk{`V#|Rn_Q{6QVm(5Ncj`Y3~>Aj z_hBadU~IGm=$Z_yKp2S2*2B{rgbq5iaRW<`pJFYysn2oQDy6W< zoVm_K<=VIGNoY+a!t>ia31TD1hro-^BxTxz(7FPcLAc6@qpC61@^=evY5!fT2gi-5 zyjS}WmCM(YrQnm6w9IniwWGlDApr#o(*j8P8?&70zH75=m`_*--y=*sIDhxX>k;P2QbblXVOC0o z?!$Nq+TFp1pTepG0iZr$AwslUKe{ZfnD}grXbNJa8+U?{VIpqv2#l9dxs_IuQUtN_vU4yn6RvtOPIQtT)IA zj)x+{i|@`^dBx&~WTf!H(JQnY0KK{W|bTx(`%fpD3Tzbqk$*2dH`?2E({ z^)_~1x'LXPBL;GPeo_T{*e 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

~*F7V|aO_&PCZ(E63(k_aN01Jyq}4WW-vB+vl!V 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�fy&$Dik*zg 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 Hm(PCy=sk3k diff --git a/BWEnv/include/czmq b/BWEnv/include/czmq deleted file mode 160000 index addb912..0000000 --- a/BWEnv/include/czmq +++ /dev/null @@ -1 +0,0 @@ -Subproject commit addb912daf594f0eb4dac80e0c8d46ec8066f113 diff --git a/BWEnv/include/zmq.hpp b/BWEnv/include/zmq.hpp new file mode 100644 index 0000000..9a84bb3 --- /dev/null +++ b/BWEnv/include/zmq.hpp @@ -0,0 +1,832 @@ +/* + Copyright (c) 2009-2011 250bpm s.r.o. + Copyright (c) 2011 Botond Ballo + Copyright (c) 2007-2009 iMatix Corporation + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to + deal in the Software without restriction, including without limitation the + rights to use, copy, modify, merge, publish, distribute, sublicense, and/or + sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS + IN THE SOFTWARE. +*/ + +#ifndef __ZMQ_HPP_INCLUDED__ +#define __ZMQ_HPP_INCLUDED__ + +#if (__cplusplus >= 201103L) + #define ZMQ_CPP11 + #define ZMQ_NOTHROW noexcept + #define ZMQ_EXPLICIT explicit +#elif (defined(_MSC_VER) && (_MSC_VER >= 1900)) + #define ZMQ_CPP11 + #define ZMQ_NOTHROW noexcept + #define ZMQ_EXPLICIT explicit +#else + #define ZMQ_CPP03 + #define ZMQ_NOTHROW + #define ZMQ_EXPLICIT +#endif + +#include + +#include +#include +#include +#include +#include +#include +#include + +#ifdef ZMQ_CPP11 +#include +#include +#endif + +// Detect whether the compiler supports C++11 rvalue references. +#if (defined(__GNUC__) && (__GNUC__ > 4 || \ + (__GNUC__ == 4 && __GNUC_MINOR__ > 2)) && \ + defined(__GXX_EXPERIMENTAL_CXX0X__)) + #define ZMQ_HAS_RVALUE_REFS + #define ZMQ_DELETED_FUNCTION = delete +#elif defined(__clang__) + #if __has_feature(cxx_rvalue_references) + #define ZMQ_HAS_RVALUE_REFS + #endif + + #if __has_feature(cxx_deleted_functions) + #define ZMQ_DELETED_FUNCTION = delete + #else + #define ZMQ_DELETED_FUNCTION + #endif +#elif defined(_MSC_VER) && (_MSC_VER >= 1900) + #define ZMQ_HAS_RVALUE_REFS + #define ZMQ_DELETED_FUNCTION = delete +#elif defined(_MSC_VER) && (_MSC_VER >= 1600) + #define ZMQ_HAS_RVALUE_REFS + #define ZMQ_DELETED_FUNCTION +#else + #define ZMQ_DELETED_FUNCTION +#endif + +#if ZMQ_VERSION >= ZMQ_MAKE_VERSION(3, 3, 0) +#define ZMQ_NEW_MONITOR_EVENT_LAYOUT +#endif + +#if ZMQ_VERSION >= ZMQ_MAKE_VERSION(4, 1, 0) +#define ZMQ_HAS_PROXY_STEERABLE +/* Socket event data */ +typedef struct { + uint16_t event; // id of the event as bitfield + int32_t value ; // value is either error code, fd or reconnect interval +} zmq_event_t; +#endif + +// Avoid using deprecated message receive function when possible +#if ZMQ_VERSION < ZMQ_MAKE_VERSION(3, 2, 0) +# define zmq_msg_recv(msg, socket, flags) zmq_recvmsg(socket, msg, flags) +#endif + + +// In order to prevent unused variable warnings when building in non-debug +// mode use this macro to make assertions. +#ifndef NDEBUG +# define ZMQ_ASSERT(expression) assert(expression) +#else +# define ZMQ_ASSERT(expression) (void)(expression) +#endif + +namespace zmq +{ + + typedef zmq_free_fn free_fn; + typedef zmq_pollitem_t pollitem_t; + + class error_t : public std::exception + { + public: + + error_t () : errnum (zmq_errno ()) {} +#ifdef ZMQ_CPP11 + virtual const char *what () const noexcept + { + return zmq_strerror (errnum); + } +#else + virtual const char *what() const throw () + { + return zmq_strerror(errnum); + } +#endif + int num () const + { + return errnum; + } + + private: + + int errnum; + }; + + inline int poll (zmq_pollitem_t const* items_, size_t nitems_, long timeout_ = -1) + { + int rc = zmq_poll (const_cast(items_), static_cast(nitems_), timeout_); + if (rc < 0) + throw error_t (); + return rc; + } + + inline int poll(zmq_pollitem_t const* items, size_t nitems) + { + return poll(items, nitems, -1); + } + + #ifdef ZMQ_CPP11 + inline int poll(zmq_pollitem_t const* items, size_t nitems, std::chrono::milliseconds timeout) + { + return poll(items, nitems, static_cast(timeout.count())); + } + + inline int poll(std::vector const& items, std::chrono::milliseconds timeout) + { + return poll(items.data(), items.size(), static_cast(timeout.count())); + } + + inline int poll(std::vector const& items, long timeout_ = -1) + { + return poll(items.data(), items.size(), timeout_); + } + #endif + + + + inline void proxy (void *frontend, void *backend, void *capture) + { + int rc = zmq_proxy (frontend, backend, capture); + if (rc != 0) + throw error_t (); + } + +#ifdef ZMQ_HAS_PROXY_STEERABLE + inline void proxy_steerable (void *frontend, void *backend, void *capture, void *control) + { + int rc = zmq_proxy_steerable (frontend, backend, capture, control); + if (rc != 0) + throw error_t (); + } +#endif + + inline void version (int *major_, int *minor_, int *patch_) + { + zmq_version (major_, minor_, patch_); + } + + #ifdef ZMQ_CPP11 + inline std::tuple version() + { + std::tuple v; + zmq_version(&std::get<0>(v), &std::get<1>(v), &std::get<2>(v) ); + return v; + } + #endif + + class message_t + { + friend class socket_t; + + public: + + inline message_t () + { + int rc = zmq_msg_init (&msg); + if (rc != 0) + throw error_t (); + } + + inline explicit message_t (size_t size_) + { + int rc = zmq_msg_init_size (&msg, size_); + if (rc != 0) + throw error_t (); + } + + template message_t(I first, I last): + msg() + { + typedef typename std::iterator_traits::difference_type size_type; + typedef typename std::iterator_traits::value_type value_t; + + size_type const size_ = std::distance(first, last)*sizeof(value_t); + int const rc = zmq_msg_init_size (&msg, size_); + if (rc != 0) + throw error_t (); + value_t* dest = data(); + while (first != last) + { + *dest = *first; + ++dest; ++first; + } + } + + inline message_t (const void *data_, size_t size_) + { + int rc = zmq_msg_init_size (&msg, size_); + if (rc != 0) + throw error_t (); + memcpy(data(), data_, size_); + } + + inline message_t (void *data_, size_t size_, free_fn *ffn_, + void *hint_ = NULL) + { + int rc = zmq_msg_init_data (&msg, data_, size_, ffn_, hint_); + if (rc != 0) + throw error_t (); + } + +#ifdef ZMQ_HAS_RVALUE_REFS + inline message_t (message_t &&rhs): msg (rhs.msg) + { + int rc = zmq_msg_init (&rhs.msg); + if (rc != 0) + throw error_t (); + } + + inline message_t &operator = (message_t &&rhs) ZMQ_NOTHROW + { + std::swap (msg, rhs.msg); + return *this; + } +#endif + + inline ~message_t () ZMQ_NOTHROW + { + int rc = zmq_msg_close (&msg); + ZMQ_ASSERT (rc == 0); + } + + inline void rebuild () + { + int rc = zmq_msg_close (&msg); + if (rc != 0) + throw error_t (); + rc = zmq_msg_init (&msg); + if (rc != 0) + throw error_t (); + } + + inline void rebuild (size_t size_) + { + int rc = zmq_msg_close (&msg); + if (rc != 0) + throw error_t (); + rc = zmq_msg_init_size (&msg, size_); + if (rc != 0) + throw error_t (); + } + + inline void rebuild (const void *data_, size_t size_) + { + int rc = zmq_msg_close (&msg); + if (rc != 0) + throw error_t (); + rc = zmq_msg_init_size (&msg, size_); + if (rc != 0) + throw error_t (); + memcpy(data(), data_, size_); + } + + inline void rebuild (void *data_, size_t size_, free_fn *ffn_, + void *hint_ = NULL) + { + int rc = zmq_msg_close (&msg); + if (rc != 0) + throw error_t (); + rc = zmq_msg_init_data (&msg, data_, size_, ffn_, hint_); + if (rc != 0) + throw error_t (); + } + + inline void move (message_t const *msg_) + { + int rc = zmq_msg_move (&msg, const_cast(&(msg_->msg))); + if (rc != 0) + throw error_t (); + } + + inline void copy (message_t const *msg_) + { + int rc = zmq_msg_copy (&msg, const_cast(&(msg_->msg))); + if (rc != 0) + throw error_t (); + } + + inline bool more () const ZMQ_NOTHROW + { + int rc = zmq_msg_more (const_cast(&msg) ); + return rc != 0; + } + + inline void *data () ZMQ_NOTHROW + { + return zmq_msg_data (&msg); + } + + inline const void* data () const ZMQ_NOTHROW + { + return zmq_msg_data (const_cast(&msg)); + } + + inline size_t size () const ZMQ_NOTHROW + { + return zmq_msg_size (const_cast(&msg)); + } + + template T* data() ZMQ_NOTHROW + { + return static_cast( data() ); + } + + template T const* data() const ZMQ_NOTHROW + { + return static_cast( data() ); + } + + inline bool equal(const message_t* other) const ZMQ_NOTHROW + { + if (size() != other->size()) + return false; + std::string a(data(), size()); + std::string b(other->data(), other->size()); + return a == b; + } + +#if ZMQ_VERSION >= ZMQ_MAKE_VERSION(4, 0, 8) + inline const char* gets(const char *property_) + { + const char* value = zmq_msg_gets (&msg, property_); + if (value == NULL) + throw error_t (); + return value; + } +#endif + + private: + // The underlying message + zmq_msg_t msg; + + // Disable implicit message copying, so that users won't use shared + // messages (less efficient) without being aware of the fact. + message_t (const message_t&) ZMQ_DELETED_FUNCTION; + void operator = (const message_t&) ZMQ_DELETED_FUNCTION; + }; + + class context_t + { + friend class socket_t; + + public: + inline context_t () + { + ptr = zmq_ctx_new (); + if (ptr == NULL) + throw error_t (); + } + + + inline explicit context_t (int io_threads_, int max_sockets_ = ZMQ_MAX_SOCKETS_DFLT) + { + ptr = zmq_ctx_new (); + if (ptr == NULL) + throw error_t (); + + int rc = zmq_ctx_set (ptr, ZMQ_IO_THREADS, io_threads_); + ZMQ_ASSERT (rc == 0); + + rc = zmq_ctx_set (ptr, ZMQ_MAX_SOCKETS, max_sockets_); + ZMQ_ASSERT (rc == 0); + } + +#ifdef ZMQ_HAS_RVALUE_REFS + inline context_t (context_t &&rhs) ZMQ_NOTHROW : ptr (rhs.ptr) + { + rhs.ptr = NULL; + } + inline context_t &operator = (context_t &&rhs) ZMQ_NOTHROW + { + std::swap (ptr, rhs.ptr); + return *this; + } +#endif + + inline ~context_t () ZMQ_NOTHROW + { + close(); + } + + inline void close() ZMQ_NOTHROW + { + if (ptr == NULL) + return; + + int rc = zmq_ctx_destroy (ptr); + ZMQ_ASSERT (rc == 0); + ptr = NULL; + } + + // Be careful with this, it's probably only useful for + // using the C api together with an existing C++ api. + // Normally you should never need to use this. + inline ZMQ_EXPLICIT operator void* () ZMQ_NOTHROW + { + return ptr; + } + + inline ZMQ_EXPLICIT operator void const* () const ZMQ_NOTHROW + { + return ptr; + } + private: + + void *ptr; + + context_t (const context_t&) ZMQ_DELETED_FUNCTION; + void operator = (const context_t&) ZMQ_DELETED_FUNCTION; + }; + + #ifdef ZMQ_CPP11 + enum class socket_type: int + { + req = ZMQ_REQ, + rep = ZMQ_REP, + dealer = ZMQ_DEALER, + router = ZMQ_ROUTER, + pub = ZMQ_PUB, + sub = ZMQ_SUB, + xpub = ZMQ_XPUB, + xsub = ZMQ_XSUB, + push = ZMQ_PUSH, + pull = ZMQ_PULL, +#if ZMQ_VERSION_MAJOR < 4 + pair = ZMQ_PAIR +#else + pair = ZMQ_PAIR, + stream = ZMQ_STREAM +#endif + }; + #endif + + class socket_t + { + friend class monitor_t; + public: + inline socket_t(context_t& context_, int type_) + { + init(context_, type_); + } + + #ifdef ZMQ_CPP11 + inline socket_t(context_t& context_, socket_type type_) + { + init(context_, static_cast(type_)); + } + #endif + +#ifdef ZMQ_HAS_RVALUE_REFS + inline socket_t(socket_t&& rhs) ZMQ_NOTHROW : ptr(rhs.ptr) + { + rhs.ptr = NULL; + } + inline socket_t& operator=(socket_t&& rhs) ZMQ_NOTHROW + { + std::swap(ptr, rhs.ptr); + return *this; + } +#endif + + inline ~socket_t () ZMQ_NOTHROW + { + close(); + } + + inline operator void* () ZMQ_NOTHROW + { + return ptr; + } + + inline operator void const* () const ZMQ_NOTHROW + { + return ptr; + } + + inline void close() ZMQ_NOTHROW + { + if(ptr == NULL) + // already closed + return ; + int rc = zmq_close (ptr); + ZMQ_ASSERT (rc == 0); + ptr = 0 ; + } + + template void setsockopt(int option_, T const& optval) + { + setsockopt(option_, &optval, sizeof(T) ); + } + + inline void setsockopt (int option_, const void *optval_, + size_t optvallen_) + { + int rc = zmq_setsockopt (ptr, option_, optval_, optvallen_); + if (rc != 0) + throw error_t (); + } + + inline void getsockopt (int option_, void *optval_, + size_t *optvallen_) const + { + int rc = zmq_getsockopt (ptr, option_, optval_, optvallen_); + if (rc != 0) + throw error_t (); + } + + template T getsockopt(int option_) const + { + T optval; + size_t optlen = sizeof(T); + getsockopt(option_, &optval, &optlen ); + return optval; + } + + inline void bind(std::string const& addr) + { + bind(addr.c_str()); + } + + inline void bind (const char *addr_) + { + int rc = zmq_bind (ptr, addr_); + if (rc != 0) + throw error_t (); + } + + inline void unbind(std::string const& addr) + { + unbind(addr.c_str()); + } + + inline void unbind (const char *addr_) + { + int rc = zmq_unbind (ptr, addr_); + if (rc != 0) + throw error_t (); + } + + inline void connect(std::string const& addr) + { + connect(addr.c_str()); + } + + inline void connect (const char *addr_) + { + int rc = zmq_connect (ptr, addr_); + if (rc != 0) + throw error_t (); + } + + inline void disconnect(std::string const& addr) + { + disconnect(addr.c_str()); + } + + inline void disconnect (const char *addr_) + { + int rc = zmq_disconnect (ptr, addr_); + if (rc != 0) + throw error_t (); + } + + inline bool connected() const ZMQ_NOTHROW + { + return(ptr != NULL); + } + + inline size_t send (const void *buf_, size_t len_, int flags_ = 0) + { + int nbytes = zmq_send (ptr, buf_, len_, flags_); + if (nbytes >= 0) + return (size_t) nbytes; + if (zmq_errno () == EAGAIN) + return 0; + throw error_t (); + } + + inline bool send (message_t &msg_, int flags_ = 0) + { + int nbytes = zmq_msg_send (&(msg_.msg), ptr, flags_); + if (nbytes >= 0) + return true; + if (zmq_errno () == EAGAIN) + return false; + throw error_t (); + } + + template bool send(I first, I last, int flags_=0) + { + zmq::message_t msg(first, last); + return send(msg, flags_); + } + +#ifdef ZMQ_HAS_RVALUE_REFS + inline bool send (message_t &&msg_, int flags_ = 0) + { + return send(msg_, flags_); + } +#endif + + inline size_t recv (void *buf_, size_t len_, int flags_ = 0) + { + int nbytes = zmq_recv (ptr, buf_, len_, flags_); + if (nbytes >= 0) + return (size_t) nbytes; + if (zmq_errno () == EAGAIN) + return 0; + throw error_t (); + } + + inline bool recv (message_t *msg_, int flags_ = 0) + { + int nbytes = zmq_msg_recv (&(msg_->msg), ptr, flags_); + if (nbytes >= 0) + return true; + if (zmq_errno () == EAGAIN) + return false; + throw error_t (); + } + + private: + inline void init(context_t& context_, int type_) + { + ctxptr = context_.ptr; + ptr = zmq_socket (context_.ptr, type_ ); + if (ptr == NULL) + throw error_t (); + } + + void *ptr; + void *ctxptr; + + socket_t (const socket_t&) ZMQ_DELETED_FUNCTION; + void operator = (const socket_t&) ZMQ_DELETED_FUNCTION; + }; + + class monitor_t + { + public: + monitor_t() : socketPtr(NULL) {} + virtual ~monitor_t() {} + + void monitor(socket_t &socket, std::string const& addr, int events = ZMQ_EVENT_ALL) + { + monitor(socket, addr.c_str(), events); + } + + void monitor(socket_t &socket, const char *addr_, int events = ZMQ_EVENT_ALL) + { + int rc = zmq_socket_monitor(socket.ptr, addr_, events); + if (rc != 0) + throw error_t (); + + socketPtr = socket.ptr; + void *s = zmq_socket (socket.ctxptr, ZMQ_PAIR); + assert (s); + + rc = zmq_connect (s, addr_); + assert (rc == 0); + + on_monitor_started(); + + while (true) { + zmq_msg_t eventMsg; + zmq_msg_init (&eventMsg); + rc = zmq_msg_recv (&eventMsg, s, 0); + if (rc == -1 && zmq_errno() == ETERM) + break; + assert (rc != -1); +#if ZMQ_VERSION_MAJOR >= 4 + const char* data = static_cast(zmq_msg_data(&eventMsg)); + zmq_event_t msgEvent; + memcpy(&msgEvent.event, data, sizeof(uint16_t)); data += sizeof(uint16_t); + memcpy(&msgEvent.value, data, sizeof(int32_t)); + zmq_event_t* event = &msgEvent; +#else + zmq_event_t* event = static_cast(zmq_msg_data(&eventMsg)); +#endif + +#ifdef ZMQ_NEW_MONITOR_EVENT_LAYOUT + zmq_msg_t addrMsg; + zmq_msg_init (&addrMsg); + rc = zmq_msg_recv (&addrMsg, s, 0); + if (rc == -1 && zmq_errno() == ETERM) + break; + assert (rc != -1); + const char* str = static_cast(zmq_msg_data (&addrMsg)); + std::string address(str, str + zmq_msg_size(&addrMsg)); + zmq_msg_close (&addrMsg); +#else + // Bit of a hack, but all events in the zmq_event_t union have the same layout so this will work for all event types. + std::string address = event->data.connected.addr; +#endif + +#ifdef ZMQ_EVENT_MONITOR_STOPPED + if (event->event == ZMQ_EVENT_MONITOR_STOPPED) + break; +#endif + + switch (event->event) { + case ZMQ_EVENT_CONNECTED: + on_event_connected(*event, address.c_str()); + break; + case ZMQ_EVENT_CONNECT_DELAYED: + on_event_connect_delayed(*event, address.c_str()); + break; + case ZMQ_EVENT_CONNECT_RETRIED: + on_event_connect_retried(*event, address.c_str()); + break; + case ZMQ_EVENT_LISTENING: + on_event_listening(*event, address.c_str()); + break; + case ZMQ_EVENT_BIND_FAILED: + on_event_bind_failed(*event, address.c_str()); + break; + case ZMQ_EVENT_ACCEPTED: + on_event_accepted(*event, address.c_str()); + break; + case ZMQ_EVENT_ACCEPT_FAILED: + on_event_accept_failed(*event, address.c_str()); + break; + case ZMQ_EVENT_CLOSED: + on_event_closed(*event, address.c_str()); + break; + case ZMQ_EVENT_CLOSE_FAILED: + on_event_close_failed(*event, address.c_str()); + break; + case ZMQ_EVENT_DISCONNECTED: + on_event_disconnected(*event, address.c_str()); + break; +#ifdef ZMQ_BUILD_DRAFT_API + case ZMQ_EVENT_HANDSHAKE_FAILED: + on_event_handshake_failed(*event, address.c_str()); + break; + case ZMQ_EVENT_HANDSHAKE_SUCCEED: + on_event_handshake_succeed(*event, address.c_str()); + break; +#endif + default: + on_event_unknown(*event, address.c_str()); + break; + } + zmq_msg_close (&eventMsg); + } + zmq_close (s); + socketPtr = NULL; + } + +#ifdef ZMQ_EVENT_MONITOR_STOPPED + void abort() + { + if (socketPtr) + zmq_socket_monitor(socketPtr, NULL, 0); + } +#endif + virtual void on_monitor_started() {} + virtual void on_event_connected(const zmq_event_t &event_, const char* addr_) { (void)event_; (void)addr_; } + virtual void on_event_connect_delayed(const zmq_event_t &event_, const char* addr_) { (void)event_; (void)addr_; } + virtual void on_event_connect_retried(const zmq_event_t &event_, const char* addr_) { (void)event_; (void)addr_; } + virtual void on_event_listening(const zmq_event_t &event_, const char* addr_) { (void)event_; (void)addr_; } + virtual void on_event_bind_failed(const zmq_event_t &event_, const char* addr_) { (void)event_; (void)addr_; } + virtual void on_event_accepted(const zmq_event_t &event_, const char* addr_) { (void)event_; (void)addr_; } + virtual void on_event_accept_failed(const zmq_event_t &event_, const char* addr_) { (void)event_; (void)addr_; } + virtual void on_event_closed(const zmq_event_t &event_, const char* addr_) { (void)event_; (void)addr_; } + virtual void on_event_close_failed(const zmq_event_t &event_, const char* addr_) { (void)event_; (void)addr_; } + virtual void on_event_disconnected(const zmq_event_t &event_, const char* addr_) { (void)event_; (void)addr_; } + virtual void on_event_handshake_failed(const zmq_event_t &event_, const char* addr_) { (void) event_; (void) addr_; } + virtual void on_event_handshake_succeed(const zmq_event_t &event_, const char* addr_) { (void) event_; (void) addr_; } + virtual void on_event_unknown(const zmq_event_t &event_, const char* addr_) { (void)event_; (void)addr_; } + private: + void* socketPtr; + }; +} + +#endif diff --git a/BWEnv/include/zmq_server.h b/BWEnv/include/zmq_server.h index 3dbaab8..f824740 100755 --- a/BWEnv/include/zmq_server.h +++ b/BWEnv/include/zmq_server.h @@ -12,7 +12,7 @@ #define _WINSOCKAPI_ #define WIN32_LEAN_AND_MEAN -#include +#include "zmq.hpp" #include "controller.h" #include "messages_generated.h" @@ -26,7 +26,8 @@ class ZMQ_server static const int max_instances = 1000; Controller *controller; - zsock_t* server_sock = nullptr; + std::unique_ptr ctx; + std::unique_ptr sock; int port = 0; public: bool server_sock_connected; diff --git a/BWEnv/lib/LICENSE-czmq b/BWEnv/lib/LICENSE-czmq deleted file mode 100644 index 61e75cb..0000000 --- a/BWEnv/lib/LICENSE-czmq +++ /dev/null @@ -1,378 +0,0 @@ -The following software is included in this product: czmq. This software contains the following license and notice below. - -Copyright (c) 1991-2014 iMatix Corporation -Copyright (c) 2014-2016 Brocade Communications Systems Inc. - -Mozilla Public License Version 2.0 -================================== - -1. Definitions --------------- - -1.1. "Contributor" - means each individual or legal entity that creates, contributes to - the creation of, or owns Covered Software. - -1.2. "Contributor Version" - means the combination of the Contributions of others (if any) used - by a Contributor and that particular Contributor's Contribution. - -1.3. "Contribution" - means Covered Software of a particular Contributor. - -1.4. "Covered Software" - means Source Code Form to which the initial Contributor has attached - the notice in Exhibit A, the Executable Form of such Source Code - Form, and Modifications of such Source Code Form, in each case - including portions thereof. - -1.5. "Incompatible With Secondary Licenses" - means - - (a) that the initial Contributor has attached the notice described - in Exhibit B to the Covered Software; or - - (b) that the Covered Software was made available under the terms of - version 1.1 or earlier of the License, but not also under the - terms of a Secondary License. - -1.6. "Executable Form" - means any form of the work other than Source Code Form. - -1.7. "Larger Work" - means a work that combines Covered Software with other material, in - a separate file or files, that is not Covered Software. - -1.8. "License" - means this document. - -1.9. "Licensable" - means having the right to grant, to the maximum extent possible, - whether at the time of the initial grant or subsequently, any and - all of the rights conveyed by this License. - -1.10. "Modifications" - means any of the following: - - (a) any file in Source Code Form that results from an addition to, - deletion from, or modification of the contents of Covered - Software; or - - (b) any new file in Source Code Form that contains any Covered - Software. - -1.11. "Patent Claims" of a Contributor - means any patent claim(s), including without limitation, method, - process, and apparatus claims, in any patent Licensable by such - Contributor that would be infringed, but for the grant of the - License, by the making, using, selling, offering for sale, having - made, import, or transfer of either its Contributions or its - Contributor Version. - -1.12. "Secondary License" - means either the GNU General Public License, Version 2.0, the GNU - Lesser General Public License, Version 2.1, the GNU Affero General - Public License, Version 3.0, or any later versions of those - licenses. - -1.13. "Source Code Form" - means the form of the work preferred for making modifications. - -1.14. "You" (or "Your") - means an individual or a legal entity exercising rights under this - License. For legal entities, "You" includes any entity that - controls, is controlled by, or is under common control with You. For - purposes of this definition, "control" means (a) the power, direct - or indirect, to cause the direction or management of such entity, - whether by contract or otherwise, or (b) ownership of more than - fifty percent (50%) of the outstanding shares or beneficial - ownership of such entity. - -2. License Grants and Conditions --------------------------------- - -2.1. Grants - -Each Contributor hereby grants You a world-wide, royalty-free, -non-exclusive license: - -(a) under intellectual property rights (other than patent or trademark) - Licensable by such Contributor to use, reproduce, make available, - modify, display, perform, distribute, and otherwise exploit its - Contributions, either on an unmodified basis, with Modifications, or - as part of a Larger Work; and - -(b) under Patent Claims of such Contributor to make, use, sell, offer - for sale, have made, import, and otherwise transfer either its - Contributions or its Contributor Version. - -2.2. Effective Date - -The licenses granted in Section 2.1 with respect to any Contribution -become effective for each Contribution on the date the Contributor first -distributes such Contribution. - -2.3. Limitations on Grant Scope - -The licenses granted in this Section 2 are the only rights granted under -this License. No additional rights or licenses will be implied from the -distribution or licensing of Covered Software under this License. -Notwithstanding Section 2.1(b) above, no patent license is granted by a -Contributor: - -(a) for any code that a Contributor has removed from Covered Software; - or - -(b) for infringements caused by: (i) Your and any other third party's - modifications of Covered Software, or (ii) the combination of its - Contributions with other software (except as part of its Contributor - Version); or - -(c) under Patent Claims infringed by Covered Software in the absence of - its Contributions. - -This License does not grant any rights in the trademarks, service marks, -or logos of any Contributor (except as may be necessary to comply with -the notice requirements in Section 3.4). - -2.4. Subsequent Licenses - -No Contributor makes additional grants as a result of Your choice to -distribute the Covered Software under a subsequent version of this -License (see Section 10.2) or under the terms of a Secondary License (if -permitted under the terms of Section 3.3). - -2.5. Representation - -Each Contributor represents that the Contributor believes its -Contributions are its original creation(s) or it has sufficient rights -to grant the rights to its Contributions conveyed by this License. - -2.6. Fair Use - -This License is not intended to limit any rights You have under -applicable copyright doctrines of fair use, fair dealing, or other -equivalents. - -2.7. Conditions - -Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted -in Section 2.1. - -3. Responsibilities -------------------- - -3.1. Distribution of Source Form - -All distribution of Covered Software in Source Code Form, including any -Modifications that You create or to which You contribute, must be under -the terms of this License. You must inform recipients that the Source -Code Form of the Covered Software is governed by the terms of this -License, and how they can obtain a copy of this License. You may not -attempt to alter or restrict the recipients' rights in the Source Code -Form. - -3.2. Distribution of Executable Form - -If You distribute Covered Software in Executable Form then: - -(a) such Covered Software must also be made available in Source Code - Form, as described in Section 3.1, and You must inform recipients of - the Executable Form how they can obtain a copy of such Source Code - Form by reasonable means in a timely manner, at a charge no more - than the cost of distribution to the recipient; and - -(b) You may distribute such Executable Form under the terms of this - License, or sublicense it under different terms, provided that the - license for the Executable Form does not attempt to limit or alter - the recipients' rights in the Source Code Form under this License. - -3.3. Distribution of a Larger Work - -You may create and distribute a Larger Work under terms of Your choice, -provided that You also comply with the requirements of this License for -the Covered Software. If the Larger Work is a combination of Covered -Software with a work governed by one or more Secondary Licenses, and the -Covered Software is not Incompatible With Secondary Licenses, this -License permits You to additionally distribute such Covered Software -under the terms of such Secondary License(s), so that the recipient of -the Larger Work may, at their option, further distribute the Covered -Software under the terms of either this License or such Secondary -License(s). - -3.4. Notices - -You may not remove or alter the substance of any license notices -(including copyright notices, patent notices, disclaimers of warranty, -or limitations of liability) contained within the Source Code Form of -the Covered Software, except that You may alter any license notices to -the extent required to remedy known factual inaccuracies. - -3.5. Application of Additional Terms - -You may choose to offer, and to charge a fee for, warranty, support, -indemnity or liability obligations to one or more recipients of Covered -Software. However, You may do so only on Your own behalf, and not on -behalf of any Contributor. You must make it absolutely clear that any -such warranty, support, indemnity, or liability obligation is offered by -You alone, and You hereby agree to indemnify every Contributor for any -liability incurred by such Contributor as a result of warranty, support, -indemnity or liability terms You offer. You may include additional -disclaimers of warranty and limitations of liability specific to any -jurisdiction. - -4. Inability to Comply Due to Statute or Regulation ---------------------------------------------------- - -If it is impossible for You to comply with any of the terms of this -License with respect to some or all of the Covered Software due to -statute, judicial order, or regulation then You must: (a) comply with -the terms of this License to the maximum extent possible; and (b) -describe the limitations and the code they affect. Such description must -be placed in a text file included with all distributions of the Covered -Software under this License. Except to the extent prohibited by statute -or regulation, such description must be sufficiently detailed for a -recipient of ordinary skill to be able to understand it. - -5. Termination --------------- - -5.1. The rights granted under this License will terminate automatically -if You fail to comply with any of its terms. However, if You become -compliant, then the rights granted under this License from a particular -Contributor are reinstated (a) provisionally, unless and until such -Contributor explicitly and finally terminates Your grants, and (b) on an -ongoing basis, if such Contributor fails to notify You of the -non-compliance by some reasonable means prior to 60 days after You have -come back into compliance. Moreover, Your grants from a particular -Contributor are reinstated on an ongoing basis if such Contributor -notifies You of the non-compliance by some reasonable means, this is the -first time You have received notice of non-compliance with this License -from such Contributor, and You become compliant prior to 30 days after -Your receipt of the notice. - -5.2. If You initiate litigation against any entity by asserting a patent -infringement claim (excluding declaratory judgment actions, -counter-claims, and cross-claims) alleging that a Contributor Version -directly or indirectly infringes any patent, then the rights granted to -You by any and all Contributors for the Covered Software under Section -2.1 of this License shall terminate. - -5.3. In the event of termination under Sections 5.1 or 5.2 above, all -end user license agreements (excluding distributors and resellers) which -have been validly granted by You or Your distributors under this License -prior to termination shall survive termination. - -************************************************************************ -* * -* 6. Disclaimer of Warranty * -* ------------------------- * -* * -* Covered Software is provided under this License on an "as is" * -* basis, without warranty of any kind, either expressed, implied, or * -* statutory, including, without limitation, warranties that the * -* Covered Software is free of defects, merchantable, fit for a * -* particular purpose or non-infringing. The entire risk as to the * -* quality and performance of the Covered Software is with You. * -* Should any Covered Software prove defective in any respect, You * -* (not any Contributor) assume the cost of any necessary servicing, * -* repair, or correction. This disclaimer of warranty constitutes an * -* essential part of this License. No use of any Covered Software is * -* authorized under this License except under this disclaimer. * -* * -************************************************************************ - -************************************************************************ -* * -* 7. Limitation of Liability * -* -------------------------- * -* * -* Under no circumstances and under no legal theory, whether tort * -* (including negligence), contract, or otherwise, shall any * -* Contributor, or anyone who distributes Covered Software as * -* permitted above, be liable to You for any direct, indirect, * -* special, incidental, or consequential damages of any character * -* including, without limitation, damages for lost profits, loss of * -* goodwill, work stoppage, computer failure or malfunction, or any * -* and all other commercial damages or losses, even if such party * -* shall have been informed of the possibility of such damages. This * -* limitation of liability shall not apply to liability for death or * -* personal injury resulting from such party's negligence to the * -* extent applicable law prohibits such limitation. Some * -* jurisdictions do not allow the exclusion or limitation of * -* incidental or consequential damages, so this exclusion and * -* limitation may not apply to You. * -* * -************************************************************************ - -8. Litigation -------------- - -Any litigation relating to this License may be brought only in the -courts of a jurisdiction where the defendant maintains its principal -place of business and such litigation shall be governed by laws of that -jurisdiction, without reference to its conflict-of-law provisions. -Nothing in this Section shall prevent a party's ability to bring -cross-claims or counter-claims. - -9. Miscellaneous ----------------- - -This License represents the complete agreement concerning the subject -matter hereof. If any provision of this License is held to be -unenforceable, such provision shall be reformed only to the extent -necessary to make it enforceable. Any law or regulation which provides -that the language of a contract shall be construed against the drafter -shall not be used to construe this License against a Contributor. - -10. Versions of the License ---------------------------- - -10.1. New Versions - -Mozilla Foundation is the license steward. Except as provided in Section -10.3, no one other than the license steward has the right to modify or -publish new versions of this License. Each version will be given a -distinguishing version number. - -10.2. Effect of New Versions - -You may distribute the Covered Software under the terms of the version -of the License under which You originally received the Covered Software, -or under the terms of any subsequent version published by the license -steward. - -10.3. Modified Versions - -If you create software not governed by this License, and you want to -create a new license for such software, you may create and use a -modified version of this License if you rename the license and remove -any references to the name of the license steward (except to note that -such modified license differs from this License). - -10.4. Distributing Source Code Form that is Incompatible With Secondary -Licenses - -If You choose to distribute Source Code Form that is Incompatible With -Secondary Licenses under the terms of this version of the License, the -notice described in Exhibit B of this License must be attached. - -Exhibit A - Source Code Form License Notice -------------------------------------------- - - This Source Code Form is subject to the terms of the Mozilla Public - License, v. 2.0. If a copy of the MPL was not distributed with this - file, You can obtain one at http://mozilla.org/MPL/2.0/. - -If it is not possible or desirable to put the notice in a particular -file, then You may include the notice in a location (such as a LICENSE -file in a relevant directory) where a recipient would be likely to look -for such a notice. - -You may add additional accurate notices of copyright ownership. - -Exhibit B - "Incompatible With Secondary Licenses" Notice ---------------------------------------------------------- - - This Source Code Form is "Incompatible With Secondary Licenses", as - defined by the Mozilla Public License, v. 2.0. \ No newline at end of file diff --git a/BWEnv/lib/README b/BWEnv/lib/README index 4225704..89296cd 100644 --- a/BWEnv/lib/README +++ b/BWEnv/lib/README @@ -1,2 +1,2 @@ -The file czmq.lib, is provided "as is", it is made from czmq, which can be -found at: https://github.com/zeromq/czmq +The file libzmq.lib, is provided "as is", it is made from libzmq, which can be +found at: https://github.com/zeromq/libzmq diff --git a/BWEnv/lib/czmq.lib b/BWEnv/lib/czmq.lib deleted file mode 100644 index ee38d3b2582456fefcd2e1541242e92468b2b644..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 164678 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 -void sendFBObject(zsock_t* sock, const T* obj) { +template +void sendFBObject(zmq::socket_t& sock, const T* obj) { flatbuffers::FlatBufferBuilder fbb; auto payload = T::TableType::Pack(fbb, obj); auto root = torchcraft::fbs::CreateMessage( - fbb, torchcraft::fbs::AnyTraits::enum_value, payload.Union()); + fbb, + torchcraft::fbs::AnyTraits::enum_value, + payload.Union()); torchcraft::fbs::FinishMessageBuffer(fbb, root); - if (zsock_send(sock, "b", fbb.GetBufferPointer(), fbb.GetSize()) != 0) { - throw runtime_error("ZMQ_server::send(): zmq_send failed."); + try { + size_t res = sock.send(fbb.GetBufferPointer(), fbb.GetSize()); + if (res != fbb.GetSize()) { + throw runtime_error( + "ZMQ_server::send*(): zmq_send failed: no/partial send"); + } + } catch (const zmq::error_t& e) { + throw runtime_error( + string("ZMQ_server::send*(): zmq_send failed: ") + e.what()); } } @@ -51,7 +60,8 @@ void ZMQ_server::connect() { if (this->server_sock_connected) return; - zsys_shutdown(); /* reinitialize zsys*/ + // reinit ZMQ context + ctx = std::make_unique(); if (this->port == 0) { for (int port = ZMQ_server::starting_port; @@ -60,17 +70,18 @@ void ZMQ_server::connect() port++) { stringstream url; url << "tcp://*:" << port; - this->server_sock = zsock_new(ZMQ_REP); + this->sock = std::make_unique(*ctx.get(), zmq::socket_type::rep); #ifndef _WIN32 - zsock_set_ipv6(this->server_sock, 1); + this->sock->setsockopt(ZMQ_IPV6, 1); #endif - auto ret = zsock_bind(this->server_sock, "%s", url.str().c_str()); - if (ret >= 0) { + try { + this->sock->bind(url.str()); this->port = port; break; + } catch (...) { + // Try next port } - zsock_destroy(&this->server_sock); - this->server_sock = nullptr; + this->sock = nullptr; } } else { @@ -81,46 +92,58 @@ void ZMQ_server::connect() while (success == -1) { stringstream url; url << "tcp://*:" << this->port; - zsock_destroy(&this->server_sock); - this->server_sock = zsock_new(ZMQ_REP); + this->sock = nullptr; + this->sock = std::make_unique(*ctx.get(), zmq::socket_type::rep); #ifdef _WIN32 - if (setsockopt(zsock_fd(this->server_sock), SOL_SOCKET, SO_REUSEADDR, (char *)&reuse, sizeof(reuse)) != 0) { + if (setsockopt(this->sock->getsockopt(ZMQ_FD), SOL_SOCKET, SO_REUSEADDR, (char *)&reuse, sizeof(reuse)) != 0) { std::cout << "SO_REUSEADDR setsockopt failed with " << WSAGetLastError() << std::endl; } #else - zsock_set_ipv6(this->server_sock, 1); + this->sock->setsockopt(ZMQ_IPV6, 1); #endif - success = zsock_bind(this->server_sock, "%s", url.str().c_str()); + try { + this->sock->bind(url.str()); + } catch (const zmq::error_t& e) { + throw runtime_error(string("ZMQ_server::connect(): bind failed: ") + e.what()); + } std::this_thread::sleep_for(std::chrono::seconds(1)); } } - if (this->server_sock == nullptr) { + if (this->sock == nullptr) { throw runtime_error("No more free ports for ZMQ server socket."); } this->server_sock_connected = true; std::cout << "TorchCraft server listening on port " << port << std::endl; - zchunk_t *chunk; - if (zsock_recv(this->server_sock, "c", &chunk) != 0) { - throw runtime_error("ZMQ_server::connect(): zmq_recv failed."); + zmq::message_t zmsg; + try { + bool res = this->sock->recv(&zmsg); + if (!res) { + throw runtime_error("ZMQ_server::connect(): receive failed."); + } + } catch (const zmq::error_t& e) { + throw runtime_error(string("ZMQ_server::connect(): receive failed: ") + e.what()); } - if (zchunk_size(chunk) == 0) { + if (zmsg.size() == 0) { // Retry torchcraft::fbs::ErrorT err; sendError(&err); - zchunk_destroy(&chunk); - if (zsock_recv(this->server_sock, "c", &chunk) != 0) { - throw runtime_error("ZMQ_server::connect(): zsock_recv failed."); + try { + bool res = this->sock->recv(&zmsg); + if (!res) { + throw runtime_error("ZMQ_server::connect(): receive failed."); + } + } catch (const zmq::error_t& e) { + throw runtime_error(string("ZMQ_server::connect(): receive failed: ") + e.what()); } } - uint8_t* data = zchunk_data(chunk); - size_t size = zchunk_size(chunk); + uint8_t* data = zmsg.data(); + size_t size = zmsg.size(); flatbuffers::Verifier verifier(data, size); if (!torchcraft::fbs::VerifyMessageBuffer(verifier)) { - zchunk_destroy(&chunk); throw runtime_error("ZMQ_server::connect(): invalid message."); } @@ -128,19 +151,15 @@ void ZMQ_server::connect() if (msg->msg_type() == torchcraft::fbs::Any::HandshakeClient) { if (!torchcraft::fbs::VerifyAny( verifier, msg->msg(), torchcraft::fbs::Any::HandshakeClient)) { - zchunk_destroy(&chunk); throw runtime_error("ZMQ_server::connect(): invalid message."); } handleReconnect( reinterpret_cast(msg->msg())); } else { - zchunk_destroy(&chunk); throw logic_error( string("ZMQ_server::connect(): cannot handle message: ") + torchcraft::fbs::EnumNameAny(msg->msg_type())); } - - zchunk_destroy(&chunk); } ZMQ_server::~ZMQ_server() @@ -153,34 +172,32 @@ void ZMQ_server::close() if (!this->server_sock_connected) return; // Called when the game ends - zsock_destroy(&this->server_sock); - this->server_sock = nullptr; - zsys_shutdown(); + this->sock = nullptr; + this->ctx = nullptr; - Utils::bwlog(controller->output_log, "socket: %d", server_sock); Utils::bwlog(controller->output_log, "after zsock destroy"); this->server_sock_connected = false; } void ZMQ_server::sendHandshake(const torchcraft::fbs::HandshakeServerT* handshake) { - sendFBObject(this->server_sock, handshake); + sendFBObject(*this->sock.get(), handshake); } void ZMQ_server::sendFrame(const torchcraft::fbs::FrameT* frame) { - sendFBObject(this->server_sock, frame); + sendFBObject(*this->sock.get(), frame); } void ZMQ_server::sendPlayerLeft(const torchcraft::fbs::PlayerLeftT* pl) { - sendFBObject(this->server_sock, pl); + sendFBObject(*this->sock.get(), pl); } void ZMQ_server::sendEndGame(const torchcraft::fbs::EndGameT* endgame) { - sendFBObject(this->server_sock, endgame); + sendFBObject(*this->sock.get(), endgame); } void ZMQ_server::sendError(const torchcraft::fbs::ErrorT* error) { - sendFBObject(this->server_sock, error); + sendFBObject(*this->sock.get(), error); } void ZMQ_server::receiveMessage() @@ -188,22 +205,25 @@ void ZMQ_server::receiveMessage() /* if not yet connected, do nothing */ if (!this->server_sock_connected) return; - zchunk_t *chunk; - if (zsock_recv(this->server_sock, "c", &chunk) != 0) { - throw runtime_error("ZMQ_server::receiveMessage(): zmq_recv failed."); + zmq::message_t zmsg; + try { + bool res = this->sock->recv(&zmsg); + if (!res) { + throw runtime_error("ZMQ_server::receiveMessage(): receive failed."); + } + } catch (const zmq::error_t& e) { + throw runtime_error(string("ZMQ_server::receiveMessage(): receive failed: ") + e.what()); } - uint8_t *data = zchunk_data(chunk); - size_t size = zchunk_size(chunk); + uint8_t *data = zmsg.data(); + size_t size = zmsg.size(); flatbuffers::Verifier verifier(data, size); if (!torchcraft::fbs::VerifyMessageBuffer(verifier)) { - zchunk_destroy(&chunk); throw runtime_error("ZMQ_server::receiveMessage(): invalid message."); } auto msg = torchcraft::fbs::GetMessage(data); if (!torchcraft::fbs::VerifyAny(verifier, msg->msg(), msg->msg_type())) { - zchunk_destroy(&chunk); throw runtime_error("ZMQ_server::receiveMessage(): invalid message."); } @@ -217,15 +237,12 @@ void ZMQ_server::receiveMessage() reinterpret_cast(msg->msg())); controller->setCommandsStatus(std::move(status)); break; - } + } default: - zchunk_destroy(&chunk); throw runtime_error( string("ZMQ_server::receiveMessage(): cannot handle message: ") + torchcraft::fbs::EnumNameAny(msg->msg_type())); } - - zchunk_destroy(&chunk); } void ZMQ_server::handleReconnect(const torchcraft::fbs::HandshakeClient* handshake) { diff --git a/docs/user/openbw.md b/docs/user/openbw.md index eb6df2a..2e64275 100644 --- a/docs/user/openbw.md +++ b/docs/user/openbw.md @@ -4,7 +4,7 @@ With OpenBW, TorchCraft *and* StarCraft can run natively on Linux (or any other system), without the need for Virtual Machines or Wine. ### Dependencies -czmq, openbw/bwapi (https://github.com/openbw/bwapi) +libzmq, openbw/bwapi (https://github.com/openbw/bwapi) These instructions assume BWAPI is installed. If you installed to a non-default directory, then the path can be specified by passing `-DBWAPI_DIR=/new/path/` to cmake.