Denis Collette
64fc106123
Problem: preious commit contains tabs
...
Solution: replace tabs with spaces
2020-01-22 20:15:50 -04:00
Denis Collette
1450681fb4
Problem: Issue #3766 states that strtok is not thread safe and should be replaced
...
Solution: Replaced calls to strtok with strtok_r (strtok_s for windows)
in ws_engine.cpp
2020-01-22 19:40:26 -04:00
Luca Boccassi
ddae567f16
Problem: ZMQ_WSS socket options not defined in src/zmq_draft.h
...
Solution: add them
2020-01-19 14:39:29 +00:00
Matthias Loy
c357c378d8
fix: websocket url without path
...
websocket urls without a path caused crash!
2020-01-18 23:04:16 +01:00
Doron Somech
60ef14f80b
problem: ws_engine don't support WS RFC close control msg
...
Solution: when peer send a close msg, close the connection
2020-01-18 19:30:23 +02:00
Doron Somech
b120ec33a9
problem: ws_engine don't support WS RFC ping-pong
...
Solution: implement both PONG response and producing pings
2020-01-18 18:28:00 +02:00
Christoph Kahl
c5dab4f48f
mingw: add missing namespace
2020-01-09 21:44:53 +01:00
Simon Giesecke
73eb1eac05
Merge pull request #3767 from bluca/libbsd
...
Problems: reimplementation of strlcpy, CMake does not use pkg-config for NSS, wrong pc generated by autoconf with GNUTLS
2020-01-06 11:46:38 +01:00
xqcool
382c6d7186
Update array.hpp ( #3769 )
...
* Update array.hpp
Problem:Calling back on an empty container causes undefined behavior.
Solution:Check with the function empty()
* Create xqcool.mq
Adds relicensing grant
2020-01-01 10:37:51 +01:00
Luca Boccassi
3832bd6b11
Problem: UWP build fails
...
Solution: initialize local variable in all cases to false positive
compiler warning
2019-12-28 21:17:09 +01:00
Luca Boccassi
068385c951
Problem: internal reimplementation of strlcpy used by default on Linux
...
Solution: use libbsd by default when available, and the internal implementation
only as a fallback, to take advantage of Linux distros maintenance of the
string libraries.
2019-12-28 16:21:06 +01:00
Luca Boccassi
246cc77efc
Merge pull request #3763 from sigiesec/replace-strcpy
...
Avoid possible buffers overruns in ws_engine
2019-12-25 16:13:13 +01:00
Simon Giesecke
3dbbc28bb8
Problem: use of unsafe strcpy
...
Solution: use memcpy with known size instead
2019-12-25 13:56:26 +01:00
Simon Giesecke
334e837b88
Problem: ws_engine uses unsafe strcpy
...
Solution: use strcpy_s instead (define custom if not available)
2019-12-25 13:56:26 +01:00
Simon Giesecke
14ab794671
Problem: local functions not declared static
...
Solution: add static
2019-12-25 13:52:21 +01:00
Simon Giesecke
fa804c7783
Problem: pseudo-loops which had exactly one iteration
...
Solution: removed them
2019-12-25 13:52:21 +01:00
Simon Giesecke
579aa5b440
Problem: non-loop-variables initialized via loop initializer
...
Solution: move initialization to declaration
2019-12-25 13:52:21 +01:00
Simon Giesecke
d4cc592387
Problem: loop variable modified in loop step and body
...
Solution: modify it in loop body only
2019-12-25 13:52:21 +01:00
Simon Giesecke
ddbf45cf8d
Problem: redundant break after return
...
Solution: remove them
2019-12-24 10:17:10 +01:00
Simon Giesecke
2256bd5b0b
Problem: unnecessary copying of string literals
...
Solution: just copy the address
2019-12-23 14:12:07 +01:00
Simon Giesecke
4c3f115469
Problem: raw malloc used unnecessarily
...
Solution: use std::string instead
2019-12-23 14:12:07 +01:00
Simon Giesecke
30e2398e67
Problem: WSS-specific members and options are compiled without ZMQ_HAVE_WSS
...
Solution: properly guard members and options
2019-12-23 11:58:07 +01:00
Simon Giesecke
9e548bd591
Problem: insecure and inefficient strcpy used
...
Solution: use memcpy with known length
2019-12-23 11:58:07 +01:00
Simon Giesecke
9f16513ebe
Problem: loop sending signaler event is obscure
...
Solution: add comments and remove continue/break
2019-12-10 16:19:25 +01:00
Simon Giesecke
3ace237988
Revert "Removed unreachable code paths"
...
This reverts commit 4f77cfa3274fcddf9687fc713b8a331ee018cf87.
2019-12-10 16:08:52 +01:00
Simon Giesecke
f60f909899
Problem: missing use of C++11 = delete and = default
...
Solution: introduce macros ZMQ_DEFAULT and ZMQ_NON_COPYABLE_NOR_MOVABLE
2019-12-09 09:48:21 +01:00
Simon Giesecke
86d7de38ca
Problem: redundant empty destructor
...
Solution: Remove definition
2019-12-08 19:43:31 +01:00
Simon Giesecke
f8adf9ea55
Problem: unnecessary value parameters
...
Solution: change to const references
2019-12-08 15:24:48 +01:00
Simon Giesecke
cb2b377d9f
Problem: redundant else after return
...
Solution: remove else
2019-12-08 15:24:48 +01:00
Simon Giesecke
fdabd73da6
Problem: parameters not const where const possible
...
Solution: add const
2019-12-08 15:24:48 +01:00
Simon Giesecke
84267e734b
Problem: inconsistent parameter names on definition/declaration
...
Solution: align them
2019-12-08 15:24:48 +01:00
Simon Giesecke
cd954e207d
Problem: use of C-style casts
...
Solution: use static_cast/reinterpret_cast instead
2019-12-08 15:24:48 +01:00
Simon Giesecke
a83c57d0bb
Problem: identifiers not conformant with naming convention
...
Solution: fix identifier names
2019-12-08 15:24:48 +01:00
Luca Boccassi
df993d113c
Merge pull request #3751 from sigiesec/windows-domain-sockets-signaler
...
Use Unix domain sockets for listener when available on Windows
2019-12-07 00:25:21 +00:00
Simon Giesecke
ca552d563f
Problem: listener socket uses TCP loopback connections which sometimes go awry
...
Solution: Use domain sockets instead if available
2019-12-06 19:11:50 +01:00
Simon Giesecke
bd4c2d60ba
Problem: zmq::listener_t::create_wildcard_address not reusable in ip.cpp
...
Solution: move to ip.hpp as zmq::create_ipc_wildcard_address
2019-12-06 19:11:50 +01:00
Simon Giesecke
3bcaea535c
Problem: zmq_fdpair function is very long
...
Solution: Extract TCP/IP loopback variant into zmq_fdpair_tcpip
2019-12-06 17:51:13 +01:00
liedtkeInTUM
65d2f1f498
Problem: if IPC enabled libzmq does not compile when in uwp build ( #3747 )
...
* Problem: if IPC enabled libzmq does not compile when in uwp build
* Problem 10.0.##### can be valid windows target versions
* Problem: No builds are triggered on uwp platform
* Problem: epoll is set before UWP platform is checked
* Problem: used wrong CMAKE_SYSTEM_NAME specifier
* Problem: build tests fails during cmake configure
* Use Win32 build step for Win32-uwp platform
* Disable compile options that produce warnings that leads to a ci fail
* winnt version is set by cmake, no need for redefinition in windows.hpp
* Eliminate all warning according Incremental and opt:icf are specified
* Prefer to disable opt flags in debug config rather than incremental linking
* CMAKE_GENERATOR should not include uwp definition
* Add release build with uwp configuration
* Problem: pointer potentially uninitialized
2019-12-06 13:27:24 +00:00
Andrij Abyzov
5a854780f2
Problem: cannot send arbitrary data from XSUB to XPUB.
...
Solution: now if the first frame in a multipart message is not subscribe/unsubscribe,
the rest of the parts are also considered to be not subscribe/unsubscribe.
2019-12-04 16:25:08 +01:00
Luca Boccassi
a61db18eee
Problem: WSS LAST_ENDPOINT returns WS transport
...
Solution: add wss_address_t subclass of ws_address_t to override the
to_string method
2019-11-28 12:37:53 +00:00
Luca Boccassi
c711941e9a
Problem: wildcard port binding does not work with WS sockets
...
Solution: remove the path from the address when resolving
2019-11-28 09:27:05 +00:00
Luca Boccassi
79d75f017c
Problem: WS sockets return TCP protocol strings with ZMQ_LAST_ENDPOINT
...
Solution: use the correct address class when resolving
2019-11-28 09:27:05 +00:00
Andrij Abyzov
04761133bf
Fix zmq::select_t::loop formatting
2019-11-20 09:29:59 +01:00
Andrij Abyzov
108977c838
Change XSUB -> XPUB multipart message processing.
...
Now only the first part in a multipart message will be treated as subscribe/unsubscribe.
The rest will be considered user messages regardless of the first byte.
2019-11-19 18:22:12 +01:00
Luca Boccassi
9ced36e407
Problem: WSAEventSelect checks for FD_OOB, but select does not
...
WSAEventSelect is used on Windows (when select is the polling method)
only if waiting for more than one socket family, excluding IPv4/6.
It is then passed FD_OOB, which means it can be woken by OOB messages,
but select later on never checks for it.
Remove FD_OOB as it's not actually used for anything.
2019-11-01 09:34:03 +00:00
Simon Giesecke
302436515c
Problem: windows socket error number cleared before saved to saved_errno
...
Solution: call tune_socket only if connect was successful
2019-10-29 23:04:54 +01:00
Simon Giesecke
66d0f3511f
Problem: ipc transport not supported under Windows
...
Solution: implement support
2019-10-29 23:04:54 +01:00
Simon Giesecke
7f43e7ff75
Problem: build targeting Windows XP is broken
...
Solution: fix build issues
2019-10-19 14:04:55 +02:00
Michele Dionisio
9f65720dc0
Revert "Problem: pkg-config file cannot be used for static linking on CentOS 7"
...
This reverts commit 765c24740d6d2a1e3256ee90dc126d05917ca15d.
2019-10-14 20:43:33 +02:00
Luca Boccassi
683bf1d732
Merge pull request #3713 from mdionisio/useless_ceil
...
avoid to use std::ceil
2019-10-14 15:53:39 +01:00