Commit Graph

256 Commits

Author SHA1 Message Date
Fish (David B. Trout)
a2e06edcc9 Fixes for unreliable console keepalive issue #44:
1. Fix configure.ac tcp.h header and keepalive constant checks and report during ./configure the keepalive support that was detected (none, basic or full).

2. #include the correct tcp.h header in hstdinc.h

3. Issue warning message at build time (during make) when full keepalive support is missing or partial.

4. Report partial or missing keepalive build support via version.c "With" and "Without" messages.

5. Issue error or warning in both impl.c as well as in 'conkpalv' command/statement processing function when keepalive support is either missing or only partially supported. Same for the 2703 device 'ka=' option too.

6. Enhance set_socket_keepalive function to let the caller know not only about failures but also about partial-only successes (so they can be reported).

7. Fix the bad setsockopt call in the Linux version of the set_socket_keepalive function that was using the wrong value, which was at the heart of the problem. (Note: setsockopt was returning "success" anyway even though it had actually failed! [to accomplish anything].)

8. Introduce new get_socket_keepalive function to allow retrieval and reporting of current keepalive settings for a given socket.

9. Manually maintain socket keepalive values for Windows builds so it too can support retrieval of current values via new get_socket_keepalive function. (see comments in w32util.c "get_socket_keepalive" function!)

10. Minor HTML documentation edits.
2015-01-19 13:35:29 -08:00
Enrico Sorichetti
448f0da7fa Fixed gcc level detection,
tested on apple and centos 7, works for gcc and clang
2014-10-15 09:36:35 +02:00
Fish (David B. Trout)
a7c8ce6ce8 correct set priority handling 2014-01-03 13:54:14 -08:00
Fish (David B. Trout)
89ce83224b Compensate for insane gcc strict aliasing handling 2014-01-03 13:52:22 -08:00
John P. Hartmann
677ac05291 Fish's patch to fix lots of portability issues. 2013-12-25 09:54:01 +01:00
Fish (David B. Trout)
22e6010c04 Report 32/64 build architecture in version 2013-12-22 12:07:08 -08:00
John P. Hartmann
3b639d0843 Make configure.ac palatable to FreeBSD 9.1
This fixes the broken IPv6 stuff so much that configure will run.
The resulting makefile does not build at all.

A royal mess.
2013-12-18 12:44:17 +01:00
Fish (David B. Trout)
9d37bd627e Remove never used NLS support 2013-09-12 14:35:50 -07:00
Fish (David B. Trout)
a604264f13 Remove obsolete non-Git $Id$ and $Log$ special keywords. 2013-09-12 11:47:45 -07:00
Fish (David B. Trout)
4a2d84019f HQA = Hercules Build Configurations Quality Assurance Testing
The "HQA" commit introduces a new build feature that provides the ability to override Hercules's default build settings without having to modify any of the Hercules header files themselves.  (Note: not all build settings may be overridable yet. This is a work in progress.)

To override Hercules's default build settings, define an environment variable called 'HQA_DIR' pointing to the directory where your optional "hqa.h" overrides header file exists, or, instead of defining an environment variable, simply specify, if Linux, the new "--enable-hqa" configure option, or, if Windows, the new "-hqa" "makefile.bat" option.

Then, within your "hqa.h" override header, either #define the 'HQA_SCENARIO' macro to one of the pre-defined values defined in Hercules's "hqadefs.h" header file, or simply #define your own scenario. The values you #define will then override Hercules's default values.

Additionally, on Windows, you can override virtually any of the compiler settings as well, via a 'HQA.msvc' nmake !include override file that, for example, modifies the $(cflags) variable to add, remove, or change whatever compiler option you wish.
2013-04-12 14:48:06 -07:00
Fish (David B. Trout)
325e423eae tuntap set ipv4 broadcast address support 2013-04-05 12:43:32 -07:00
Fish (David B. Trout)
a56f83214e malloc_aligned and related changes:
1. Replace platform-specific test with portable autoconf check instead
2. Move malloc_aligned and related macros/functions into separate header
2013-03-23 20:58:47 -07:00
Fish (David B. Trout)
76d98772b2 Straighten out HERCIFC / TUNTAP headers mess. 2013-02-27 00:28:56 -08:00
Fish (David B. Trout)
ce29bfbac0 New functions: TUNTAP_GetMTU and TUNTAP_GetMACAddr. 2013-02-26 05:50:28 -08:00
Roger Bowler
3b9c1880c9 Revert "Set correct default for setuid-hercifc"
The default must remain --disable-setuid-hercifc as was
previously the case. This is done in order to prevent
the user from unwittingly installing a setuid program.

This reverts commit aaad0a9899.
2012-12-31 17:50:21 +01:00
Roger Bowler
405b8537f4 Remove extraneous setting of NO_SETUID flag in configure.ac
This flag was set by:
"Let configure --enable-setuid-hercifc=no have an effect"
commit b9d7ac2ed1

which was partially reverted by:
"ctc_ctci:  Back out the tuntap exclusive flag"
commit 30f4719a44
2012-12-31 17:43:10 +01:00
John P. Hartmann
aaad0a9899 Set correct default for setuid-hercifc 2012-12-29 17:16:33 +01:00
John P. Hartmann
b9d7ac2ed1 Let configure --enable-setuid-hercifc=no have an effect. And when defined,
do not try to call hercifc as this will fail.

Add exclusive access for dynamically allocated CTCI devices.  This prevents
a race between two device pairs being defined.  (If IFF_TUN_EXCL is defined.)

Fix a number of bugs in calling hercifc.
2012-12-02 12:31:24 +01:00
Fish (David B. Trout)
2d9901b039 Work with older versions of libtool
Older versions won't have a --with-included-ltdl flag, so improve the logic to only set hc_cv_have_lt_dlopen to no if that has explicitly been set to no itself.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-11-30 02:13:13 -08:00
Fish (David B. Trout)
6db2297e5e fix handling of ltdl/dlopen
Nothing was setting hc_cv_have_dlopen, so initialize that based on the dlopen tests that libtool does for us.

With that in place, we can set hc_cv_have_lt_dlopen based on the included ltdl flag.  This lets people who have a *nix system with libdl avoid the ltdl code entirely.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-11-27 03:51:48 -08:00
Fish (David B. Trout)
fefc687c41 fix modulesdir/datadir/localedir handling
The current logic tries to expand the path variables at configure time (so that they can be written into config.h) rather than delaying the expansion to make time.

Setup CPPFLAGS with the right -D values so that we can let make expand the path vars and not worry about hacking around it inside of autoconf.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-11-27 03:51:07 -08:00
Fish (David B. Trout)
c2c2cbcb96 (remove some blank lines) 2012-11-27 03:49:18 -08:00
Fish (David B. Trout)
a7c571f2cb Make --enable-external-gui the default 2012-11-27 03:08:40 -08:00
Roger Bowler
d46eaa4680 Increase version number to 4.00 2012-11-13 14:23:09 +01:00
dasdman
4857530ab1 Update for OS X gcc removal of some gcc options normally available. 2012-07-16 13:49:35 -07:00
Fish (David B. Trout)
81deb45f9f Fix configure error caused by 109c5a6b50
The error that was corrected was:
  [...]
  checking for what optimization flags to use ...
    ./configure: line 46020: 4.2.0: No such file or directory

The fix is to use 'AS_VERSION_COMPARE' macro as documented here:
  http://www.gnu.org/software/autoconf/manual/autoconf.html#Programming-in-M4sh
2012-06-22 14:50:20 -07:00
dasdman
109c5a6b50 Update configure to recognize GCC versions; use -march=native when supported by GCC; correct debug option generation. 2012-06-20 22:07:14 -07:00
Fish-Git
59cee637c1 Remove FishHang crap from Hercules
FishHang was useful during development of fthreads but has not been needed for so many years and so has FINALLY been deleted. Sorry it took me so long to do it.
2012-05-20 15:44:19 -07:00
Enrico Sorichetti
10573a033a final REXX interface version,
fixed some header checking,
added the scripts directory ( makefile and friends later )
added the README.REXX.V2
when the whole thing has been reasonably tested I will cleanup
enjoy
2012-03-23 23:26:18 +01:00
Enrico Sorichetti
ff26338cb8 IPV6 configure support ( to disable it ) 2012-03-11 14:08:32 +01:00
Jan Jaeger
2d89dcdf1a Enable oorexx by default if available 2012-03-11 14:31:19 +11:00
Jan Jaeger
dac8f84d23 Fix regina build on ubuntu 10.04 LTS and enable by default if regina available 2012-03-11 13:08:52 +11:00
Enrico Sorichetti
a3144fa5cf various build issues for...
SoftFloat - ( repackaged as per SoftFloat-readme.txt)
IPV6 - on APPLE builds ( quick and dirty )
       another commit will follow for full IPV6 configure support
REXX - rather than cleaning up the current implementation
       it took me the same time and number of objects modified
       to commit the FULL Rexx shebang
       in a while I will finish the hRexx_readme
othr - VERSION/V1/V2/... in dyngui.c
2012-03-10 21:52:51 +01:00
Jan Jaeger
3a8304638a Temp fix to -lpthread for linux; needs to be further investigated or reverted
git-svn-id: file:///home/jj/hercules.svn/trunk@7755 956126f8-22a0-4046-8f4a-272fa8102e63
2011-09-18 02:07:23 +00:00
Jan Jaeger
9c72e28c21 Revert to Gregs memory allocation and disable non thread safe features
git-svn-id: file:///home/jj/hercules.svn/trunk@7748 956126f8-22a0-4046-8f4a-272fa8102e63
2011-09-10 08:10:49 +00:00
Jan Jaeger
e383bd998b Move SoftFloat package into it own subdirectory
git-svn-id: file:///home/jj/hercules.svn/trunk@7709 956126f8-22a0-4046-8f4a-272fa8102e63
2011-08-20 02:41:18 +00:00
Jan Jaeger
1fefd47484 Check for mlockall() availability
git-svn-id: file:///home/jj/hercules.svn/trunk@7561 956126f8-22a0-4046-8f4a-272fa8102e63
2011-07-14 10:04:39 +00:00
Fish (David B Trout)
7362d8c9aa Add "-ggdb" to compiler flags
git-svn-id: file:///home/jj/hercules.svn/trunk@7532 956126f8-22a0-4046-8f4a-272fa8102e63
2011-06-25 20:31:55 +00:00
Jan Jaeger
44465337a0 rexxsaa.h has moved in Ubuntu 11.04
git-svn-id: file:///home/jj/hercules.svn/trunk@7499 956126f8-22a0-4046-8f4a-272fa8102e63
2011-06-08 07:52:38 +00:00
Fish (David B Trout)
c8a2d98a0c add attribute(packed) to struct size test
git-svn-id: file:///home/jj/hercules.svn/trunk@7429 956126f8-22a0-4046-8f4a-272fa8102e63
2011-04-19 22:51:00 +00:00
Fish (David B Trout)
906db135de page-aligned calloc for mainstor/xpndstor
git-svn-id: file:///home/jj/hercules.svn/trunk@7275 956126f8-22a0-4046-8f4a-272fa8102e63
2011-01-15 22:56:50 +00:00
Fish (David B Trout)
775afd78e2 Fix configure '-g' flag handling for "--enable-debug=yes"
git-svn-id: file:///home/jj/hercules.svn/trunk@7254 956126f8-22a0-4046-8f4a-272fa8102e63
2011-01-05 22:44:56 +00:00
Jan Jaeger
097f59922c Ajust cpuprio & todprio dynamically
git-svn-id: file:///home/jj/hercules.svn/trunk@6946 956126f8-22a0-4046-8f4a-272fa8102e63
2010-10-19 13:20:43 +00:00
Jan Jaeger
5966f0e75a Support 128 CPUs on 64 bit platforms
git-svn-id: file:///home/jj/hercules.svn/trunk@6909 956126f8-22a0-4046-8f4a-272fa8102e63
2010-10-15 17:11:08 +00:00
Jan Jaeger
f72eb32291 Check for regina libs
git-svn-id: file:///home/jj/hercules.svn/trunk@6708 956126f8-22a0-4046-8f4a-272fa8102e63
2010-10-01 14:48:34 +00:00
Jan Jaeger
2d12792b1f REXX Support
git-svn-id: file:///home/jj/hercules.svn/trunk@6401 956126f8-22a0-4046-8f4a-272fa8102e63
2010-09-07 20:30:04 +00:00
Fish (David B Trout)
fc1215e65d AIX support
git-svn-id: file:///home/jj/hercules.svn/trunk@5746 956126f8-22a0-4046-8f4a-272fa8102e63
2010-03-26 16:11:45 +00:00
Jay Maynard
b44b5b64f3 3.07 version number bump. This is the 3.07 andidate release version, and
will be copied to the releases branch if it builds successfully.


git-svn-id: file:///home/jj/hercules.svn/trunk@5657 956126f8-22a0-4046-8f4a-272fa8102e63
2010-03-07 12:22:25 +00:00
Fish (David B Trout)
5f406cb4c4 Align version statement,
Remove obsolete version comment.

git-svn-id: file:///home/jj/hercules.svn/trunk@5638 956126f8-22a0-4046-8f4a-272fa8102e63
2010-02-20 02:04:07 +00:00
Jay Maynard
c9bbaff2fc Fix for 64-bit Linux builds.
git-svn-id: file:///home/jj/hercules.svn/trunk@5627 956126f8-22a0-4046-8f4a-272fa8102e63
2010-02-13 00:17:57 +00:00