Gabriel Braga [Fri, 26 Apr 2024 12:46:22 +0000]
Adding DOCUMENTATION flag to the CMakeLists.txt
This adds the DOCUMENTATION flag in order to avoid documentation
building logs while building the project.
Gabriel Braga [Tue, 9 Apr 2024 15:36:51 +0000]
Fix unit tests to adapt to the epoll API
Previously the unit tests runs worked with the select API, after
changes to the epoll API the tests stopped running, this commit
fix and adapt them to the new API.
Note: This commit does some changes to timeouts and to some ports
on comm.cpp because the previous port was already in use by some
process on the developer's computer.
Gabriel Braga [Tue, 9 Apr 2024 15:31:36 +0000]
Change monotonic_clock to get time in milliseconds for the epoll API
Previously the clock would return in seconds, which is not the epoll's
standards. This fixes it.
Gabriel Braga [Tue, 9 Apr 2024 14:48:19 +0000]
Switch socket management API to epoll() (#7785)
Previously all the server and client sockets were being managed by
the select() API, which operates using a fixed amount of client
sockets. This commit changes the code to adapt to the epoll() API.
This commit also could have a performance improvement due to epoll's
architecture.
Note: next commits should fix:
- The clock from sec to millisecs as the epoll_wait()
uses millisecs.
- Unit tests need to be changed to work properly.
Gabriel Braga [Thu, 4 Apr 2024 09:01:32 +0000]
Switch time() calls to monotonic clock calls (#7597)
In the event of a time warp the use of time() causes connections to collapse.
This removes this problem by using a monotonic clock, based on libi2ncommon.
Gabriel Braga [Thu, 4 Apr 2024 07:48:57 +0000]
Handle EWOULDBLOCK at socket communication (#7596)
This adds treatment to the EWOULDBLOCK error on socket comms.
Previously only EAGAIN was treated.
Thomas Jarosch [Wed, 16 Mar 2022 08:13:00 +0000]
Replace socket_handler::fill_buffer() recursion with loop (#8389)
The loop is more stack friendly and also limited to 32 iterations
to prevent starvation of other connections.
Remove bogus "try_again" logic: The flag was set in "nbytes < 0",
but checked when "nbytes == 0" down below -> it probably never worked,
at least not how it was designed to work.
Thomas Jarosch [Sat, 23 May 2020 10:37:34 +0000]
Fix 'occurred' typo
Thomas Jarosch [Fri, 30 Mar 2018 11:59:20 +0000]
Cmake helper: Fix configure_file invocation
The correct command is @ONLY instead of @ONLY@.
Newer cmake versions output an error.
Christian Herdtweck [Fri, 21 Oct 2016 15:17:43 +0000]
Raise error if length of exported symbols exceeds boost::serialization limit
Christian Herdtweck [Fri, 21 Oct 2016 15:24:58 +0000]
Increase version to 0.8
Thomas Jarosch [Wed, 23 Dec 2015 18:12:51 +0000]
Switch to Intra2net rpm group
Thomas Jarosch [Mon, 22 Jun 2015 19:33:03 +0000]
Fix off-by-one in unit test
Detected by cppcheck.
Thomas Jarosch [Wed, 13 May 2015 08:38:32 +0000]
Fix doxygen generation
Thomas Jarosch [Tue, 5 May 2015 09:05:51 +0000]
Switched default packaging format to .tar.bz2
Thomas Jarosch [Tue, 5 May 2015 09:00:18 +0000]
Add git based 'make dist' target
Thomas Jarosch [Tue, 5 May 2015 08:33:52 +0000]
Prepare libt2n 0.7 release
Philipp Gesang [Tue, 10 Mar 2015 14:42:03 +0000]
readme: bump year in copyright info
Philipp Gesang [Tue, 10 Mar 2015 14:23:23 +0000]
socket_client.cpp: prevent buffer overflow in creation of unix socket
Path size for UNIX domain sockets is fixed at 108, however, the
method ``.unix_connect()`` of the socket client class accepts
STL strings of any length unchecked. Thus it’s trivial to provoke
a segfault:
libt2n::socket_client_connection sc(std::string(42 * 42, '!'));
and ... bang!
A check of the client-supplied path value against the buffer size
of ``sockaddr_un.sun_path[]`` is added to prevent the issue.
Philipp Gesang [Mon, 8 Sep 2014 10:08:29 +0000]
client_wrapper.hxx, socket_wrapper.hxx: reorder member initialization order
This pleases GCC so we can include the headers while compiling
with ``-Wall -Werror``.
Camilo Roca [Thu, 18 Jul 2013 10:04:25 +0000]
reset timeout if connection is active.
Thomas Jarosch [Wed, 10 Jul 2013 09:38:15 +0000]
Cosmetic changes
Camilo Roca [Wed, 10 Jul 2013 08:52:56 +0000]
get_sockets_set added for external select() calls. Boost test case added to check proper behavior.
Thomas Jarosch [Fri, 9 Sep 2011 15:28:43 +0000]
Add missing include for chmod()
Thomas Jarosch [Fri, 9 Sep 2011 15:05:43 +0000]
Fix file extension matching for filenames with multiple dots
Kristóf Katus [Tue, 30 Aug 2011 11:40:55 +0000]
Cleaned the indentation of Libt2n.cmake
Kristóf Katus [Tue, 30 Aug 2011 11:39:07 +0000]
Install header files to include/${PROJECT_NAME} according to the package file exports.
Kristóf Katus [Fri, 26 Aug 2011 09:37:10 +0000]
Small corrections to Libt2n.cmake - linking the boost serialization library to the client libraries.
Kristóf Katus [Thu, 25 Aug 2011 15:34:38 +0000]
Installation of Libt2n.cmake
Kristóf Katus [Thu, 25 Aug 2011 13:45:41 +0000]
Missing config.h.in.cmake file.
Kristóf Katus [Thu, 25 Aug 2011 13:40:14 +0000]
Cleansed all directories from autohell corruption. Some additional unnecessary files are removed as well.
Kristóf Katus [Thu, 25 Aug 2011 13:19:22 +0000]
Small corrections. Compiles and builds.
Kristóf Katus [Thu, 25 Aug 2011 08:32:26 +0000]
Initial CMake conversion of examples-codegen/example2-client
Kristóf Katus [Thu, 25 Aug 2011 07:59:17 +0000]
Proper dependency handling in Libt2n.cmake by using only one add_custom_command for every command group (no separate add_custom_command commands for every intermediate gccxml file).
Kristóf Katus [Wed, 24 Aug 2011 15:27:54 +0000]
Initial commit of example projects (except: example2-client).
Kristóf Katus [Wed, 24 Aug 2011 15:24:28 +0000]
Initial fix of Libt2n.cmake.
Kristóf Katus [Wed, 24 Aug 2011 07:43:40 +0000]
Initial cmake conversion of the libt2n project except the example projects. The unit test fails.
Thomas Jarosch [Fri, 8 Jul 2011 11:32:34 +0000]
Fix compile warnings about initialization order and unused variables
Thomas Jarosch [Fri, 8 Jul 2011 11:31:51 +0000]
Update exception message. Atleast boost 1.44.0 uses this one
Thomas Jarosch [Fri, 8 Jul 2011 08:47:49 +0000]
Make sure we pick up the local include files
Thomas Jarosch [Thu, 7 Jul 2011 11:05:20 +0000]
Add cmake code generator support to libt2n
Thomas Jarosch [Fri, 20 May 2011 15:00:47 +0000]
Update README
Thomas Jarosch [Fri, 20 May 2011 14:54:48 +0000]
Increase version
Thomas Jarosch [Fri, 20 May 2011 14:49:45 +0000]
Prepare ChangeLog for new release
Thomas Jarosch [Fri, 16 Jul 2010 12:57:58 +0000]
Silence gcc warning about initialization order
Thomas Jarosch [Mon, 26 Apr 2010 12:34:39 +0000]
Don't catch unknown exceptions if we are only going to rethrow them.
Rethrowing hides the real source of the exception.
Thomas Jarosch [Thu, 4 Feb 2010 15:57:06 +0000]
Change gccxml wrapper to work with older bash version. Hopefull this doesn't break something
Thomas Jarosch [Thu, 4 Feb 2010 15:38:18 +0000]
Remove code duplication in test fixtures
Thomas Jarosch [Thu, 4 Feb 2010 15:22:04 +0000]
Migrate from cppunit to Boost.test
Thomas Jarosch [Thu, 4 Feb 2010 10:40:51 +0000]
Update to newer boost autoconf macros
Thomas Jarosch [Thu, 1 Oct 2009 09:23:58 +0000]
Remove boost dependency, rpm will pick it up automatically (with the right package name) as "boost" is a meta-package on Fedora for all boost packages
Thomas Jarosch [Thu, 6 Aug 2009 08:42:09 +0000]
Added libt2n-gccxml.sh wrapper script to filter new, unknown gccxml -pthread option
Thomas Jarosch [Thu, 6 Aug 2009 08:34:36 +0000]
Remove autogenerated files
Thomas Jarosch [Wed, 5 Aug 2009 15:16:27 +0000]
Parallel build on SMP machines, added cppunit-devel to build requirements, proper autotoolization
Thomas Jarosch [Thu, 23 Jul 2009 09:57:50 +0000]
Fix RPM license tag
Thomas Jarosch [Fri, 3 Apr 2009 15:55:55 +0000]
Change license from LGPL to GPL version 2 + linking exception. This fixes C++ template usage.
Gerd v. Egidy [Sat, 14 Feb 2009 23:07:21 +0000]
remove now-unneeded documentation-header
Thomas Jarosch [Fri, 13 Feb 2009 16:52:22 +0000]
Fix for newer boost versions (tested 1.37.0 and 1.38.0)
Thomas Jarosch [Sat, 7 Feb 2009 17:30:00 +0000]
Started .gitignore file
Thomas Jarosch [Sat, 7 Feb 2009 11:15:05 +0000]
Reconstructed release dates in ChangeLog
Thomas Jarosch [Sat, 7 Feb 2009 10:41:46 +0000]
Changed one more homepage link
Thomas Jarosch [Sat, 7 Feb 2009 10:12:47 +0000]
Release libt2n 0.5
Gerd von Egidy [Fri, 6 Feb 2009 09:37:16 +0000]
update project URL, remove old Obsolets-line from .spec
Doxygen still to do
Thomas Jarosch [Wed, 26 Nov 2008 17:01:20 +0000]
libt2n: (tomj) fix mysterious crashes in test::ReentrantServer: boost serialization does not cope with anonymous namespaces\! We ended up in the testfunc_* classes from the global namespace with the same name. argh\!
Thomas Jarosch [Wed, 26 Nov 2008 13:41:29 +0000]
libt2n: (tomj) added exception handling to every child after fork(). This is needed to make sure no two cppunit tests run at the same time\!
Thomas Jarosch [Wed, 26 Nov 2008 13:08:33 +0000]
libt2n: (tomj) don't use std::auto_ptr in command_client, the pointer will get lost if the command_client is stored in a STL container.
Improve reentrant test to check for positive results after all clients finished (nice stress test)
Thomas Jarosch [Wed, 26 Nov 2008 09:18:29 +0000]
libt2n: (tomj) make result_container's has_exception and has_result a bit more robust
Thomas Jarosch [Tue, 25 Nov 2008 18:45:41 +0000]
libt2n: (tomj) fixed call of virtual function close() from destructor, fixed return value of server::add_connection()
Thomas Jarosch [Tue, 25 Nov 2008 14:58:48 +0000]
libt2n: (tomj) fix uninitialized variable "result_type" in result_container
Thomas Jarosch [Mon, 24 Nov 2008 22:15:23 +0000]
libt2n: (tomj) made reentrant unit-test more robust. Gave the guard_handle a lot of thought (volatile/atomic operations) -> it's fine.
Thomas Jarosch [Mon, 24 Nov 2008 20:05:24 +0000]
libt2n: (tomj) close open connection (if any) on destruction of socket_client_connection; fixes client crash
Thomas Jarosch [Mon, 24 Nov 2008 19:43:16 +0000]
libt2n: (tomj) documented code problems; have to find out if this is the source of the server memleak/client crash
Thomas Jarosch [Mon, 24 Nov 2008 14:48:51 +0000]
libt2n: (tomj) disable recently added unit test: it won't work as is
Gerd v. Egidy [Fri, 21 Nov 2008 10:48:14 +0000]
libt2n: (gerd) set additional non-blocking options, not really needed but a safety-measure, add unit-test
Gerd v. Egidy [Fri, 21 Nov 2008 10:35:25 +0000]
libt2n: (gerd) add safety-check to send_hello
Thomas Jarosch [Fri, 21 Nov 2008 09:36:46 +0000]
libt2n: (tomj) small fix to support data transfers over 2GB
Thomas Jarosch [Wed, 19 Nov 2008 09:36:15 +0000]
libt2n: (tomj) fix bug in fill_connection_buffers() returning true even though no data is available
Thomas Jarosch [Thu, 23 Oct 2008 08:29:18 +0000]
libt2n: (tomj) increase version
Gerd v. Egidy [Fri, 10 Oct 2008 08:53:21 +0000]
small fix
Gerd v. Egidy [Fri, 26 Sep 2008 13:17:06 +0000]
libt2n: (gerd) more documentation-polishing
Gerd v. Egidy [Fri, 26 Sep 2008 09:11:17 +0000]
libt2n: (gerd) add example for wrapper
Gerd v. Egidy [Fri, 26 Sep 2008 09:07:14 +0000]
libt2n: (gerd) make codegen.make work with current autotools
Reinhard Pfau [Tue, 23 Sep 2008 15:47:27 +0000]
libt2n: (reinhard) 1 Million is not enough! (+ doc fix)
Gerd v. Egidy [Fri, 19 Sep 2008 13:41:24 +0000]
libt2n, arnied: (gerd) set logging on existing connections too, show t2n-debugging on ARNIED-LOG-EVERYTHING
Gerd v. Egidy [Thu, 18 Sep 2008 14:06:23 +0000]
libt2n: (gerd) some more documentation
Gerd v. Egidy [Wed, 17 Sep 2008 14:29:26 +0000]
libt2n: (gerd) some documentation improvement as preparation for release
Gerd v. Egidy [Fri, 5 Sep 2008 11:42:16 +0000]
libt2n: (gerd) make handle-function on server reentrant
Gerd v. Egidy [Wed, 27 Aug 2008 13:58:48 +0000]
libt2n: (gerd) adapt codegen to new command_client interface, fix codegen-examples
Gerd v. Egidy [Wed, 27 Aug 2008 08:58:48 +0000]
libt2n: (gerd) make sure no exception is thrown in command_client constructor, fix killing of child processes in unit tests
Gerd v. Egidy [Sun, 24 Aug 2008 21:41:21 +0000]
libt2n: (gerd) fix client-connection-logic, finish wrappers, all tests are working now, some polishing & docu missing
Reinhard Pfau [Fri, 1 Aug 2008 14:47:15 +0000]
libt2n: (reinhard) more compile fixes.
Reinhard Pfau [Fri, 1 Aug 2008 14:33:19 +0000]
libt2n: (reinhard) compile fixes.
Reinhard Pfau [Fri, 1 Aug 2008 14:32:58 +0000]
libt2n: (reinhard) compile fixes.
Thomas Jarosch [Fri, 1 Aug 2008 13:33:33 +0000]
libt2n: (tomj) compile fix
Gerd v. Egidy [Thu, 31 Jul 2008 22:12:55 +0000]
libt2n: (gerd) bugfixes, better logging, unit tests for wrapper, ignore handler still missing
Gerd v. Egidy [Wed, 30 Jul 2008 17:27:32 +0000]
libt2n: (gerd) basic structure of wrappers done, ignore handler missing, unit tests missing
Thomas Jarosch [Tue, 29 Jul 2008 09:03:54 +0000]
libt2n: (tomj) make compilable again
Gerd v. Egidy [Thu, 24 Jul 2008 17:37:26 +0000]
libt2n: (gerd) socket reconnect added (incl. unit tests)
Gerd v. Egidy [Thu, 24 Jul 2008 10:01:48 +0000]
libt2n: (gerd) some refactoring, documentation improvement
Gerd v. Egidy [Wed, 23 Jul 2008 17:01:15 +0000]
libt2n: (gerd) more progress with T2nSingletonWrapper (compiles but not complete yet)