Commit Graph

34 Commits

Author SHA1 Message Date
Jon Trulson c329d5cfd7 Remove $(TIRPCINC) from all Makefile.am files - it no longer exists
Also, restructure some of the dependencies in the lib/tt binaries.  We
will link with libtt (which will include libtirpc as a dependency),
and XTOOLLIB - all the right X11 stuff without needing to add it to
every OS.  Removed several uneeded OS specializations ("if LINUX",
etc) as a result.
2019-11-20 18:52:29 -07:00
Jon Trulson 31fec7edb5 tt: Fixup tt build for new includes locations
Some files were trying to access the global includes directy in the
build area with things like #include <api/c/tt_c.h>, which is now
wrong.  Se we fix all of those up.  tt_c.h and tttk.h are now global,
so we no longer need to root around various build dirs to find them.

TT builds again.
2019-10-25 17:37:58 -06:00
Jon Trulson f55e448fc7 tt/slib: include hack 2019-10-24 17:50:02 -06:00
Jon Trulson e3028d4eff lib/tt: replace tooltalk.tmpl with tooltalk.inc in all Makefile.am files
This fixes the remaining warnings from autogen in lib/
2019-10-24 12:43:02 -06:00
Chase 500b30b2b3 lib/tt: add automake files 2019-10-23 15:34:20 -06:00
chase 90a2b2848a remove ultrix support 2018-09-30 17:27:04 -06:00
Jon Trulson dc7807b13b slib/mp_rpc_server: TIRPC: force a listen() call on the server socket
With earlier versions of RPC and TIRPC it seems that svctcp_create()
calles listen() on the socket (as seen by debugger and strace).
Tooltalk expects this behavior.

However, with newer systems (ArchLinux 5/18+ and similar bleeding edge
versions of SuSE's equivalent: Tumbleweed), this behavior seems to
have changed.

ttsession goes into an infinite loop trying to accept() a connection
in the TIRPC library (via svc_getreqset()).

It appears listen() is no longer called on the socket when it is
created via svctcp_create().  The hack in this commit, always causes
listen() to be called on the socket, and seems to resolve the problem.

But it is a hack I think.  I don't know if this is the correct
behavior of svctcp_create() or we were just lucky before.
2018-07-01 19:45:09 -06:00
Ulrich Wilkens 16fbb15ecc Fix BSD and Sun problems after coverity fixes 2018-05-31 17:46:03 -06:00
chase 4f5e7fe5e3 Use POSIX macros for linux 2018-05-24 18:22:55 -06:00
chase 164e695cd0 remove OSF1 support 2018-05-24 14:25:26 -06:00
chase 07900bd93b Remove Unixware and openserver support 2018-05-20 12:13:07 -06:00
chase 8a4f389634 Remove UXPDS support 2018-05-15 20:27:22 -06:00
chase 33d2749ea3 Last of the spelling fixed 2018-04-28 12:36:44 -06:00
chase 1fe5a550b2 Fix typo in license headers 2018-04-28 12:30:20 -06:00
Peter Howkins 9088d6b54e libtt: Fixes for Coverity fixes that I thought I'd already fixed. 2018-04-24 00:05:56 +01:00
Peter Howkins 22071fd62a libtt: Further coverity fixes 2018-04-20 22:57:47 +01:00
Peter Howkins 02d43dabe6 libtt: Coverity fixes related to uninitialised fields in classes. 2018-04-18 01:28:03 +01:00
Peter Howkins fee6003be1 libtt: More coverity fixes 2018-04-13 19:08:50 +01:00
Jon Trulson 17101b6f4c Enable TIRPC support for Linux
This is enabled by default.  To disable, add:

in the config/cf/site.def or host.def file.

You will need to have the libtirpc-dev package installed.

The benefit is that you will no longer need to run rpcbind in insecure
mode (the -i option).  There are other benefits we may be able to take
advantage of in the future, like supporting IPV6 for ToolTalk.
2018-04-12 21:00:34 -06:00
Ulrich Wilkens 01d6c363fa OpenIndiana and Solaris port 2014-10-28 13:40:11 -06:00
Jon Trulson 9f0fbc3015 mp_rpc_server.C: limit iteration of svc_fdset to FD_SETSIZE, as per spec.
In init() there was code iterating over all of the possible file
descriptors in a svc_fdset.  fdsets are limited to FD_SETSIZE.  This
caused coredumps on FreeBSD 10, and possibly other hidden issues.

Moving to poll(), rather than select() would be better, but is a bigger
job.  For now, just limit to the FD_SETSIZE that select() requires.
2014-03-10 14:49:37 -06:00
Jon Trulson a198d898e8 TT RPC server: Don't search 538 million transients trying to allocate one.
Currently, mp_rpc_server.C tries 538 million ports to acquire an
available transient rpcbind port number.  This is bad when rpcbind is
running in secure mode (and you are not using tirpc) - Xsession will
'hang' at the dthello (blue) screen filling up your error logs with
RPC errors.

Now, just try +- 50 (for a total of 100 ports) before bailing.  The
dthello 'blue screen of death' is the most common problem in starting
CDE when rpcbind isn't set up properly.  This should at least not
cause the appearance of a 'hang'.
2013-05-17 16:16:17 -06:00
Jon Trulson f84950100f Revert "Older Linux installations do not have svcfd_create()."
This reverts commit 44e384aedb.

This code is actually needed.  If svcfd_create() is not available, it
should be fixed only for those systems that it affects.
2012-11-24 19:16:58 -07:00
James Woodcock 44e384aedb Older Linux installations do not have svcfd_create().
svcfd_create() is only called if OPT_UNIX_SOCKET_RPC is defined, so a #ifdef
round that code should be OK.
2012-09-27 18:01:19 -06:00
James Woodcock 406fa95994 Use RPC_ANYSOCK instead of the magic number -1. 2012-09-27 18:01:14 -06:00
Pascal Stumpf 3b77d7c065 Tooltalk fixes for OpenBSD. This consists mainly of #ifdefs, casts and some small type nits. 2012-08-10 06:24:29 -06:00
Jon Trulson 1f332de27b Use socklen_t where available.
Patch from <Pascal.Stumpf@cubes.de>

This should use socklen_t where available, really ...
2012-08-09 12:27:58 -06:00
Jon Trulson 784c7dff56 Add -fpermissive to linux standard c++ option define in linux.cf
Remove from individual Imakefiles.

Also, remove '#if 0' block in linux.cf, and remove empty
LinuxMachineDefines. This should be working correctly.  If not, let me
know.
2012-06-18 16:27:25 -06:00
Peter Howkins 837972cb69 Modify all Imakefile files to use LinuxArchitecture instead of LinuxDistribution
for Linux specific changes. (lib directory)
2012-05-31 12:41:33 +01:00
Peter Howkins 0a9e7d2db9 No easy access to min()/max() macro, rewrite code 2012-03-12 00:14:33 +00:00
Peter Howkins fc4f30fa88 -fpermissive to allow GCC to compile old C++ 2012-03-12 00:06:34 +00:00
Peter Howkins 13f6ea01d4 No easy access to min() or max() macros, rewrite code to not use them. 2012-03-12 00:04:39 +00:00
Peter Howkins c884521619 Add GNU LGPL headers to all .c .C and .h files 2012-03-10 18:58:32 +00:00
Peter Howkins 83b6996daa Initial import of the CDE 2.1.30 sources from the Open Group. 2012-03-10 18:21:40 +00:00