summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/sys/TCPIOPlugin.cpp
Commit message (Collapse)AuthorAgeFilesLines
* QPID-2518: Qpid C++ broker can easily be blocked by client trying to connect ↵Andrew Stitcher2012-05-211-4/+17
| | | | | | | | over SSL port Implement timed disconnect for TCP and for SSL/TCP mux git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1341262 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3514: Allow SSL and non SSL connections on the same port.Andrew Stitcher2011-11-011-0/+3
| | | | | | | | | - Fixes to allow tcp to report the correct port so that the correct name gets used for the pidfile - Improved the ssl tests: refactoring them, and adding a new test for broker chosen ssl muxed ports git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1196319 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3514: Allow SSL and non-SSL connections on the same port. Applied patch ↵Gordon Sim2011-10-201-4/+29
| | | | | | from Zane Bitter and added simple test case. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1187011 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3447: Creating invalid federation link causes file descriptor leakAndrew Stitcher2011-08-221-0/+7
| | | | | | | - Previously we weren't correctly handling synchronous errors when we attempted to connect. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1160458 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3405: IPv6 support for Unix C++ ports:Andrew Stitcher2011-08-121-11/+37
| | | | | | | | | | | | - On the Listen side we create separate listening sockets for IPv4 and IPv6 making sure to not allow the IPv6 socket to run dual stack. This makes the reported IPv4 addresses look "normal" and would allow us to turn control IPv4/IPv6 listening separately. - On the connect side we make sure to try all the addresses returned by getaddrinfo() in order until we either find one that connects or have tried all of them. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1157272 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Remove a lot of redundant stuff from the Socket codeAndrew Stitcher2011-05-261-5/+0
| | | | | | - Removal of unused code git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1128065 13f79535-47bb-0310-9956-ffa450edef68
* Refactor socket connect calls to take a string portAndrew Stitcher2011-05-261-11/+13
| | | | | | This is used used to implement unix domain sockets - QPID-3281 git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1128064 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3007: Unique management identifier for connections.Alan Conway2011-02-011-1/+1
| | | | | | | | | | | | | | | Management was using remote socket address (host:port) to identify connections, but this is not a unique identifier. Both the local and remote addresses are needed to uniquely identify a connection - see http://www.faqs.org/rfcs/rfc793.html. This was causing management errors (multiple objects using same identifier) and cluster failures (invalid-arg exception) due to inconsistencies caused by the incorrect management map. This commit uses "localhost:localport-remotehost:remoteport" as a unique identifier. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1066220 13f79535-47bb-0310-9956-ffa450edef68
* Split out AsynchConnecter::start from constructor (like other AsynchIO classes)Andrew Stitcher2010-01-211-8/+9
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@901547 13f79535-47bb-0310-9956-ffa450edef68
* Rationalised AsynchConnector/Acceptor/IO to all use the same code structureAndrew Stitcher2009-10-161-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@826032 13f79535-47bb-0310-9956-ffa450edef68
* Fixed tcp nodelay, broken by previous socket code shufflingAndrew Stitcher2009-10-161-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@826031 13f79535-47bb-0310-9956-ffa450edef68
* Fix memory usage error in AsynchConnectorAndrew Stitcher2009-10-091-8/+19
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@823387 13f79535-47bb-0310-9956-ffa450edef68
* Add directory to #includeAlan Conway2009-07-141-3/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@793909 13f79535-47bb-0310-9956-ffa450edef68
* Tidied up a number of TODO itemsAndrew Stitcher2009-01-081-0/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@732620 13f79535-47bb-0310-9956-ffa450edef68
* * Cyrus SASL intgeration for c++ clientGordon Sim2009-01-061-8/+4
| | | | | | | | * SASL security layer support for c++ client and broker git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@732082 13f79535-47bb-0310-9956-ffa450edef68
* Log changes: logging default now notice+, "listening on" messages are at ↵Alan Conway2009-01-051-1/+1
| | | | | | notice level. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@731649 13f79535-47bb-0310-9956-ffa450edef68
* Refactor sys::AsynchIO class to allow reimplementing on other platforms ↵Stephen D. Huston2008-10-211-10/+15
| | | | | | without affecting upper level usage. Resolves QPID-1377 and supplies Windows AsynchIO.cpp git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@706709 13f79535-47bb-0310-9956-ffa450edef68
* Add option to require that only encrypted connections be accepted.Gordon Sim2008-10-201-3/+8
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@706321 13f79535-47bb-0310-9956-ffa450edef68
* Identify transports by nameGordon Sim2008-10-101-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@703558 13f79535-47bb-0310-9956-ffa450edef68
* * revised approach for setting tcp-nodelay on client to avoid breaking ↵Gordon Sim2008-08-051-4/+10
| | | | | | | | | | | | platform abstractions * added ability to set tcp-nodelay on server side of the socket also Merged from r682785. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@682791 13f79535-47bb-0310-9956-ffa450edef68
* Some small changes which clean up header file inclusionsAndrew Stitcher2008-07-091-1/+2
| | | | | | | | and generally start to tidy up the network layer so that it's a bit easier to implement new network transports git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@675338 13f79535-47bb-0310-9956-ffa450edef68
* Revert un-necessary Plugin complications. Better solution for plugin ↵Alan Conway2008-07-081-12/+14
| | | | | | extension points coming up... git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@674915 13f79535-47bb-0310-9956-ffa450edef68
* Plugin framework change: single PluginFactory creates per-target Plugin ↵Alan Conway2008-06-261-14/+12
| | | | | | instances. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@672032 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1087Ted Ross2008-05-211-29/+16
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@658886 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1050: Patch from Ted Ross:Gordon Sim2008-05-121-16/+38
| | | | | | | | | | | | | | | | | 1) Durability for federation links (broker-to-broker connections) 2) Improved handling of federation links: a) Links can be created even if the remote broker is not reachable b) If links are lost, re-establishment will occur using an exponential back-off algorithm 3) Durability of exchanges is now viewable through management 4) ManagementAgent API has been moved to an interface class to reduce coupling between the broker and manageable plug-ins. 5) General configuration storage capability has been added to the store/recover interface. This is used for federation links. 6) Management object-ids for durable objects are now themselves durable. (Note: some refactoring needed around ProtocolAccess needed to try and reduce dependencies) git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@655563 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1040: Patch from Ted Ross: Asynchronous ConnectorAndrew Stitcher2008-05-091-5/+9
| | | | | | | Code to allow non-blocking connection of new sockets git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@654666 13f79535-47bb-0310-9956-ffa450edef68
* * Renamed the Acceptor class to be the ProtocolFactory classAndrew Stitcher2008-04-221-29/+21
| | | | | | | | | which better approximates its current behaviour * Slightly refactored TCPIOPlugin to better approximate how it would look when we implement a proper AsynchConnector git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@650657 13f79535-47bb-0310-9956-ffa450edef68
* Refactored Acceptor code to allow multiple acceptors to be present in the brokerAndrew Stitcher2008-04-181-7/+22
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@649689 13f79535-47bb-0310-9956-ffa450edef68
* Split AsynchIOAcceptor into IOHandler and connection control codeAndrew Stitcher2008-04-181-0/+109
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@649666 13f79535-47bb-0310-9956-ffa450edef68