summaryrefslogtreecommitdiff
path: root/qpid/cpp/src/qpid/sys/posix
Commit message (Collapse)AuthorAgeFilesLines
* Apply patches for QPID-6312 to get Qpid building on AIX with XL C++ 13.1Stephen D. Huston2015-02-043-10/+12
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1657338 13f79535-47bb-0310-9956-ffa450edef68
* QPID-6128: Fix compiling SocketAddress on ARMDarryl L. Pierce2014-10-021-4/+12
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1628976 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5033: Bad buffer accounting leading to spurious SSL errors on WindowsClifford Jansen2014-09-091-6/+7
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1623614 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5898: AclHost unit test fails on systems with no IPv6Charles E. Rolke2014-07-161-25/+35
| | | | | | | | | | | | | * In SocketAddress::isComparable catch exceptions thrown by getAddrInfo when address family is not supported. * Delete self test that expects hosts to have 127.0.0.1 and ::1 as valid addresses for localhost. * In self tests sense whether IPv4 and IPv6 are supported and skip running tests that use those families accordingly. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1611059 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4947: C++ Broker ACL restricts hosts from which users may connect.Charles E. Rolke2014-07-151-8/+199
| | | | | | | | | | | | | | | | | This commit adds: * Acl rule file "create connection host=hostname" support for allowing and denying connections. * AclHost class to represent a host specified in the rule file. * Global and user-specific lists of AclHost rules. Created by AclReader and consumed by AclConnectionCounter. * Address range checks and other giblets in SocketAddress: ** asString support to hide IPv6 decoration and service (port) details. ** binary comparison of network addresses. ** new firstAddress function to complement existing nextAddress. Socket addrinfo for AclHost objects is computed once only for lifetime of Acl file load. ** Posix and Windows implementations are identical. * New unit test for address comparisons. Testing a live broker is great but forcing connections to be from some arbitrary IPv4 or IPv6 address is hard. So there's a unit test for that. Further discussion about this feature is in https://reviews.apache.org/r/23322 git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1610874 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5865: Be more robust in face of system clock being changed:Andrew Stitcher2014-07-014-20/+72
| | | | | | | | | | - Separate Wall clock time uses from other time * (assumed that any time with respect to the epoch is wallclock) - For Posix use CLOCK_MONOTONIC for all non wall clock purposes so that changing system time doesn't affect internal timekeeping - For Windows kept the same time keeping scheme. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1607140 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5859: Make qpidd listen to all protocol addresses when it starts up.Andrew Stitcher2014-06-271-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1606197 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5843: Producing to many queues locks I/O threads for new connectionsAlan Conway2014-06-261-2/+2
| | | | | | | | | This patch changes where the duration is calculated in sys/posix/AsyncIO.cpp->readable(). This will prevent the loop from executing past the threadMaxIoTimeNs. Doing this decreased the connection delay observed by 19%. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1605664 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5659: Fixes to compile with C++11 (needed to compile with clang on ↵Andrew Stitcher2014-04-021-1/+1
| | | | | | | | | | | FreeBSD 10) - shared_ptr no longer has a default conversion to bool. - Change in default destructor semantics: by default destructors are now not allowed to throw exceptions. - stringstream no longer has a default conversion to string. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1584199 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5485: By default use a subdirectory of the data dir called "pq" forAndrew Stitcher2014-01-301-9/+22
| | | | | | | page queue files. If neither data dir nor paging dir are set then error on any attempt to create a paged queue. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1563012 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5486: Creating paged queue can overwrite existing qpidd filesPavel Moravec2014-01-171-2/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1559090 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5486 Creating paged queue can overwrite existing qpidd filesPavel Moravec2014-01-161-0/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1558806 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5485 Deleting paged queue does not remove underlying filePavel Moravec2014-01-161-0/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1558790 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5398: Fix cut 'n paste error in sys/posix/Path.cppAlan Conway2013-12-061-5/+1
| | | | | | Posix Path::IsAbsolute() function was checking for windows-style paths. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1548596 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5398: qpidd --acl-file does not work with a drive-prefixed path on windows.Alan Conway2013-12-051-0/+64
| | | | | | | | | | On windows, acl-file was not recognizing drive-prefixed paths (e.g. c:\foo) as absolute and was trying to interpret them relative to the brokers data-dir. This commit fixes the problem and adds a general-purpose Path class that can be a collection point for any other path-related portability problems that come up. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1548279 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5309: don't set executable flag on page fileGordon Sim2013-11-081-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1540039 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4942: Only install include files that are used by the supported APIAndrew Stitcher2013-07-265-0/+396
| | | | | | | - Since we removed a whole lot of old API code we can drastically cut down on the header files that we export. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1507469 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4931: Only allow broker to listen to a single address if "--port 0" ↵Andrew Stitcher2013-06-191-11/+0
| | | | | | | | | | | specified - If more than one address is specified or implied by the defaults the broker will log a warning - This is intended to avoid testing problems where the broker fails to connect to the port of subsequent listening addresses git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1494656 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Remove unnecessary includes for AsynchIOAndrew Stitcher2013-06-131-6/+6
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1492847 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4921: check pointer before using itGordon Sim2013-06-131-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1492761 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4339: Add include necessary under some versions of unixAndrew Stitcher2013-04-301-0/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1477831 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4339: fix for older compilers/c++ librariesGordon Sim2013-04-301-4/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1477698 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4339: simple paged queue implementationGordon Sim2013-04-291-0/+105
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1477236 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Fix compilation warnings introduced by r1469661.Alan Conway2013-04-231-5/+5
| | | | | | Added explicit conversion from double to int16_t. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1471121 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4748: Consistent handling of durations in broker configuration, ↵Alan Conway2013-04-191-8/+27
| | | | | | | | | | | | | | | | | | | | allowing sub-second intervals. Provides string conversion for sys::Duration, allowing intervals to be expressed like this: 10.5 - value in seconds, backward compatible. 10.5s - value in seconds 10.5ms - value in milliseconds 10.5us - value in microseconds 10.5ns - value in nanoseconds Converted the folllowing broker options to Duration: mgmtPubInterval, queueCleanInterval, linkMaintenanceInterval, linkHeartbeatInterval Did not convert: maxNegotiateTime. This is expressed in milliseconds so it would not be backward compatible to make it a Duration. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1469661 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4615: Allow unix qpidd to pass in existing socket fds on cmdline.Andrew Stitcher2013-03-012-4/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1451446 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4514: Remove IO start/stop reading primitives used by removed clusterAndrew Stitcher2013-01-301-35/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1440617 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4536: Remove functionality which automatically makes a brokerAndrew Stitcher2013-01-141-45/+0
| | | | | | advertise all its network interfaces as potential failover endpoints. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1433061 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4514: Clean up cluster code: Obsolete comment in BSDSocket.cpp.Alan Conway2013-01-141-5/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1433053 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4095: Move the directory iteration into FileSysDir:Andrew Stitcher2012-12-201-0/+26
| | | | | | | - For Posix implement with direct calls - For windows implement with v2/v3 boost::filesystem to be replaced later git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1424247 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4447: C++ Client can hang during connect if heartbeat disconnect firesAndrew Stitcher2012-11-201-0/+14
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1411750 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3351: Provide ability to specify the network interfacesAndrew Stitcher2012-11-161-0/+67
| | | | | | Added functions to find machines network interface names and addresses git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1410362 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Removed unused isLocalHost() codeAndrew Stitcher2012-11-161-36/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1410360 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4272: Large amounts of code are duplicated between the SSL and TCP ↵Andrew Stitcher2012-10-243-0/+12
| | | | | | | | | | | | | | | transports Refactor SslMux support simplifying it and remove need for separate SslHandler and SslIo code. Refactored SSL client code to use the same connect and broker SSL to use the same accept sequences as the TCP code. This also solves QPID-3565: IPv6 support for SSL transport on Unix C++ client/broker Remove now unneeded ssl files. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1401561 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4272: Large amounts of code are duplicated between the SSL and TCP ↵Andrew Stitcher2012-10-243-0/+21
| | | | | | | | transports Add the security related functions to the Socket/Asynch interfaces git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1401560 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4272: Large amounts of code are duplicated between the SSL and TCP ↵Andrew Stitcher2012-10-245-69/+166
| | | | | | | | | | | | | transports Lift Socket into an interface with concrete implementations - BSDSocket, WinSocket and SslSocket - As a side effect completely change the approach we use for platform specific handles: IOHandle now directly carries the platform handle but its real type is only exposed to platform specific code. - Modified RDMA code for the new IOHandle approach git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1401559 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4272: Large amounts of code are duplicated between the SSL and TCP ↵Andrew Stitcher2012-10-242-12/+5
| | | | | | | | | | | transports Refactor to unify the various SSL and TCP interfaces: - Make ssl listen have the same signature as regular sockets - Give ssl connect same interface as tcp - Unify the SSL and TCP IO interfaces some more git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1401558 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4330: Windows static destructors: threadSafeShutdown() testClifford Allan Jansen2012-09-301-0/+7
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1392093 13f79535-47bb-0310-9956-ffa450edef68
* Rearrange buffer memory ownership to avoid leaking buffer memoryAndrew Stitcher2012-08-101-8/+17
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1371774 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Work around compiler warning from clang 3.1 about casting between ↵Andrew Stitcher2012-08-101-1/+1
| | | | | | type alignments git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1371695 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4127: Ensure SystemInfo::isLocalHost() returns true for ::1Gordon Sim2012-07-101-1/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1359855 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: fix some defects found by Coverity static analysis scan of C++ codeKenneth Anthony Giusti2012-05-251-2/+4
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1342742 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Rearrange memory status codeAndrew Stitcher2012-05-241-1/+1
| | | | | | Currently only Linux has a useful implementation and everyone else uses a null implementation. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1342137 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4011: TestIsLocalHost unit_test fails with if machine name resolves to ↵Andrew Stitcher2012-05-211-1/+1
| | | | | | | | loopback address Oops - ntohl() can be a macro so specifying ::ntohl() can fail in optimised builds. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1341246 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4011: TestIsLocalHost unit_test fails with if machine name resolves to ↵Andrew Stitcher2012-05-181-11/+28
| | | | | | | | loopback address QPID-3404 - This change also adds support for IPv6 interface addresses to getLocalIpAddresses git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1340279 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3603: HA backup brokers don't connect to self when searching for primary.Alan Conway2012-05-151-0/+1
| | | | | | Also: BrokerReplicator destroys bridge in destructor. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1338891 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Reduce message for missing lock file from critical to notice.Alan Conway2012-05-141-1/+1
| | | | | | | | If qpidd -q can't find the lock file, it used to issue a critical error message. This is to harsh, not finding the lock file usually just means the broker isn't running. Demoted to a notice message. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1338365 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3603: Added SystemInfo::isLocalHost to check if a host name refers to ↵Alan Conway2012-05-081-25/+57
| | | | | | the local host. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1335562 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Removed unnecessary header guard around a non-header fileAndrew Stitcher2012-03-201-5/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1303038 13f79535-47bb-0310-9956-ffa450edef68
* QPID-2082: Put all of the C++ code in the source tree into a namespaceAndrew Stitcher2012-03-201-5/+3
| | | | | | - This change moves the remaining non-example code in a namespace git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1302988 13f79535-47bb-0310-9956-ffa450edef68